AI Endpoints - Transcription Audio
Découvrez comment transcrire des fichiers audio avec OVHcloud AI Endpoints
AI Endpoints est couvert par les Conditions particulières OVHcloud Public Cloud (voir l’Annexe 10 – « Conditions spécifiques – AI Endpoints »).
Introduction
AI Endpoints est une plateforme serverless proposée par OVHcloud qui offre un accès simplifié à une sélection de modèles d'IA pré-entraînés, mondialement reconnus. La plateforme est conçue pour être simple, sécurisée et intuitive, ce qui en fait une solution idéale pour les développeurs souhaitant enrichir leurs applications avec des capacités d'IA sans expertise poussée en IA ni préoccupations sur la confidentialité des données.
La transcription audio (Speech to Text) est une fonctionnalité puissante qui permet de convertir un langage parlé en texte écrit.
Les API de transcription audio sur AI Endpoints vous permettent d'intégrer facilement cette technologie dans vos applications, en transcrivant vos fichiers audio avec une grande précision. Nos endpoints prennent en charge différents formats audio et proposent des options de configuration flexibles pour répondre à vos besoins spécifiques.
Objectif
Cette documentation présente un aperçu des endpoints de transcription audio proposés sur AI Endpoints.
Consultez notre Catalogue pour découvrir quels modèles sont compatibles avec l'analyse audio.
Les exemples fournis dans ce guide peuvent être utilisés avec l'un des environnements suivants :
Un environnement Python avec le client openai et la bibliothèque pydantic installés.
Ces exemples utilisent le modèle Whisper-large-v3.
Authentification et limitation du débit
Tous les exemples fournis dans ce guide utilisent une authentification anonyme, ce qui simplifie leur usage mais peut entraîner des limitations de débit (rate limiting). Si vous souhaitez activer l'authentification avec votre propre token, indiquez simplement votre clé API dans les requêtes.
Suivez les instructions du guide AI Endpoints - Premiers pas pour plus d'informations sur l'authentification.
Corps de la requête
Aperçu des paramètres
Le corps de la requête pour l'endpoint de transcription audio est de type multipart/form-data et comprend les champs suivants :
Exemple d'utilisation
Maintenant que vous connaissez les paramètres disponibles, voyons comment les mettre en pratique. Voici des exemples de requêtes en Python, cURL et JavaScript :
Exemple de sortie
Par défaut, l'endpoint de transcription renvoie une sortie au format verbose_json.
Elle inclut des métadonnées détaillées telles que la langue, les segments, les tokens et les informations de diarisation :
Pour des exemples détaillés de chaque type de sortie disponible, consultez la section Formats de réponse.
Détails des paramètres
Si l'aperçu précédent fournit une référence rapide, certains paramètres nécessitent plus de contexte pour comprendre comment et quand les utiliser.
Diarisation
Le paramètre diarize active la séparation des locuteurs dans la transcription générée. Lorsqu'il est réglé sur true, le système étiquette les différentes voix comme Speaker 0, Speaker 1, etc.
C'est utile pour les réunions, débats ou interviews où plusieurs personnes s'expriment.
- Ce paramètre est disponible uniquement avec le format de réponse
verbose_jsonpar défaut (format de réponse). Utiliser tout autre format déclenchera une erreur. diarizen'est pas pris en charge lors de l'utilisation des bibliothèques clientes OpenAI. Vous devez utiliser une requête HTTP directe avecrequests,cURL, ou un autre client HTTP.
Exemple de sortie : transcription d'un fichier audio avec diarize activé :
Requête :
Sortie :
Prompt
Le paramètre prompt vous permet de fournir un contexte supplémentaire pour améliorer la transcription. Voyez-le comme un indice donné au modèle avant qu'il n'écoute votre audio. Cela peut être utile pour :
- Corriger des mots ou acronymes souvent mal reconnus.
- Préserver le contexte si l'audio est découpé en plusieurs parties.
- Renforcer la ponctuation, les mots de remplissage ou le style d'écriture.
- Traduire la parole générée vers l'anglais.
Le prompt doit être rédigé dans la même langue que l'audio. Par exemple, si votre audio est en anglais, votre prompt doit également être en anglais.
Exemples
Si l'audio mentionne des mots complexes tels que des noms de produits, d'entreprises, des termes techniques ou des noms de personnes, mais que le modèle les orthographie souvent mal, vous pouvez les lister dans votre prompt :
Granularité des horodatages
Le paramètre timestamp_granularities contrôle le niveau des marqueurs temporels inclus dans la transcription. Vous disposez de trois options :
Horodatages pour chaque segment, fournissant un minutage pour les grandes sections de l'audio.
Formats de réponse
Le response_format détermine le format de retour des données de transcription. Les formats disponibles sont :
Renvoie la transcription complète avec les métadonnées telles que les segments, tokens, langue, durée et diarisation :
Stratégie de segmentation (Chunking Strategy)
Le paramètre chunking_strategy contrôle la façon dont le fichier audio est découpé en segments plus petits avant la transcription.
Par défaut, lorsqu'il n'est pas défini, l'audio est traité comme un seul bloc.
Définir chunking_strategy découpe l'audio à l'aide de la détection d'activité vocale (VAD) et transcrit les segments obtenus par lots. Cela accélère la transcription des fichiers longs (environ 1,5× pour quelques minutes d'audio, jusqu'à environ 2× sur les enregistrements longs), tout en conservant une qualité de transcription très proche du mode bloc unique. Le chunking n'apporte aucun gain de vitesse sur les fichiers très courts (moins de ~30 secondes).
Ce paramètre prend en charge deux valeurs, auto et server_vad.
Lorsqu'il est réglé sur auto, le système normalise d'abord le volume audio, puis utilise la détection d'activité vocale (VAD) pour découper automatiquement l'audio aux pauses naturelles (silences).
Vous pouvez également fournir un objet server_vad pour ajuster manuellement les paramètres de détection VAD. Cela vous permet de contrôler les paramètres suivants :
prefix_padding_ms: quantité d'audio à inclure avant la parole détectée par la VAD (en millisecondes).silence_duration_ms: durée de silence requise pour détecter la fin de la parole (en millisecondes). Des valeurs plus faibles rendent le modèle plus réactif, mais peuvent accroître sa sensibilité aux courtes pauses.threshold: seuil de sensibilité (0.0 à 1.0) de la VAD. Des valeurs plus élevées nécessitent une parole plus forte et peuvent donner de meilleurs résultats dans des environnements bruyants.
Exemple :
Limites de l'endpoint
Compatibilité et performances par langue
Les modèles Whisper sont compatibles avec un large éventail de langues, prenant en charge environ 100 langues au total.
Cependant, la qualité et la vitesse de transcription dépendent de la langue de l'audio fourni. Bien que les modèles Whisper v3 soient multilingues, leur précision varie sensiblement selon la langue :
- Les langues courantes comme l'anglais, le français, l'espagnol et l'allemand offrent généralement les meilleurs résultats.
- Les langues moins courantes ou disposant de peu de ressources peuvent produire une précision plus faible ou des temps de traitement plus longs.
- Les accents régionaux, dialectes, ou le changement de langue au sein d'un même enregistrement (code-switching) peuvent réduire davantage la précision.
Fournir explicitement le paramètre language (plutôt que de s'appuyer sur la détection automatique) améliore généralement la précision et la latence. Le format attendu est le format ISO-639-1 (par exemple en pour l'anglais, fr pour le français, de pour l'allemand, es pour l'espagnol, zh pour le chinois, ar pour l'arabe, etc.).
Pour une analyse détaillée des performances par langue, consultez les résultats de benchmark de Whisper. Cela inclut les taux d'erreur sur les mots (WER) et sur les caractères (CER) selon différents jeux de données.
Longueur du prompt
Pour les modèles basés sur Whisper, le paramètre prompt ne prend en compte que les 224 derniers tokens (soit environ les 200 derniers caractères). Si votre prompt est plus long, les tokens précédant les 224 derniers seront ignorés.
Prise en charge des paramètres
-
Le streaming n'est pas encore pris en charge pour les endpoints de transcription audio. L'ensemble de l'audio doit être envoyé et traité en une seule requête.
-
Les formats de réponse
srtetvttne sont pas encore pris en charge. Les formats de réponse disponibles sont listés ici.
Formats, durées et tailles audio pris en charge
Formats audio
L'API prend en charge plusieurs formats audio, mentionnés précédemment. Assurez-vous que votre fichier est dans un format pris en charge pour qu'il puisse être transcrit avec succès.
Limites de taille de fichier et de durée :
- Requêtes authentifiées (via une clé API) : jusqu'à
2048 Moou10 800 secondesd'audio par requête. - Requêtes anonymes : jusqu'à
10 Moou60 secondesd'audio par requête.
Transcrire des fichiers audio volumineux
Si votre fichier audio dépasse ces limites, vous pouvez le découper en segments plus petits avant de l'envoyer à l'endpoint de transcription.
Évitez de découper en plein milieu d'une phrase, car cela peut entraîner une perte de contexte et réduire la précision de la transcription. L'utilisation de formats audio compressés peut également aider à réduire la taille du fichier.
Exemple
Découpage audio avec la bibliothèque Python open source pydub :
Répétez ce processus pour créer plusieurs segments, puis transcrivez chaque segment individuellement.
OVHcloud ne fournit aucune garantie quant à l'utilisabilité ou à la sécurité des logiciels tiers tels que pydub.
Conclusion
Dans ce guide, nous avons expliqué comment utiliser les modèles de transcription audio disponibles sur AI Endpoints. Nous avons fourni un aperçu complet de cette fonctionnalité qui peut vous aider à parfaire l'intégration du modèle dans votre propre application.
Aller plus loin
Parcourez la documentation AI Endpoints complète pour mieux comprendre les concepts principaux et démarrer.
Pour une formation ou une assistance technique sur la mise en œuvre de nos solutions, contactez votre commercial ou consultez la page Professional Services pour obtenir un devis et faire analyser votre projet par nos experts.
Votre avis nous intéresse !
N’hésitez pas à nous faire part de vos questions, retours et suggestions pour améliorer le service :
- Sur le serveur Discord OVHcloud