Créer une transcription

Transcrivez un fichier audio ou vidéo. Si webhook est défini sur true, la requête est traitée de manière asynchrone et les résultats sont envoyés aux webhooks configurés. Lorsque use_multi_channel est défini sur true et que l’audio fourni comporte plusieurs canaux, un objet « transcripts » contenant des transcriptions distinctes pour chaque canal est renvoyé. Définissez multichannel_output_style='combined' pour recevoir à la place une transcription unique, avec tous les canaux fusionnés et triés par heure. Sinon, une transcription unique est renvoyée. Le paramètre facultatif webhook_metadata vous permet d’ajouter des données personnalisées qui seront incluses dans les réponses de webhook pour la corrélation et le suivi des requêtes.

En-têtes

xi-api-keystringOptionnel

Paramètres de requête

tokenstring or nullOptionnel

Un jeton d’authentification à usage unique créé via POST /v1/single-use-token/batch_scribe. Ce jeton ne peut être utilisé qu’une seule fois et expire après 15 minutes. Alternative à l’authentification par clé API ou jeton porteur pour les clients front-end.

enable_loggingbooleanOptionnelPar défaut true

Lorsque enable_logging est défini sur false, le mode zéro rétention est utilisé pour la requête. Les fonctionnalités de stockage des journaux et des transcriptions ne sont alors pas disponibles pour cette requête. Le mode zéro rétention est réservé aux clients Enterprise.

Requête

This endpoint expects a multipart form containing an optional file.
model_idstringRequis

L’ID du modèle à utiliser pour la transcription.

filefileOptionnel

Le fichier à transcrire (durée audio minimale de 100 ms). Tous les principaux formats audio et vidéo sont pris en charge. Un seul des paramètres file ou cloud_storage_url doit être fourni. La taille du fichier doit être inférieure à 5,0 Go.

language_codestring or nullOptionnel

An ISO-639-1 or ISO-639-3 language_code corresponding to the language of the audio file. Can sometimes improve transcription performance if known beforehand. Defaults to null, in this case the language is predicted automatically.

transcript_editstring or nullOptionnel
Instruction en langage naturel appliquée à la transcription finale (2 000 caractères maximum). Le texte modifié est renvoyé dans 'edited_transcript', avec la transcription originale. Ne peut pas être combinée avec entity_detection, entity_redaction ou use_multi_channel. L’utilisation de ce paramètre entraîne un supplément de 30 % sur le coût de base de la transcription, facturé pour au moins 10 secondes d’audio.
tag_audio_eventsbooleanOptionnelPar défaut true

Indique s’il faut baliser les événements audio comme (rires), (pas), etc. dans la transcription.

num_speakersinteger or nullOptionnel1-32

Le nombre maximal de locuteurs parlant dans le fichier importé. Peut aider à prédire qui parle à quel moment. Le nombre maximal de locuteurs pouvant être prédits est de 32. La valeur par défaut est null ; dans ce cas, le nombre de locuteurs est défini sur la valeur maximale prise en charge par le modèle.

timestamps_granularityenumOptionnelPar défaut word

La granularité des horodatages dans la transcription. « word » fournit des horodatages au niveau des mots et « character » fournit des horodatages au niveau des caractères pour chaque mot.

Valeurs autorisées:
diarizebooleanOptionnelPar défaut false

Indique s’il faut annoter le locuteur qui parle actuellement dans le fichier importé.

diarization_thresholddouble or nullOptionnel0.1-0.4
Seuil de diarisation à appliquer lors de la diarisation des locuteurs. Une valeur plus élevée réduit le risque qu’un même locuteur soit identifié comme deux locuteurs différents, mais augmente le risque que deux locuteurs différents soient identifiés comme un seul locuteur, avec moins de locuteurs prédits au total. Une valeur faible augmente le risque qu’un même locuteur soit identifié comme deux locuteurs différents, mais réduit le risque que deux locuteurs différents soient identifiés comme un seul locuteur, avec davantage de locuteurs prédits au total. Ne peut être défini que lorsque diarize=True et num_speakers=None. La valeur par défaut est None, auquel cas nous choisissons un seuil en fonction de model_id, généralement 0.22.
additional_formatslist of objectsOptionnel

Liste des formats supplémentaires vers lesquels exporter la transcription.

file_formatenumOptionnelPar défaut other

The format of input audio. Options are ‘pcm_s16le_16’ or ‘other’ For pcm_s16le_16, the input audio must be 16-bit PCM at a 16kHz sample rate, single channel (mono), and little-endian byte order. Latency will be lower than with passing an encoded waveform.

Valeurs autorisées:
cloud_storage_urlstring or nullOptionnelDeprecated
[Obsolète] Ce paramètre est obsolète et sera supprimé à l’avenir. Utilisez plutôt « source_url ». URL HTTPS du fichier à transcrire. Un seul des paramètres file ou cloud_storage_url doit être fourni. Le fichier doit être accessible via HTTPS et sa taille doit être inférieure à 2 Go. Toute URL HTTPS valide est acceptée, y compris les URL de fournisseurs de stockage cloud (AWS S3, Google Cloud Storage, Cloudflare R2, etc.), de CDN ou de toute autre source HTTPS. Les URL peuvent être pré-signées ou inclure des jetons d’authentification dans les paramètres de requête.
source_urlstring or nullOptionnel

L’URL d’un fichier audio ou vidéo à transcrire. Prend en charge les fichiers audio ou vidéo hébergés, les URL de vidéos YouTube et TikTok, ainsi que d’autres services d’hébergement de vidéos.

webhookbooleanOptionnelPar défaut false

Indique s’il faut envoyer le résultat de la transcription aux webhooks Speech to Text configurés. Si cette option est définie, la requête renvoie une réponse anticipée sans la transcription, qui sera fournie ultérieurement via webhook.

webhook_idstring or nullOptionnel

ID de webhook spécifique facultatif auquel envoyer le résultat de la transcription. Valide uniquement lorsque webhook est défini sur true. Si aucun ID n’est fourni, la transcription sera envoyée à tous les webhooks Speech to Text configurés.

temperaturedouble or nullOptionnel0-2

Contrôle le caractère aléatoire du résultat de la transcription. Accepte des valeurs comprises entre 0,0 et 2,0, les valeurs plus élevées produisant des résultats plus variés et moins déterministes. Si ce paramètre est omis, nous utiliserons une température basée sur le modèle sélectionné, généralement égale à 0.

seedinteger or nullOptionnel0-2147483647

Si spécifié, notre système fera de son mieux pour échantillonner de manière déterministe, afin que des requêtes répétées avec la même graine et les mêmes paramètres renvoient le même résultat. Le déterminisme n’est pas garanti. Doit être un entier compris entre 0 et 2147483647.

use_multi_channelbooleanOptionnelPar défaut false
Indique si le fichier audio contient plusieurs canaux, chaque canal ne contenant qu’un seul locuteur. Lorsqu’elle est activée, chaque canal est transcrit indépendamment. Par défaut, une transcription distincte est renvoyée par canal. Définissez multichannel_output_style='combined' pour recevoir à la place une seule transcription, avec tous les canaux fusionnés et triés par heure. Chaque mot de la réponse inclut un champ 'channel_index' indiquant le canal sur lequel il a été prononcé. Jusqu’à 5 canaux sont pris en charge. Chaque canal est facturé indépendamment pour la durée audio complète, le coût augmente donc linéairement avec le nombre de canaux.
multichannel_output_styleenumOptionnelPar défaut separate
Contrôle le format de réponse lorsque use_multi_channel est activé. « separate » (valeur par défaut) renvoie une transcription par canal sous « transcripts ». « combined » fusionne tous les canaux en une seule transcription dont les mots sont triés par heure de début, chacun portant un « channel_index », conformément au format de réponse à canal unique. « combined » nécessite des horodatages (timestamps_granularity ne doit pas être « none ») et ne prend pas en charge la détection ni la suppression d'entités.
Valeurs autorisées:
webhook_metadatastring or map from strings to any or nullOptionnel

Métadonnées facultatives à inclure dans la réponse du webhook. Il doit s’agir d’une chaîne JSON représentant un objet d’une profondeur maximale de 2 niveaux et d’une taille maximale de 16 Ko. Utile pour suivre des ID internes, des références de tâches ou d’autres informations contextuelles.

entity_detectionstring or list of strings or nullOptionnel
Détecte les entités dans la transcription. Peut être défini sur 'all' pour détecter toutes les entités, sur une chaîne correspondant à un type ou une catégorie d’entité, ou sur une liste de types ou catégories d’entités. Les catégories comprennent 'pii', 'phi', 'pci', 'other' et 'offensive_language'. Lorsqu’il est activé, les entités détectées sont renvoyées dans le champ 'entities', avec leur texte, leur type et leur position en caractères. L’utilisation de ce paramètre entraîne un surcoût de 30 % sur le coût de transcription de base.
no_verbatimbooleanOptionnelPar défaut false

Si true, la transcription ne contiendra aucun mot de remplissage, faux départ ni son non verbal. Uniquement pris en charge avec le modèle scribe_v2.

use_speaker_librarybooleanOptionnelPar défaut false

Indique s’il faut utiliser la bibliothèque de locuteurs pour identifier les locuteurs connus lors de la diarisation. Lorsque cette option est activée et que diarize est true, les locuteurs détectés sont comparés aux locuteurs enregistrés dans la bibliothèque de locuteurs du Workspace.

detect_speaker_rolesbooleanOptionnelPar défaut false
Indique s'il faut détecter les rôles des locuteurs (agent ou client). Nécessite diarize=true. Ne peut pas être utilisé avec use_multi_channel=true. Lorsqu'il est activé, les valeurs de speaker_id sont « agent » et « customer » au lieu de « speaker_0 », « speaker_1 », etc. Son utilisation entraîne un supplément de 10 % sur le coût de base de la transcription.
entity_redactionstring or list of strings or nullOptionnel
Masque les entités dans le texte de la transcription. Accepte le même format que entity_detection : « all », une catégorie (« pii », « phi ») ou des types d’entités spécifiques. Doit constituer un sous-ensemble de entity_detection. Lorsque le masquage est activé, le champ entities n’est pas renvoyé. L’utilisation de ce paramètre entraîne un supplément de 30 % sur le coût de base de la transcription.
entity_redaction_modestringOptionnelPar défaut enumerated_entity_type

Méthode de formatage des entités masquées. ‘redacted’ remplace par {REDACTED}, ‘entity_type’ remplace par {ENTITY_TYPE}, et ‘enumerated_entity_type’ remplace par {ENTITY_TYPE_N}, où N numérote chaque occurrence. Utilisé uniquement lorsque entity_redaction est défini.

keytermslist of stringsOptionnelPar défaut []
Liste de termes clés permettant d'orienter la transcription. Les termes clés sont des mots ou expressions que vous souhaitez voir reconnus plus précisément par le modèle. Leur nombre ne peut pas dépasser 1 000. Chaque terme clé doit comporter moins de 50 caractères. Les termes clés peuvent contenir au maximum 5 mots, après normalisation. Par exemple : ["hello", "world", "technical term"]. Les caractères suivants ne sont pas pris en charge : `<`, `>`, `{`, `}`, `[`, `]`, `\`. L'utilisation de ce paramètre entraîne un supplément de 20 % sur le coût de base de la transcription. Lorsque plus de 100 termes clés sont fournis, une durée minimale facturable de 20 secondes s'applique par requête.

Réponse

Résultat de transcription synchrone

SpeechToTextChunkResponseModelobject

Détails de la transcription au niveau des segments, avec des informations temporelles.

OR
MultichannelSpeechToTextResponseModelobject

Modèle de réponse pour la transcription Speech to Text multicanale.

OR
SpeechToTextWebhookResponseModelobject

Erreurs

422
Unprocessable Entity Error