Tutoriel de reconnaissance vocale en Python : du fichier audio à la transcription
- Rédigé par
- Jack Limebear
- Publié
- Dernière mise à jour
ÉcouterÉcouter cet article
Ajouter des capacités de reconnaissance vocale à une application Python était autrefois complexe. Les développeurs Python devaient coder eux-mêmes le processus de transcription : prétraitement audio, extraction de caractéristiques et intégration du modèle. Les équipes d’ingénierie devaient aussi gérer l’audio bas niveau, une qualité de transcription insuffisante et les décalages entre les paroles et les sous-titres en direct.
Les avancées des modèles audio et des SDK de reconnaissance vocale changent la donne.
Dans ce tutoriel de reconnaissance vocale en Python, découvrez comment intégrer les modèles audio ElevenLabs Speech to Text à votre projet Python afin de créer des applications de transcription prêtes pour un usage commercial.
Résumé
- Les modèles Speech to Text commerciaux proposent des fonctionnalités telles que la diarisation des locuteurs, les horodatages au niveau du mot et l’invite par mots-clés, absentes des modèles de reconnaissance vocale de base.
- ElevenAPI apporte des capacités de reconnaissance vocale à votre code Python avec Scribe v2 et Scribe v2 Realtime.
- Les développeurs peuvent installer des skills ElevenLabs sur une plateforme de codage IA pour générer du code Python précis à partir de la documentation officielle de l’API.
- Vous pouvez essayer gratuitement l’API ElevenLabs avant de souscrire à une offre payante destinée au développement commercial.

Ce que couvre ce tutoriel de reconnaissance vocale en Python
Ce tutoriel présente les prérequis, l’intégration de l’API et les fonctionnalités de transcription avancées qui vous aident à créer une application Python de reconnaissance vocale pour des cas d’usage en entreprise.
La reconnaissance vocale a beaucoup progressé ces dernières années, notamment grâce aux grands modèles de langage et aux réseaux neuronaux d’apprentissage profond, qui ont transformé l’utilisation des SDK de transcription par les développeurs Python. De nombreux tutoriels expliquent comment créer des applications de transcription de base, mais peu abordent les fonctionnalités nécessaires à un produit prêt pour un usage commercial.
Nous avons rédigé ce tutoriel pour combler cette lacune.
Par exemple, de nombreuses solutions de transcription d’entreprise nécessitent les fonctionnalités suivantes :
- Diarisation des locuteurs : la capacité d’identifier et de distinguer les différents locuteurs dans la transcription.
- Horodatage : l’attribution précise à chaque mot des heures, minutes et secondes auxquelles il est prononcé.
- Prise en charge multilingue : capture des interventions dans différentes langues au sein d’un même enregistrement ou flux en direct, avec un faible taux d’erreur par mot.
- Invite par mots-clés : association de mots spécifiques, tels que des marques, noms de produits et termes techniques, afin d’éviter les erreurs de transcription.
- Transcription à faible latence : réponse de conversion de la parole en texte en quelques millisecondes, pour les applications de transcription en temps réel.
Remarque : ce tutoriel va au-delà de la création de simples scripts personnels pour des loisirs ou projets individuels. Il n’inclut pas la logique applicative construite au-dessus de l’intégration de l’API Speech to Text, car elle varie selon les entreprises.

Prérequis pour intégrer la reconnaissance vocale en Python
Ce tutoriel repose sur ElevenAPI, une API ElevenLabs prête pour la production qui simplifie l’interaction avec les modèles vocaux dans votre code. Avec ElevenAPI, vous accédez à Scribe v2 et Scribe v2 Realtime, nos modèles vocaux de référence pour la transcription par lots et en direct.
Au lieu d’accéder directement aux modèles ElevenLabs Speech to Text, vous transmettez des enregistrements audio, des flux en direct et des arguments via des appels API. Le modèle audio convertit ensuite les données audio en texte. Une fois l’opération terminée, vous recevez les transcriptions dans votre code ou via un webhook.
Pour commencer, suivez ces étapes de préparation.
- Inscrivez-vous à ElevenLabs.
- Créez votre clé API.
- Enregistrez une conversation et chargez-la dans un espace de stockage accessible publiquement.
Lorsque vous êtes prêt, passez à la section suivante.
Configuration de votre environnement
Avant d’intégrer les modèles ElevenLabs, configurez votre environnement Python afin de sécuriser votre clé API ElevenLabs. Comme pour toutes les clés API, nous recommandons de la stocker sous forme de variable d’environnement (secret géré) dans le fichier .env.
Lors d’un appel API, vous transmettez la variable d’environnement. Cela évite d’exposer accidentellement la clé API lors de requêtes API effectuées sur un réseau public.
Exécutez ensuite une commande Bash pour installer elevenlabs, le SDK ElevenLabs, dans votre environnement Python. Le SDK vous donne accès à différents modèles vocaux. Dans ce cas, vous choisissez entre Scribe v2 et Scribe v2 Realtime.
Vous devrez également installer python-dotenv, qui permet à votre code Python d’accéder aux variables d’environnement stockées dans le fichier .env.
Écrire votre premier script de transcription
Une fois votre environnement Python configuré, vous pouvez transcrire le fichier audio avec ElevenLabs Scribe v2.
ElevenLabs Scribe v2 est un modèle de reconnaissance vocale de premier plan qui vous permet de transcrire des fichiers audio à grande échelle. Il détecte les phonèmes avec une grande précision, même lorsque l’enregistrement audio contient un bruit de fond important. Pour transcrire l’audio, envoyez l’enregistrement au modèle via l’API ElevenLabs et récupérez la transcription terminée.
L’extrait de code Python ci-dessous convertit un fichier audio en transcription horodatée et diarisee.
Le code charge les bibliothèques nécessaires, qui fournissent les fonctions dont il a besoin. Il charge également dans l’environnement du programme les variables d’environnement que vous avez déclarées.
Il crée ensuite un client ElevenLabs à l’aide de la clé API stockée dans la variable d’environnement. Puis, il télécharge le fichier audio et le convertit en données binaires.
Une fois les données audio brutes disponibles, vous les envoyez à l’API ElevenLabs avec plusieurs paramètres.
- model_id indique le modèle de conversion de la parole en texte à utiliser. Comme vous transmettez un fichier audio, Scribe v2 est la meilleure option.
- tag_audio_events vous permet de mettre en évidence les segments non vocaux, tels que les rires, les bruits de pas et d’autres bruits de fond.
- language_code représente la langue des conversations du fichier d’enregistrement. Lorsqu’il est défini sur None, le modèle détecte automatiquement la langue.
- diarize indique si vous souhaitez que le modèle identifie et distingue les différents locuteurs à partir de leurs empreintes vocales.
Enfin, exécutez le code : l’audio transcrit s’affichera dans le terminal.

Reconnaissance vocale en streaming avec Python
L’exemple ci-dessus porte sur la transcription par lots, adaptée aux fichiers préenregistrés. ElevenLabs propose également des API qui vous permettent de créer une reconnaissance vocale en streaming. Contrairement au traitement par lots, ce mode exécute la reconnaissance vocale en temps réel pour générer des transcriptions au fil de la conversation.
Pour cela, connectez votre code Python au modèle Scribe v2 Realtime via l’API WebSocket.
Scribe v2 Realtime propose une architecture pensée pour le streaming, avec une latence de transcription inférieure à 150 ms. Utilisez Scribe v2 Realtime pour créer des applications telles que des agents de réunion, des outils d’accessibilité et des automatisations activées par la voix. Le modèle renvoie une transcription partielle à mesure qu’il traite le flux audio. Il ne renvoie la transcription finale que lorsque le code valide un segment audio, automatiquement ou manuellement.
Selon votre source audio et le type d’application, vous intégrez la reconnaissance vocale avec l’API ElevenLabs côté serveur ou côté client.
- Streaming côté client vous permet de diffuser directement depuis le microphone ou via des flux audio segmentés manuellement.
- Streaming côté serveur achemine les données audio d’une URL ou d’une source audio vers le modèle vocal.
Le streaming côté client comme côté serveur vous permet d’utiliser un flux de travail asynchrone. Au lieu d’interroger continuellement l’API, utilisez des WebSockets pour traiter les résultats. Dans votre code, vous devez créer des gestionnaires qui reçoivent les transcriptions partielles et finalisées.

Aller plus loin : diarisation, horodatages et vocabulaire personnalisé
Au-delà de la reconnaissance automatique de la parole, les modèles ElevenLabs Speech to Text prennent en charge la diarisation, les horodatages et le vocabulaire personnalisé.
- Diarisation : seule la transcription par lots prend en charge la diarisation des locuteurs. Activez la diarisation en définissant l’argument diarize. Toutefois, la transcription multicanale, un mode de transcription par lots, ne prend pas en charge la diarisation.
- Horodatages : lors d’une transcription par lots, vous pouvez choisir des horodatages au niveau du mot ou du caractère. Pour cela, définissez le paramètre timestamps_granularity lors de l’utilisation de la méthode convert.
- Vocabulaire personnalisé : la transcription en temps réel et par lots prend en charge l’invite par mots-clés. Cette fonctionnalité oriente le modèle vers la transcription de mots-clés spécifiques inclus dans une liste. Scribe v2 Realtime prend en charge jusqu’à 50 mots-clés, tandis que Scribe v2 en prend en charge 1 000.
Utiliser le skill ElevenLabs dans les assistants de codage IA
Les assistants de codage IA accélèrent le développement. Si vous utilisez des outils tels que Claude Code, Cursor, Codex ou d’autres outils de codage IA, vous pouvez ajouter des skills ElevenLabs dans votre environnement de développement.
Il vous suffit d’exécuter cette commande dans le terminal de votre plateforme :
L’agent de codage IA téléchargera le skill Speech to Text depuis le dépôt GitHub d’ElevenLabs et l’installera dans le répertoire local des skills. Vous pouvez ainsi générer automatiquement du code Python de reconnaissance vocale à partir de la documentation officielle d’ElevenLabs, plutôt que d’écrire toute l’intégration de l’API à partir de zéro.
Une fois installé, vous pouvez générer du code Python de reconnaissance vocale en décrivant simplement son fonctionnement en langage naturel. À partir de cette description, l’assistant de codage génère automatiquement le code à l’aide du skill Speech to Text, avec le bon modèle et les bons paramètres.
Par exemple, si vous saisissez « Créez un extrait Python de reconnaissance vocale qui transcrit avec diarisation et horodatages au niveau du mot » dans Codex, vous obtiendrez un extrait similaire à celui ci-dessous.

Démarrer avec ElevenAPI pour la reconnaissance vocale
ElevenAPI vous permet d’accéder à des modèles Speech to Text avancés pour créer des applications de reconnaissance vocale en Python.
Avec ElevenAPI, vous évitez d’écrire le code d’intégration à partir de zéro, ce qui retarde l’innovation produit. À la place, vous utilisez des SDK qui exposent des services Speech to Text répondant aux exigences d’un usage commercial, telles que l’invite par mots-clés, la diarisation et les horodatages.
Obtenez votre clé API ElevenLabs dès maintenant et consultez notre documentation officielle pour comprendre le fonctionnement de l’API.

