{
  "aboutHtml": "<p>ElevenLabs Scribe v2 Medical est l’édition de reconnaissance vocale par lots spécialisée dans l’audio médical et clinique. Il s’agit d’une version ajustée de Scribe v2, dont la reconnaissance cible les noms de médicaments, l’anatomie, la pathologie et la dictée clinique, tout en conservant le processus général de transcription vocale. Elle transforme l’enregistrement fourni en brouillon de texte avec minutage et annotations facultatives des locuteurs. Les usages prévus par le concepteur sont la documentation et les processus administratifs associés, avec relecture et correction du texte avant utilisation.</p><p>Les entrées utiles comprennent un enregistrement de conversation entre soignant et patient, une dictée orale, un appel d’admission ou une discussion de coordination des soins. Préservez l’enregistrement original et suffisamment de parole environnante pour distinguer un terme en contexte. Évitez l’écrêtage et gardez séparés les canaux de locuteurs significatifs lorsque la source les fournit. L’interface de transcription par lots commune du producteur accepte les formats audio courants comme WAV, MP3, FLAC et M4A. L’adaptation à la terminologie médicale renforce la spécialisation de la tâche ; elle ne reconstitue pas une partie clairement manquante ou inaudible de l’enregistrement.</p><p>Le fabricant documente la même prise en charge de plus de 90 langues que Scribe v2. Ses informations publiques sur la transcription médicale indiquent que les améliorations de précision médicale ont été mesurées en anglais, français et allemand. Ces résultats n’établissent pas des performances égales sur les termes spécialisés dans toutes les langues prises en charge. Fournissez la langue connue lorsque c’est utile, conservez les noms et termes d’alternance linguistique, et vérifiez le vocabulaire clinique rare dans l’audio réel plutôt que de l’accepter parce que la phrase est fluide.</p><p>La sortie de transcription contient le texte reconnu et les mots minutés, avec des libellés de locuteur et des étiquettes d’événements audio facultatifs. Les heures de début et de fin des mots permettent de revenir à un nom de médicament, à une quantité prononcée ou à une correction dans l’enregistrement. Un livrable de dictée utile est donc une transcription accompagnée de son enregistrement aligné sur les mots. Relisez les détails sensibles dans leur contexte oral complet, notamment les négations, l’incertitude et la différence entre un propos rapporté par le patient et une affirmation du soignant.</p><p>Pour une consultation enregistrée en ambiance, la diarisation aide à organiser qui a parlé et quand. Traitez un libellé déduit comme un regroupement de parole, puis associez-le à des rôles ou identités connus à l’aide du dossier de consultation. Les voix qui se chevauchent ou se ressemblent nécessitent une attention particulière lors de la relecture des changements de tour. Si chaque canal d’enregistrement contient un seul locuteur, l’interface par lots commune propose aussi une transcription indépendante des canaux. Distinguez l’attribution par canal de la diarisation déduite d’un audio mixé, et conservez la disposition source lorsqu’elle aide à relire le résultat.</p><p>Le guidage par termes clés fournit des mots ou expressions pertinents pour orienter la reconnaissance à l’aide du contexte. Préparez un glossaire ciblé à partir de la terminologie réelle attendue dans l’enregistrement, avec les orthographes et abréviations importantes pour la documentation. Le guide par lots du concepteur autorise jusqu’à 1 000 termes clés ; ils doivent être courts et pertinents, plutôt qu’un vocabulaire exhaustif sans rapport. Examinez les termes importants à leurs horodatages. Un terme clé fourni est un indice de reconnaissance, non une preuve que le mot a été prononcé, ni une instruction de remplacer un autre terme audible.</p><p>Le concepteur documente une détection facultative des entités, incluant certaines catégories d’informations de santé, avec la transcription. Ces annotations peuvent aider un processus de relecture autorisé à trouver les segments pertinents pour correction ou traitement. L’interface par lots commune propose aussi un masquage des entités, qui remplace le texte détecté par des libellés ; il exige la détection des entités, et la liste d’entités est omise lorsque le masquage est activé. Conservez le texte renvoyé et le minutage avec les annotations présentes dans le résultat choisi. Une modification, synthèse ou extraction en aval est une transformation distincte de la transcription et doit préserver le lien avec la formulation enregistrée. Par exemple, une phrase remise au propre ne doit pas effacer une correction orale ni transformer une déclaration incertaine en constat certain.</p><p>La tâche définie de l’édition médicale est la transcription. Le fabricant exclut explicitement de sa finalité l’interprétation des informations cliniques, le diagnostic, les recommandations de traitement et l’aide à la décision clinique. Pour un processus documentaire achevé, le professionnel de santé concerné ou un relecteur autorisé vérifie le brouillon dans l’enregistrement et corrige les erreurs importantes. Le modèle fournit l’enregistrement textuel pour soutenir ce travail ; la transcription elle-même n’établit pas l’exactitude d’une affirmation clinique et ne remplace pas la relecture.</p><p>Gardez claire la distinction d’édition lorsque vous préparez une tâche. Scribe v2 Medical traite l’audio enregistré ; Scribe v2 Realtime est le modèle distinct de transcription en direct. Une version ajustée médicale n’hérite pas des limites ou capacités de synthèse vocale au seul motif que le même concepteur propose des produits vocaux. Le résultat utile est un brouillon de transcription relu, avec minutage et informations de locuteur adaptés à l’enregistrement, laissant visibles les détails inaudibles ou incertains à corriger plutôt que de les remplir silencieusement avec un langage clinique plausible.</p>",
  "aboutText": "ElevenLabs Scribe v2 Medical est l’édition de reconnaissance vocale par lots spécialisée dans l’audio médical et clinique. Il s’agit d’une version ajustée de Scribe v2, dont la reconnaissance cible les noms de médicaments, l’anatomie, la pathologie et la dictée clinique, tout en conservant le processus général de transcription vocale. Elle transforme l’enregistrement fourni en brouillon de texte avec minutage et annotations facultatives des locuteurs. Les usages prévus par le concepteur sont la documentation et les processus administratifs associés, avec relecture et correction du texte avant utilisation.\n\nLes entrées utiles comprennent un enregistrement de conversation entre soignant et patient, une dictée orale, un appel d’admission ou une discussion de coordination des soins. Préservez l’enregistrement original et suffisamment de parole environnante pour distinguer un terme en contexte. Évitez l’écrêtage et gardez séparés les canaux de locuteurs significatifs lorsque la source les fournit. L’interface de transcription par lots commune du producteur accepte les formats audio courants comme WAV, MP3, FLAC et M4A. L’adaptation à la terminologie médicale renforce la spécialisation de la tâche ; elle ne reconstitue pas une partie clairement manquante ou inaudible de l’enregistrement.\n\nLe fabricant documente la même prise en charge de plus de 90 langues que Scribe v2. Ses informations publiques sur la transcription médicale indiquent que les améliorations de précision médicale ont été mesurées en anglais, français et allemand. Ces résultats n’établissent pas des performances égales sur les termes spécialisés dans toutes les langues prises en charge. Fournissez la langue connue lorsque c’est utile, conservez les noms et termes d’alternance linguistique, et vérifiez le vocabulaire clinique rare dans l’audio réel plutôt que de l’accepter parce que la phrase est fluide.\n\nLa sortie de transcription contient le texte reconnu et les mots minutés, avec des libellés de locuteur et des étiquettes d’événements audio facultatifs. Les heures de début et de fin des mots permettent de revenir à un nom de médicament, à une quantité prononcée ou à une correction dans l’enregistrement. Un livrable de dictée utile est donc une transcription accompagnée de son enregistrement aligné sur les mots. Relisez les détails sensibles dans leur contexte oral complet, notamment les négations, l’incertitude et la différence entre un propos rapporté par le patient et une affirmation du soignant.\n\nPour une consultation enregistrée en ambiance, la diarisation aide à organiser qui a parlé et quand. Traitez un libellé déduit comme un regroupement de parole, puis associez-le à des rôles ou identités connus à l’aide du dossier de consultation. Les voix qui se chevauchent ou se ressemblent nécessitent une attention particulière lors de la relecture des changements de tour. Si chaque canal d’enregistrement contient un seul locuteur, l’interface par lots commune propose aussi une transcription indépendante des canaux. Distinguez l’attribution par canal de la diarisation déduite d’un audio mixé, et conservez la disposition source lorsqu’elle aide à relire le résultat.\n\nLe guidage par termes clés fournit des mots ou expressions pertinents pour orienter la reconnaissance à l’aide du contexte. Préparez un glossaire ciblé à partir de la terminologie réelle attendue dans l’enregistrement, avec les orthographes et abréviations importantes pour la documentation. Le guide par lots du concepteur autorise jusqu’à 1 000 termes clés ; ils doivent être courts et pertinents, plutôt qu’un vocabulaire exhaustif sans rapport. Examinez les termes importants à leurs horodatages. Un terme clé fourni est un indice de reconnaissance, non une preuve que le mot a été prononcé, ni une instruction de remplacer un autre terme audible.\n\nLe concepteur documente une détection facultative des entités, incluant certaines catégories d’informations de santé, avec la transcription. Ces annotations peuvent aider un processus de relecture autorisé à trouver les segments pertinents pour correction ou traitement. L’interface par lots commune propose aussi un masquage des entités, qui remplace le texte détecté par des libellés ; il exige la détection des entités, et la liste d’entités est omise lorsque le masquage est activé. Conservez le texte renvoyé et le minutage avec les annotations présentes dans le résultat choisi. Une modification, synthèse ou extraction en aval est une transformation distincte de la transcription et doit préserver le lien avec la formulation enregistrée. Par exemple, une phrase remise au propre ne doit pas effacer une correction orale ni transformer une déclaration incertaine en constat certain.\n\nLa tâche définie de l’édition médicale est la transcription. Le fabricant exclut explicitement de sa finalité l’interprétation des informations cliniques, le diagnostic, les recommandations de traitement et l’aide à la décision clinique. Pour un processus documentaire achevé, le professionnel de santé concerné ou un relecteur autorisé vérifie le brouillon dans l’enregistrement et corrige les erreurs importantes. Le modèle fournit l’enregistrement textuel pour soutenir ce travail ; la transcription elle-même n’établit pas l’exactitude d’une affirmation clinique et ne remplace pas la relecture.\n\nGardez claire la distinction d’édition lorsque vous préparez une tâche. Scribe v2 Medical traite l’audio enregistré ; Scribe v2 Realtime est le modèle distinct de transcription en direct. Une version ajustée médicale n’hérite pas des limites ou capacités de synthèse vocale au seul motif que le même concepteur propose des produits vocaux. Le résultat utile est un brouillon de transcription relu, avec minutage et informations de locuteur adaptés à l’enregistrement, laissant visibles les détails inaudibles ou incertains à corriger plutôt que de les remplir silencieusement avec un langage clinique plausible.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "b34e215f1b8d606e1b60f32d8423910633ffc29a9c8fb634ba6235923ceecd9d",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "fr",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">ElevenLabs: Scribe v2 Medical</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Fermer\">×</button></div><div class=\"idline\"><span>ElevenLabs /</span><code>elevenlabs/scribe-v2-medical</code><button type=\"button\" id=\"copy-id\">Copier l’ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Rubriques de la fiche modèle\"><button type=\"button\" data-card-jump=\"overview\">Premiers pas</button><button type=\"button\" data-card-jump=\"methods\">Entrées et méthodes</button><button type=\"button\" data-card-jump=\"pricing\">Tarifs</button><button type=\"button\" data-card-jump=\"examples\">Exemples</button><button type=\"button\" data-card-jump=\"results\">Résultats</button><button type=\"button\" data-card-jump=\"aliases\">Alias</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"Méthodes API\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|transcriptions|/v1/audio/transcriptions|elevenlabs%2Fscribe-v2-medical\">Reconnaissance</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Premiers pas</h3><p class=\"mdesc-full\">ElevenLabs Scribe v2 Medical transcrit les enregistrements audio cliniques avec un vocabulaire adapté aux noms de médicaments, à l’anatomie et à la pathologie. Il prend en charge plus de 90 langues, le minutage des mots, la diarisation des locuteurs et les termes clés contextuels. Sa sortie est un brouillon de transcription à relire pour la documentation, plutôt qu’une interprétation clinique.</p><dl class=\"card-io\" data-card-io><div><dt>Entrées acceptées</dt><dd>Audio</dd></div><div><dt>Résultats</dt><dd>Texte</dd></div></dl><details class=\"card-about\"><summary>À propos du modèle</summary><p class=\"note-s\" data-model-method-boundary>Cette description présente les capacités du modèle. Les entrées, sorties et options disponibles dans Ailoot pour la méthode sélectionnée figurent ci-dessous.</p><div class=\"mabout\" id=\"m-about\"><p>ElevenLabs Scribe v2 Medical est l’édition de reconnaissance vocale par lots spécialisée dans l’audio médical et clinique. Il s’agit d’une version ajustée de Scribe v2, dont la reconnaissance cible les noms de médicaments, l’anatomie, la pathologie et la dictée clinique, tout en conservant le processus général de transcription vocale. Elle transforme l’enregistrement fourni en brouillon de texte avec minutage et annotations facultatives des locuteurs. Les usages prévus par le concepteur sont la documentation et les processus administratifs associés, avec relecture et correction du texte avant utilisation.</p><p>Les entrées utiles comprennent un enregistrement de conversation entre soignant et patient, une dictée orale, un appel d’admission ou une discussion de coordination des soins. Préservez l’enregistrement original et suffisamment de parole environnante pour distinguer un terme en contexte. Évitez l’écrêtage et gardez séparés les canaux de locuteurs significatifs lorsque la source les fournit. L’interface de transcription par lots commune du producteur accepte les formats audio courants comme WAV, MP3, FLAC et M4A. L’adaptation à la terminologie médicale renforce la spécialisation de la tâche ; elle ne reconstitue pas une partie clairement manquante ou inaudible de l’enregistrement.</p><p>Le fabricant documente la même prise en charge de plus de 90 langues que Scribe v2. Ses informations publiques sur la transcription médicale indiquent que les améliorations de précision médicale ont été mesurées en anglais, français et allemand. Ces résultats n’établissent pas des performances égales sur les termes spécialisés dans toutes les langues prises en charge. Fournissez la langue connue lorsque c’est utile, conservez les noms et termes d’alternance linguistique, et vérifiez le vocabulaire clinique rare dans l’audio réel plutôt que de l’accepter parce que la phrase est fluide.</p><p>La sortie de transcription contient le texte reconnu et les mots minutés, avec des libellés de locuteur et des étiquettes d’événements audio facultatifs. Les heures de début et de fin des mots permettent de revenir à un nom de médicament, à une quantité prononcée ou à une correction dans l’enregistrement. Un livrable de dictée utile est donc une transcription accompagnée de son enregistrement aligné sur les mots. Relisez les détails sensibles dans leur contexte oral complet, notamment les négations, l’incertitude et la différence entre un propos rapporté par le patient et une affirmation du soignant.</p><p>Pour une consultation enregistrée en ambiance, la diarisation aide à organiser qui a parlé et quand. Traitez un libellé déduit comme un regroupement de parole, puis associez-le à des rôles ou identités connus à l’aide du dossier de consultation. Les voix qui se chevauchent ou se ressemblent nécessitent une attention particulière lors de la relecture des changements de tour. Si chaque canal d’enregistrement contient un seul locuteur, l’interface par lots commune propose aussi une transcription indépendante des canaux. Distinguez l’attribution par canal de la diarisation déduite d’un audio mixé, et conservez la disposition source lorsqu’elle aide à relire le résultat.</p><p>Le guidage par termes clés fournit des mots ou expressions pertinents pour orienter la reconnaissance à l’aide du contexte. Préparez un glossaire ciblé à partir de la terminologie réelle attendue dans l’enregistrement, avec les orthographes et abréviations importantes pour la documentation. Le guide par lots du concepteur autorise jusqu’à 1 000 termes clés ; ils doivent être courts et pertinents, plutôt qu’un vocabulaire exhaustif sans rapport. Examinez les termes importants à leurs horodatages. Un terme clé fourni est un indice de reconnaissance, non une preuve que le mot a été prononcé, ni une instruction de remplacer un autre terme audible.</p><p>Le concepteur documente une détection facultative des entités, incluant certaines catégories d’informations de santé, avec la transcription. Ces annotations peuvent aider un processus de relecture autorisé à trouver les segments pertinents pour correction ou traitement. L’interface par lots commune propose aussi un masquage des entités, qui remplace le texte détecté par des libellés ; il exige la détection des entités, et la liste d’entités est omise lorsque le masquage est activé. Conservez le texte renvoyé et le minutage avec les annotations présentes dans le résultat choisi. Une modification, synthèse ou extraction en aval est une transformation distincte de la transcription et doit préserver le lien avec la formulation enregistrée. Par exemple, une phrase remise au propre ne doit pas effacer une correction orale ni transformer une déclaration incertaine en constat certain.</p><p>La tâche définie de l’édition médicale est la transcription. Le fabricant exclut explicitement de sa finalité l’interprétation des informations cliniques, le diagnostic, les recommandations de traitement et l’aide à la décision clinique. Pour un processus documentaire achevé, le professionnel de santé concerné ou un relecteur autorisé vérifie le brouillon dans l’enregistrement et corrige les erreurs importantes. Le modèle fournit l’enregistrement textuel pour soutenir ce travail ; la transcription elle-même n’établit pas l’exactitude d’une affirmation clinique et ne remplace pas la relecture.</p><p>Gardez claire la distinction d’édition lorsque vous préparez une tâche. Scribe v2 Medical traite l’audio enregistré ; Scribe v2 Realtime est le modèle distinct de transcription en direct. Une version ajustée médicale n’hérite pas des limites ou capacités de synthèse vocale au seul motif que le même concepteur propose des produits vocaux. Le résultat utile est un brouillon de transcription relu, avec minutage et informations de locuteur adaptés à l’enregistrement, laissant visibles les détails inaudibles ou incertains à corriger plutôt que de les remplir silencieusement avec un langage clinique plausible.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Disponible dans Ailoot · entrées et méthodes</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Transcription audio</b> <code>POST /v1/audio/transcriptions</code></summary><dl class=\"method-capabilities\"><div><dt>Types d’entrée</dt><dd><code>audio</code></dd></div><div><dt>Types de sortie</dt><dd><code>text</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Champ</th><th>Type</th><th>Exigence</th><th>Valeurs et limites</th><th>Par défaut</th></tr></thead><tbody><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Obligatoire</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span><div>elevenlabs/scribe-v2-medical</div></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">input_audio</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>object</code></td><td data-cell-label=\"Exigence\"><span class=\"card-cell-label\">Exigence</span>Obligatoire</td><td data-cell-label=\"Valeurs et limites\"><span class=\"card-cell-label\">Valeurs et limites</span></td><td data-cell-label=\"Par défaut\" data-default=\"unspecified\"><span class=\"card-cell-label\">Par défaut</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Paramètres et cycle de vie de la méthode</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Paramètre</th><th>Contrat</th></tr></thead><tbody><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>content_type</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>application/json</td></tr><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>required</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>model, input_audio</td></tr><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>material_types</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>audio</td></tr><tr><th data-cell-label=\"Paramètre\" scope=\"row\"><span class=\"card-cell-label\">Paramètre</span><code>material_conditions</code></th><td data-cell-label=\"Contrat\"><span class=\"card-cell-label\">Contrat</span>L’exemple lit votre fichier PCM WAV réel et non vide, encode l’intégralité de ses octets en base64 et définit input_audio.format sur wav pour l’envoi.</td></tr></tbody></table></div><p>Cycle de vie : <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · task_id exact provenant d’un enregistrement média existant vous appartenant</p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}/content</code></p><p class=\"note-s\"><code>GET /v1/media/assets</code></p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Tarifs</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Les tarifs n’ajoutent pas d’options de requête. Les paramètres pris en charge figurent dans la méthode sélectionnée.</p><dl data-price-conditions><dt>Mode rapide</dt><dd>Non précisé <span class=\"note-s\">Lorsque le mode rapide est sélectionné</span></dd><dt>Mode Flex</dt><dd>Non précisé <span class=\"note-s\">Lorsque le mode flex est sélectionné</span></dd><dt>Effort de raisonnement maximal</dt><dd>Non précisé <span class=\"note-s\">Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)</span></dd></dl></div><div data-declared-tariff-pricing><h4>Tarifs Ailoot</h4><h4>Prix par configuration</h4><p class=\"note-s\">Associez chaque coût aux conditions indiquées. Utilisez un seul tarif pour chaque ensemble de configurations alternatives.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Configuration</th><th>Barème tarifaire</th><th>Unité de facturation</th><th>Coût</th></tr></thead><tbody><tr><th data-cell-label=\"Configuration\" scope=\"row\"><span class=\"card-cell-label\">Configuration</span>Tarifs de base par jeton</th><td data-cell-label=\"Barème tarifaire\"><span class=\"card-cell-label\">Barème tarifaire</span>Tarif de base</td><td data-cell-label=\"Unité de facturation\"><span class=\"card-cell-label\">Unité de facturation</span>—</td><td data-cell-label=\"Coût\"><span class=\"card-cell-label\">Coût</span><div><span>Entrée · Tokens en entrée</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Sortie · Tokens en sortie</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Entrée · Lecture du cache</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Entrée · Écriture dans le cache</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div><div><span>Entrée · Écriture dans le cache, 1 h</span> <b>—</b> <span class=\"price-unit\">/ 1K tokens</span></div></td></tr><tr><th data-cell-label=\"Configuration\" scope=\"row\"><span class=\"card-cell-label\">Configuration</span>seconde d’audio en entrée</th><td data-cell-label=\"Barème tarifaire\"><span class=\"card-cell-label\">Barème tarifaire</span>—</td><td data-cell-label=\"Unité de facturation\"><span class=\"card-cell-label\">Unité de facturation</span>par seconde d’audio en entrée</td><td data-cell-label=\"Coût\"><span class=\"card-cell-label\">Coût</span><div><span>Entrée · seconde d’audio en entrée</span> <b>$0.0001222222222222</b> <span class=\"price-unit\">par seconde d’audio en entrée</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot réserve un montant estimé avant une requête. Après le résultat, le montant final est débité selon l’utilisation mesurée. Pour le streaming, le montant final à débiter est calculé à partir du relevé final d’utilisation. <a href=\"/docs/fr/billing/reserve/\">Fonctionnement de la réservation et du débit →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Exemples de requêtes</h3><h4>Ailoot Ultra · Transcription audio</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Variantes du code\"><button class=\"cg-tab\" id=\"model-code-1329-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1329-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · fichier WAV réel et résultat d’origine complet</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Copier le code\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1329-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1329-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}&quot;\nexport AILOOT_AUDIO_FILE\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ[&#39;AILOOT_AUDIO_FILE&#39;]).read_bytes()\nif not (audio[:4] == b&#39;RIFF&#39; and audio[8:12] == b&#39;WAVE&#39;):\n    raise SystemExit(&#39;Supply your actual PCM WAV audio file&#39;)\nwith wave.open(io.BytesIO(audio), &#39;rb&#39;) as recording:\n    if recording.getcomptype() != &#39;NONE&#39; or recording.getnframes() &lt;= 0:\n        raise SystemExit(&#39;Supply a nonempty PCM WAV recording&#39;)\nrequest = {&#39;model&#39;: &#39;elevenlabs/scribe-v2-medical&#39;, &#39;input_audio&#39;: {&#39;data&#39;: base64.b64encode(audio).decode(&#39;ascii&#39;), &#39;format&#39;: &#39;wav&#39;}}\nPath(&#39;request.json&#39;).write_text(json.dumps(request, ensure_ascii=False), encoding=&#39;utf-8&#39;)\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Recevoir et enregistrer les résultats</h3><h4>Ailoot Ultra · Transcription audio</h4><p class=\"note-s\">Corps complet de la réponse d’origine, statut et en-têtes transmis. Ce gestionnaire n’ajoute aucune structure JSON universelle, aucun champ texte ni aucune enveloppe de tâche.</p><ul class=\"card-result-paths\"><li><code>GET /v1/media/tasks/{task_id}</code></li><li><code>GET /v1/media/assets/{asset_id}/content</code></li><li><code>GET /v1/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><div class=\"card-result-process\" data-all-results><h5>Conserver tous les résultats terminés</h5><p class=\"note-s\">Conservez chaque réponse, fichier et partie de contenu renvoyés dans leur intégralité.</p><p class=\"note-s\">Conservez la réponse complète et les en-têtes, chaque sortie effective, les identifiants initialement renvoyés et tous les champs d’utilisation. Récupérez l’opération d’origine sans soumettre à nouveau sa création.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Si la réponse d’origine doit être vérifiée</h5><p class=\"note-s\">Conservez la valeur réelle de X-Client-Request-ID et la réponse complète. Consultez les ressources d’origine vous appartenant et leurs URL signées exactes de contenu ; ne soumettez jamais à nouveau une création incertaine.</p></div><details class=\"card-about\" data-output-fields><summary>Champs de la réponse</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Champ</th><th>Type</th></tr></thead><tbody><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">text (when present)</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span></td></tr><tr><th data-cell-label=\"Champ\" scope=\"row\"><span class=\"card-cell-label\">Champ</span><code class=\"card-field-name\">usage (when present)</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span></td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Erreurs et étapes suivantes</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Réponse</th><th>Condition</th><th>Étape suivante</th></tr></thead><tbody><tr><th data-cell-label=\"Réponse\" scope=\"row\"><span class=\"card-cell-label\">Réponse</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Condition\"><span class=\"card-cell-label\">Condition</span>Le corps JSON ou l’identifiant canonique explicite du modèle n’est pas valide.</td><td data-cell-label=\"Étape suivante\"><span class=\"card-cell-label\">Étape suivante</span>Conservez la réponse et corrigez le champ de requête indiqué.</td></tr><tr><th data-cell-label=\"Réponse\" scope=\"row\"><span class=\"card-cell-label\">Réponse</span>401 · <code>authentication_error</code></th><td data-cell-label=\"Condition\"><span class=\"card-cell-label\">Condition</span>La clé API Ailoot n’est pas valide.</td><td data-cell-label=\"Étape suivante\"><span class=\"card-cell-label\">Étape suivante</span>Utilisez votre clé API Ailoot autorisée.</td></tr><tr><th data-cell-label=\"Réponse\" scope=\"row\"><span class=\"card-cell-label\">Réponse</span>403 · <code>permission_error</code></th><td data-cell-label=\"Condition\"><span class=\"card-cell-label\">Condition</span>Le groupe de la clé n’autorise pas cette méthode.</td><td data-cell-label=\"Étape suivante\"><span class=\"card-cell-label\">Étape suivante</span>Conservez les détails de l’erreur renvoyés.</td></tr><tr><th data-cell-label=\"Réponse\" scope=\"row\"><span class=\"card-cell-label\">Réponse</span>404 · <code>not_found_error</code></th><td data-cell-label=\"Condition\"><span class=\"card-cell-label\">Condition</span>La méthode sélectionnée ne dispose d’aucune route autorisée.</td><td data-cell-label=\"Étape suivante\"><span class=\"card-cell-label\">Étape suivante</span>Conservez les détails de l’erreur renvoyés.</td></tr><tr><th data-cell-label=\"Réponse\" scope=\"row\"><span class=\"card-cell-label\">Réponse</span>422 · <code>price_unavailable</code></th><td data-cell-label=\"Condition\"><span class=\"card-cell-label\">Condition</span>Le tarif accepté ne permet pas d’obtenir la quantité d’entrée ou la borne requise.</td><td data-cell-label=\"Étape suivante\"><span class=\"card-cell-label\">Étape suivante</span>Conservez la réponse ; utilisez la représentation d’entrée requise par le tarif accepté.</td></tr><tr><th data-cell-label=\"Réponse\" scope=\"row\"><span class=\"card-cell-label\">Réponse</span>503 · <code></code></th><td data-cell-label=\"Condition\"><span class=\"card-cell-label\">Condition</span>Le stockage, la route, le tarif de la méthode ou la réservation requis ne sont pas disponibles.</td><td data-cell-label=\"Étape suivante\"><span class=\"card-cell-label\">Étape suivante</span>Conservez la réponse d’origine complète. Une réservation incertaine n’autorise pas une nouvelle soumission.</td></tr><tr><th data-cell-label=\"Réponse\" scope=\"row\"><span class=\"card-cell-label\">Réponse</span>502 · <code>server_error</code></th><td data-cell-label=\"Condition\"><span class=\"card-cell-label\">Condition</span>Le résultat d’origine, l’utilisation ou le règlement nécessite une vérification.</td><td data-cell-label=\"Étape suivante\"><span class=\"card-cell-label\">Étape suivante</span>Conservez l’identifiant réel de la requête et la réponse d’origine. Consultez l’enregistrement existant vous appartenant ; ne soumettez pas à nouveau la création.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Alias</h3><h4>Alias du modèle</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=elevenlabs%2Fscribe-v2-medical&amp;route=Ultra&amp;caller=elevenlabs%2Fscribe-v2-medical&amp;fmt=transcriptions\"><code>elevenlabs/scribe-v2-medical</code></a></span></p><h4>Alias des chemins de méthode</h4><p class=\"note-s\">Utilisez les chemins de méthode indiqués ci-dessus.</p><h4>ID d’appel associés</h4><p class=\"note-s\"><a href=\"#m=elevenlabs%2Fscribe-v2-medical&amp;route=Ultra&amp;caller=elevenlabs%2Fscribe-v2-medical&amp;fmt=transcriptions\"><code>elevenlabs/scribe-v2-medical</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "elevenlabs/scribe-v2-medical",
        "fmt": "transcriptions",
        "http": "POST",
        "path": "/v1/audio/transcriptions",
        "request_model_id": "elevenlabs/scribe-v2-medical",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|transcriptions|/v1/audio/transcriptions|elevenlabs%2Fscribe-v2-medical",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "errors": [
              {
                "code": null,
                "condition": "Le corps JSON ou l’identifiant canonique explicite du modèle n’est pas valide.",
                "http_status": 400,
                "recovery": "Conservez la réponse et corrigez le champ de requête indiqué.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "La clé API Ailoot n’est pas valide.",
                "http_status": 401,
                "recovery": "Utilisez votre clé API Ailoot autorisée.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Le groupe de la clé n’autorise pas cette méthode.",
                "http_status": 403,
                "recovery": "Conservez les détails de l’erreur renvoyés.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "La méthode sélectionnée ne dispose d’aucune route autorisée.",
                "http_status": 404,
                "recovery": "Conservez les détails de l’erreur renvoyés.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Le tarif accepté ne permet pas d’obtenir la quantité d’entrée ou la borne requise.",
                "http_status": 422,
                "recovery": "Conservez la réponse ; utilisez la représentation d’entrée requise par le tarif accepté.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Le stockage, la route, le tarif de la méthode ou la réservation requis ne sont pas disponibles.",
                "http_status": 503,
                "recovery": "Conservez la réponse d’origine complète. Une réservation incertaine n’autorise pas une nouvelle soumission.",
                "type": null
              },
              {
                "code": null,
                "condition": "Le résultat d’origine, l’utilisation ou le règlement nécessite une vérification.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Conservez l’identifiant réel de la requête et la réponse d’origine. Consultez l’enregistrement existant vous appartenant ; ne soumettez pas à nouveau la création.",
                "response_headers": {
                  "x-should-retry": "false"
                },
                "type": "server_error"
              }
            ],
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed content URL"
                }
              ],
              "dedicated_method_polling_or_cancel": false,
              "mode": "synchronous_result_then_owned_library",
              "original_POST_adds_task_envelope": false,
              "status": [
                {
                  "http": "GET",
                  "id_source": "exact task_id from an existing owned media record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Conservez la valeur réelle de X-Client-Request-ID et la réponse complète. Consultez les ressources d’origine vous appartenant et leurs URL signées exactes de contenu ; ne soumettez jamais à nouveau une création incertaine."
            },
            "outputs": {
              "all_results": "Conservez la réponse complète et les en-têtes, chaque sortie effective, les identifiants initialement renvoyés et tous les champs d’utilisation. Récupérez l’opération d’origine sans soumettre à nouveau sa création.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Corps complet de la réponse d’origine, statut et en-têtes transmis. Ce gestionnaire n’ajoute aucune structure JSON universelle, aucun champ texte ni aucune enveloppe de tâche."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "elevenlabs/scribe-v2-medical"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "input_audio",
                "required": true,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input_audio": {
                  "properties": {
                    "data": {
                      "contentEncoding": "base64",
                      "type": "string"
                    },
                    "format": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "data",
                    "format"
                  ],
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "elevenlabs/scribe-v2-medical"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input_audio"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": true,
              "body": {
                "input_audio": {
                  "data": "${BASE64_ACTUAL_WAV_BYTES}",
                  "format": "wav"
                },
                "model": "elevenlabs/scribe-v2-medical"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "L’exemple lit votre fichier PCM WAV réel et non vide, encode l’intégralité de ses octets en base64 et définit input_audio.format sur wav pour l’envoi."
            ],
            "material_types": [
              "audio"
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed content URL"
              }
            ],
            "dedicated_method_polling_or_cancel": false,
            "mode": "synchronous_result_then_owned_library",
            "original_POST_adds_task_envelope": false,
            "status": [
              {
                "http": "GET",
                "id_source": "task_id exact provenant d’un enregistrement média existant vous appartenant",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain the actual X-Client-Request-ID and complete response. Read the original owned assets and their exact signed content URLs; never resubmit an uncertain creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "text",
            "fields": [
              {
                "description": null,
                "name": "text (when present)",
                "type": null
              },
              {
                "description": null,
                "name": "usage (when present)",
                "type": null
              }
            ],
            "result": "Complete original response body, status and forwarded headers. No universal JSON shape, text field or task envelope is added by this handler."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0001222222222222",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0001222222222222",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()\nif not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):\n    raise SystemExit('Supply your actual PCM WAV audio file')\nwith wave.open(io.BytesIO(audio), 'rb') as recording:\n    if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:\n        raise SystemExit('Supply a nonempty PCM WAV recording')\nrequest = {'model': 'elevenlabs/scribe-v2-medical', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}\nPath('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n",
            "label": "curl · actual WAV file and complete original result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "The example reads your actual nonempty PCM WAV file, encodes the complete file bytes as base64 and sends input_audio.format as wav.",
          "The format value in the example is the documented recipe; no model-specific format list, limit or default is asserted.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "Transcription audio",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_transcriptions",
        "out": null,
        "output": [
          "text"
        ],
        "path": "/v1/audio/transcriptions",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_second": 0.0001222222222222
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0001222222222222",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0001222222222222",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "request_model_id": "elevenlabs/scribe-v2-medical",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.0001222222222222",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.0001222222222222",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ]
      }
    }
  ],
  "model_id": "elevenlabs/scribe-v2-medical",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "49efcc8dbebbcbded9649c115311244069355a18d44125499b4c0d07a3f72939",
    "input_html_sha256": "52ebdca0c465d3c4fb617229b89a623b516854e0d8883a7ce56401e479260403",
    "private_audit_sha256": "f5e11be67389f01c486b4ac9ad3e0619f2600f98a25ff7d0c4a6ae781a37c08e",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/fr/elevenlabs-scribe-v2-medical/",
    "description": "ElevenLabs Scribe v2 Medical transcrit les enregistrements audio cliniques avec un vocabulaire adapté aux noms de médicaments, à l’anatomie et à la pathologie. Il prend en charge plus de 90 langues, le minutage des mots, la diarisation des locuteurs et les termes clés contextuels. Sa sortie est un brouillon de transcription à relire pour la documentation, plutôt qu’une interprétation clinique.",
    "locale": "fr",
    "md_url": "https://ailoot.ai/models/fr/elevenlabs-scribe-v2-medical/index.md",
    "title": "ElevenLabs: Scribe v2 Medical — Ailoot",
    "url": "https://ailoot.ai/models/fr/elevenlabs-scribe-v2-medical/"
  },
  "rawModel": {
    "about": "ElevenLabs Scribe v2 Medical est l’édition de reconnaissance vocale par lots spécialisée dans l’audio médical et clinique. Il s’agit d’une version ajustée de Scribe v2, dont la reconnaissance cible les noms de médicaments, l’anatomie, la pathologie et la dictée clinique, tout en conservant le processus général de transcription vocale. Elle transforme l’enregistrement fourni en brouillon de texte avec minutage et annotations facultatives des locuteurs. Les usages prévus par le concepteur sont la documentation et les processus administratifs associés, avec relecture et correction du texte avant utilisation.\n\nLes entrées utiles comprennent un enregistrement de conversation entre soignant et patient, une dictée orale, un appel d’admission ou une discussion de coordination des soins. Préservez l’enregistrement original et suffisamment de parole environnante pour distinguer un terme en contexte. Évitez l’écrêtage et gardez séparés les canaux de locuteurs significatifs lorsque la source les fournit. L’interface de transcription par lots commune du producteur accepte les formats audio courants comme WAV, MP3, FLAC et M4A. L’adaptation à la terminologie médicale renforce la spécialisation de la tâche ; elle ne reconstitue pas une partie clairement manquante ou inaudible de l’enregistrement.\n\nLe fabricant documente la même prise en charge de plus de 90 langues que Scribe v2. Ses informations publiques sur la transcription médicale indiquent que les améliorations de précision médicale ont été mesurées en anglais, français et allemand. Ces résultats n’établissent pas des performances égales sur les termes spécialisés dans toutes les langues prises en charge. Fournissez la langue connue lorsque c’est utile, conservez les noms et termes d’alternance linguistique, et vérifiez le vocabulaire clinique rare dans l’audio réel plutôt que de l’accepter parce que la phrase est fluide.\n\nLa sortie de transcription contient le texte reconnu et les mots minutés, avec des libellés de locuteur et des étiquettes d’événements audio facultatifs. Les heures de début et de fin des mots permettent de revenir à un nom de médicament, à une quantité prononcée ou à une correction dans l’enregistrement. Un livrable de dictée utile est donc une transcription accompagnée de son enregistrement aligné sur les mots. Relisez les détails sensibles dans leur contexte oral complet, notamment les négations, l’incertitude et la différence entre un propos rapporté par le patient et une affirmation du soignant.\n\nPour une consultation enregistrée en ambiance, la diarisation aide à organiser qui a parlé et quand. Traitez un libellé déduit comme un regroupement de parole, puis associez-le à des rôles ou identités connus à l’aide du dossier de consultation. Les voix qui se chevauchent ou se ressemblent nécessitent une attention particulière lors de la relecture des changements de tour. Si chaque canal d’enregistrement contient un seul locuteur, l’interface par lots commune propose aussi une transcription indépendante des canaux. Distinguez l’attribution par canal de la diarisation déduite d’un audio mixé, et conservez la disposition source lorsqu’elle aide à relire le résultat.\n\nLe guidage par termes clés fournit des mots ou expressions pertinents pour orienter la reconnaissance à l’aide du contexte. Préparez un glossaire ciblé à partir de la terminologie réelle attendue dans l’enregistrement, avec les orthographes et abréviations importantes pour la documentation. Le guide par lots du concepteur autorise jusqu’à 1 000 termes clés ; ils doivent être courts et pertinents, plutôt qu’un vocabulaire exhaustif sans rapport. Examinez les termes importants à leurs horodatages. Un terme clé fourni est un indice de reconnaissance, non une preuve que le mot a été prononcé, ni une instruction de remplacer un autre terme audible.\n\nLe concepteur documente une détection facultative des entités, incluant certaines catégories d’informations de santé, avec la transcription. Ces annotations peuvent aider un processus de relecture autorisé à trouver les segments pertinents pour correction ou traitement. L’interface par lots commune propose aussi un masquage des entités, qui remplace le texte détecté par des libellés ; il exige la détection des entités, et la liste d’entités est omise lorsque le masquage est activé. Conservez le texte renvoyé et le minutage avec les annotations présentes dans le résultat choisi. Une modification, synthèse ou extraction en aval est une transformation distincte de la transcription et doit préserver le lien avec la formulation enregistrée. Par exemple, une phrase remise au propre ne doit pas effacer une correction orale ni transformer une déclaration incertaine en constat certain.\n\nLa tâche définie de l’édition médicale est la transcription. Le fabricant exclut explicitement de sa finalité l’interprétation des informations cliniques, le diagnostic, les recommandations de traitement et l’aide à la décision clinique. Pour un processus documentaire achevé, le professionnel de santé concerné ou un relecteur autorisé vérifie le brouillon dans l’enregistrement et corrige les erreurs importantes. Le modèle fournit l’enregistrement textuel pour soutenir ce travail ; la transcription elle-même n’établit pas l’exactitude d’une affirmation clinique et ne remplace pas la relecture.\n\nGardez claire la distinction d’édition lorsque vous préparez une tâche. Scribe v2 Medical traite l’audio enregistré ; Scribe v2 Realtime est le modèle distinct de transcription en direct. Une version ajustée médicale n’hérite pas des limites ou capacités de synthèse vocale au seul motif que le même concepteur propose des produits vocaux. Le résultat utile est un brouillon de transcription relu, avec minutage et informations de locuteur adaptés à l’enregistrement, laissant visibles les détails inaudibles ou incertains à corriger plutôt que de les remplir silencieusement avec un langage clinique plausible.",
    "alias_of": null,
    "aliases": [],
    "author": "ElevenLabs",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "audio"
      ],
      "manufacturer_output": [
        "transcription"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.0001222222222222",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.0001222222222222",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ],
        "summary": "La tarification complète de la configuration figure dans les détails."
      }
    ],
    "ctx": null,
    "formats": [
      "transcriptions"
    ],
    "id": "elevenlabs/scribe-v2-medical",
    "input": [
      "audio"
    ],
    "kind": "audio",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "errors": [
              {
                "code": null,
                "condition": "Le corps JSON ou l’identifiant canonique explicite du modèle n’est pas valide.",
                "http_status": 400,
                "recovery": "Conservez la réponse et corrigez le champ de requête indiqué.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "La clé API Ailoot n’est pas valide.",
                "http_status": 401,
                "recovery": "Utilisez votre clé API Ailoot autorisée.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Le groupe de la clé n’autorise pas cette méthode.",
                "http_status": 403,
                "recovery": "Conservez les détails de l’erreur renvoyés.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "La méthode sélectionnée ne dispose d’aucune route autorisée.",
                "http_status": 404,
                "recovery": "Conservez les détails de l’erreur renvoyés.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Le tarif accepté ne permet pas d’obtenir la quantité d’entrée ou la borne requise.",
                "http_status": 422,
                "recovery": "Conservez la réponse ; utilisez la représentation d’entrée requise par le tarif accepté.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Le stockage, la route, le tarif de la méthode ou la réservation requis ne sont pas disponibles.",
                "http_status": 503,
                "recovery": "Conservez la réponse d’origine complète. Une réservation incertaine n’autorise pas une nouvelle soumission.",
                "type": null
              },
              {
                "code": null,
                "condition": "Le résultat d’origine, l’utilisation ou le règlement nécessite une vérification.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Conservez l’identifiant réel de la requête et la réponse d’origine. Consultez l’enregistrement existant vous appartenant ; ne soumettez pas à nouveau la création.",
                "response_headers": {
                  "x-should-retry": "false"
                },
                "type": "server_error"
              }
            ],
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed content URL"
                }
              ],
              "dedicated_method_polling_or_cancel": false,
              "mode": "synchronous_result_then_owned_library",
              "original_POST_adds_task_envelope": false,
              "status": [
                {
                  "http": "GET",
                  "id_source": "exact task_id from an existing owned media record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Conservez la valeur réelle de X-Client-Request-ID et la réponse complète. Consultez les ressources d’origine vous appartenant et leurs URL signées exactes de contenu ; ne soumettez jamais à nouveau une création incertaine."
            },
            "outputs": {
              "all_results": "Conservez la réponse complète et les en-têtes, chaque sortie effective, les identifiants initialement renvoyés et tous les champs d’utilisation. Récupérez l’opération d’origine sans soumettre à nouveau sa création.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Corps complet de la réponse d’origine, statut et en-têtes transmis. Ce gestionnaire n’ajoute aucune structure JSON universelle, aucun champ texte ni aucune enveloppe de tâche."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "elevenlabs/scribe-v2-medical"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "input_audio",
                "required": true,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input_audio": {
                  "properties": {
                    "data": {
                      "contentEncoding": "base64",
                      "type": "string"
                    },
                    "format": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "data",
                    "format"
                  ],
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "elevenlabs/scribe-v2-medical"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input_audio"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": true,
              "body": {
                "input_audio": {
                  "data": "${BASE64_ACTUAL_WAV_BYTES}",
                  "format": "wav"
                },
                "model": "elevenlabs/scribe-v2-medical"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "L’exemple lit votre fichier PCM WAV réel et non vide, encode l’intégralité de ses octets en base64 et définit input_audio.format sur wav pour l’envoi."
            ],
            "material_types": [
              "audio"
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed content URL"
              }
            ],
            "dedicated_method_polling_or_cancel": false,
            "mode": "synchronous_result_then_owned_library",
            "original_POST_adds_task_envelope": false,
            "status": [
              {
                "http": "GET",
                "id_source": "task_id exact provenant d’un enregistrement média existant vous appartenant",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain the actual X-Client-Request-ID and complete response. Read the original owned assets and their exact signed content URLs; never resubmit an uncertain creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "text",
            "fields": [
              {
                "description": null,
                "name": "text (when present)",
                "type": null
              },
              {
                "description": null,
                "name": "usage (when present)",
                "type": null
              }
            ],
            "result": "Complete original response body, status and forwarded headers. No universal JSON shape, text field or task envelope is added by this handler."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0001222222222222",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0001222222222222",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()\nif not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):\n    raise SystemExit('Supply your actual PCM WAV audio file')\nwith wave.open(io.BytesIO(audio), 'rb') as recording:\n    if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:\n        raise SystemExit('Supply a nonempty PCM WAV recording')\nrequest = {'model': 'elevenlabs/scribe-v2-medical', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}\nPath('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n",
            "label": "curl · actual WAV file and complete original result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "The example reads your actual nonempty PCM WAV file, encodes the complete file bytes as base64 and sends input_audio.format as wav.",
          "The format value in the example is the documented recipe; no model-specific format list, limit or default is asserted.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "Transcription audio",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_transcriptions",
        "out": null,
        "output": [
          "text"
        ],
        "path": "/v1/audio/transcriptions",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_second": 0.0001222222222222
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0001222222222222",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0001222222222222",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "request_model_id": "elevenlabs/scribe-v2-medical",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.0001222222222222",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.0001222222222222",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "elevenlabs/scribe-v2-medical",
        "request_model_id": "elevenlabs/scribe-v2-medical",
        "route_label": "Ultra"
      }
    ],
    "name": "ElevenLabs: Scribe v2 Medical",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "short": "ElevenLabs Scribe v2 Medical transcrit les enregistrements audio cliniques avec un vocabulaire adapté aux noms de médicaments, à l’anatomie et à la pathologie. Il prend en charge plus de 90 langues, le minutage des mots, la diarisation des locuteurs et les termes clés contextuels. Sa sortie est un brouillon de transcription à relire pour la documentation, plutôt qu’une interprétation clinique."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "ElevenLabs Scribe v2 Medical transcrit les enregistrements audio cliniques avec un vocabulaire adapté aux noms de médicaments, à l’anatomie et à la pathologie. Il prend en charge plus de 90 langues, le minutage des mots, la diarisation des locuteurs et les termes clés contextuels. Sa sortie est un brouillon de transcription à relire pour la documentation, plutôt qu’une interprétation clinique.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "be4de8fbbb64501c6aed5d7dc4e0139ee2b8415c229604002660d2b0a040c0a1",
    "renderer_sha256": "44d2db1deadc475e1793597083716540bae7bbc53606f05f58780fec5f115dd4"
  },
  "sourceRevision": "c6051ac8e16dd86fa130c5b4e290204423201bdb26bb2ab6e1e8ec2fc805aa80"
}
