AI Endpoints - Transcrire et résumer des fichiers audio
Résumer des heures de réunions et conversations audio avec des APIs d'ASR et de LLM
AI Endpoints est couvert par les Conditions particulières OVHcloud Public Cloud (voir l’Annexe 10 – « Conditions spécifiques – AI Endpoints »).
Introduction
Vous cherchez un moyen de résumer efficacement vos réunions, diffusions et podcasts, pour une consultation rapide ou pour les partager avec d'autres ? Ne cherchez plus !
Objectif
Dans ce tutoriel, vous allez créer un assistant Audio Summarizer capable non seulement de transcrire, mais aussi de résumer l'ensemble de vos fichiers audio.
En effet, grâce à AI Endpoints, il n'a jamais été aussi facile de créer un assistant virtuel qui vous aide à suivre vos réunions et à garder trace des informations importantes.
Ce tutoriel explore comment connecter des API d'IA pour créer un assistant virtuel avancé capable de transcrire et de résumer n'importe quel fichier audio à l'aide des technologies d'ASR (Automatic Speech Recognition) et de LLM (Large Language Models) populaires. Nous allons également construire une application pour utiliser notre assistant !

Définitions
- Automatic Speech Recognition (ASR) : technologie qui convertit le langage parlé en texte écrit. L'ASR sera utilisée ici pour transcrire de longs enregistrements audio en texte, qui sera ensuite résumé à l'aide de LLM.
- Large Language Models (LLM) : modèles avancés entraînés pour comprendre le contexte et générer des réponses proches de celles d'un humain. Dans ce cas d'usage, le prompt du LLM sera conçu pour générer un résumé du texte d'entrée à partir de la sortie de l'endpoint d'ASR.
Prérequis
- Un projet Public Cloud dans votre compte OVHcloud
- Un token d'accès pour OVHcloud AI Endpoints. Pour créer un token API, suivez les instructions du guide AI Endpoints - Premiers pas.
En pratique
Configurer l'environnement
Afin d'utiliser facilement les API d'AI Endpoints, créez un fichier .env pour stocker les variables d'environnement :
Veillez à remplacer la valeur du token (OVH_AI_ENDPOINTS_ACCESS_TOKEN) par la vôtre. Si vous n'en avez pas encore, suivez les instructions du guide AI Endpoints - Premiers pas.
Créez ensuite un fichier requirements.txt avec les bibliothèques suivantes :
Lancez ensuite l'installation de ces dépendances :
Notez que Python 3.11 est utilisé dans ce tutoriel.
Importer les bibliothèques et variables nécessaires
Une fois cela fait, vous pouvez créer un fichier Python nommé audio-summarizer-app.py, dans lequel vous importerez d'abord les bibliothèques Python comme suit :
Après ces lignes, chargez et accédez aux variables d'environnement de votre fichier .env :
Définissez ensuite le client qui communique avec les API et authentifie vos requêtes :
💡 Vous êtes maintenant prêt à commencer à coder votre application web.
Transcrire un fichier audio avec l'ASR
Créez d'abord la fonction d'Automatic Speech Recognition afin de transcrire les fichiers audio en texte :
Dans cette fonction :
- Le fichier audio est prétraité comme suit : format
.wav,1canal, fréquence d'échantillonnage16000 - L'audio transformé
processed_audioest lu - Un appel API est effectué vers l'endpoint d'ASR nommé
whisper-large-v3 - La réponse complète est stockée dans la variable
respet renvoyée par la fonction
🎉 Maintenant que vous disposez de cette fonction, vous êtes prêt à transcrire des fichiers audio.
Il est maintenant temps d'appeler un LLM pour résumer le texte transcrit.
Résumer l'audio avec un LLM
Dans cette seconde étape, créez la fonction chat_completion pour utiliser efficacement gpt-oss-120b (ou tout autre modèle) :
Que faire ?
- Vérifier que la transcription existe
- Utiliser la compatibilité avec l'API OpenAI pour appeler le LLM
- Personnaliser votre prompt afin de préciser la tâche du LLM
- Renvoyer le résumé audio
⚡️ Vous y êtes presque ! La dernière étape consiste à construire votre application web, rendant votre solution facile à utiliser en quelques lignes de code.
Construire l'application avec Gradio
Gradio est une bibliothèque Python open source permettant de créer rapidement des interfaces utilisateur pour des modèles de Machine Learning et des démonstrations.
Qu'est-ce que cela signifie en pratique ?
À l'intérieur d'un Gradio Block, vous pouvez :
- Définir un thème pour votre interface
- Ajouter un titre à votre application web avec gr.HTML()
- Envoyer un fichier audio grâce au composant dédié, gr.Audio()
- Obtenir le résultat de la transcription écrite avec gr.Textbox()
- Obtenir un résumé de l'audio grâce au puissant LLM et à un second composant gr.Textbox()
- Ajouter un bouton de réinitialisation avec gr.ClearButton() pour réinitialiser la page de l'application web
Vous pouvez ensuite la lancer dans le main :
Lancer l'application web Gradio en local
🚀 Voilà ! Votre application web est maintenant prête à être utilisée ! Vous pouvez démarrer cette application Gradio en local en lançant la commande suivante :

Vous pouvez envoyer vos fichiers audio, obtenir une transcription puis un résumé !
Conclusion
Bravo 🎉 ! Vous avez appris à construire votre propre application Audio Summarizer en quelques lignes de code. Vous avez également constaté à quel point il est facile d'utiliser AI Endpoints pour créer des solutions clés en main innovantes.
➡️ Accédez au code complet ici.
Aller plus loin
Si vous souhaitez aller plus loin et déployer votre application web dans le cloud, en rendant votre interface accessible à tous, reportez-vous aux articles et tutoriels suivants :
- AI Deploy - Tutoriel - Créer et utiliser une image Docker personnalisée
- AI Deploy - Tutoriel - Déployer une app Gradio pour de la reconnaissance de schémas
Si vous avez besoin d'une formation ou d'une assistance technique pour la mise en oeuvre de nos solutions, contactez votre commercial ou cliquez sur ce lien pour obtenir un devis et demander une analyse personnalisée de votre projet à nos experts de l’équipe Professional Services.
Nous voulons vos retours !
N’hésitez pas à nous faire part de vos questions, retours et suggestions concernant AI Endpoints et ses fonctionnalités :
- Dans le canal #ai-endpoints du serveur Discord OVHcloud, où vous pouvez échanger avec la communauté et les équipes OVHcloud.