{
  "aboutHtml": "<p>GPT-4o Transcribe Diarize ist OpenAIs Modell zur automatischen Spracherkennung mit integrierter Sprechertrennung. Es ordnet transkribierte Audiosegmente verschiedenen Sprechern eines Gesprächs zu. Das nützliche Ergebnis ist ein nach Sprecher und Zeit gegliedertes Transkript statt eines einzigen fortlaufenden Textblocks. Es ist für aufgezeichnete Sprache gedacht, die Sprecherkennzeichnungen benötigt, etwa eine Besprechung, ein Interview oder eine Diskussion mit mehreren Personen.</p><h4>Die abgeschlossene Aufnahme vorbereiten</h4><p>Stellen Sie die zu transkribierende Aufnahme bereit. Der dokumentierte Dateiablauf akzeptiert MP3, MP4, MPEG, MPGA, M4A, WAV und WebM mit einer Dateigrößengrenze von 25 MB. Halten Sie die Originalaufnahme verfügbar, damit sich ein Sprecherwechsel, Name oder eine unklare Formulierung anhand des tatsächlichen Audios prüfen lässt.</p><p>Erhalten Sie bei einer Besprechung den Gesprächsverlauf, statt kurze Pausen herauszuschneiden, die beim Unterscheiden von Sprecherwechseln helfen. Lassen Sie bei einem Interview Frage und Antwort zusammen, wenn deren Beziehung für die Aufgabe wichtig ist. Die Audiovorbereitung sollte die Sprache hörbar machen, ohne Informationen zu entfernen, die für das Ergebnis mit Sprecherkennzeichnungen wichtig sind.</p><p>Dies ist ein Ablauf zur Dateitranskription. Eine abgeschlossene Aufnahme zu verarbeiten und einen noch eintreffenden Audiostream zu erkennen sind unterschiedliche Aufgaben. Die Sprecherkennzeichnung des Modells wird in Realtime-Transkriptionssitzungen nicht unterstützt.</p><h4>Ein Transkript mit Sprecherkennzeichnungen anfordern</h4><p>Das Ergebnisformat <code>diarized_json</code> gibt Segmente mit Sprecherkennzeichnungen sowie Start- und Endzeiten zurück. Jedes Segment enthält außerdem seinen transkribierten Text. Halten Sie diese Felder zusammen, damit sich die Wörter mit dem relevanten Teil der Aufnahme verbinden lassen.</p><p>Bewahren Sie für ein brauchbares Besprechungstranskript die Segmentreihenfolge und zeigen Sie die Wörter jedes Sprechers mit ihren Zeitangaben an. Eine spätere Aufgabe kann daraus ein Protokoll oder Aufgabenpunkte erstellen. Die Sprechertrennung selbst entscheidet jedoch weder, was in der Besprechung vereinbart wurde, noch erzeugt sie eine geprüfte Zusammenfassung.</p><p>Sprecherkennzeichnungen beschreiben, wie das Modell die gesprochenen Beiträge gruppiert. Prüfen Sie Übergänge, an denen Personen einander unterbrechen, nur kurz sprechen oder gleichzeitig sprechen. Ein gut strukturiertes Ergebnis erleichtert Navigation und Prüfung; eine bestimmte Zuordnung kann dennoch das Anhören des Originalaudios erfordern.</p><h4>Referenzen bekannter Sprecher</h4><p>Der dokumentierte Ablauf kann bis zu vier benannte Sprecherreferenzen entgegennehmen. Jede Referenz ist ein kurzer Audioclip von 2–10 Sekunden in einem vom Hauptupload unterstützten Format. Namen und Referenzen werden zusammen bereitgestellt, damit Segmente bekannten Sprechern zugeordnet werden können.</p><p>Bereiten Sie eine Referenz vor, in der der beabsichtigte Sprecher klar zu hören ist, und verwenden Sie den Namen einheitlich entsprechend den gewünschten Kennzeichnungen im Transkript. Bei einem Interview kann eine Referenz für den Moderator helfen, das Ergebnis nach Sprechern zu gliedern, ohne jedem Teilnehmer nur eine anonyme Kennzeichnung zu geben. Die Referenz dient als Eingabe für die Zuordnung; sie ist weder ein allgemeines Verfahren zum Stimmenklonen noch ein Identitätsnachweis einer Person.</p><p>Verwechseln Sie die Benennung eines Sprechers nicht mit einer Änderung der gesprochenen Wörter. Die nützliche Ausgabe muss weiterhin den Inhalt der Aufnahme und die tatsächliche Reihenfolge der Beiträge erhalten.</p><h4>Aufteilung und Modellgrenzen</h4><p>Für Audio von mehr als 30 Sekunden verlangt der Hersteller eine Aufteilungsstrategie: entweder automatische Aufteilung oder eine Konfiguration zur Erkennung von Sprachaktivität. Diese Anforderung ist keine maximale Aufnahmedauer. Sie beschreibt, wie längere Eingaben zur Verarbeitung aufgeteilt werden.</p><p>Die Modellkarte nennt ein Kontextfenster von 16.000 Token und maximal 2.000 Ausgabetoken. Diese Modellgrenzen sind von der Uploadgrenze von 25 MB und dem Schwellenwert für die Aufteilung getrennt. Daraus darf keine erfundene Minutenzahl abgeleitet werden, die für jede Aufnahme gelten soll.</p><p>Erhalten Sie Zeitangaben und Segmentidentität, wenn Sie ein längeres Transkript zusammensetzen oder prüfen. Wurde eine Aufnahme vor der Übermittlung geteilt, bewahren Sie die Beziehung jedes Teils zum Originalaudio, damit ein lokaler Zeitstempel nicht mit seiner Position im vollständigen Gespräch verwechselt wird.</p><h4>Abgeschlossene Segmente streamen</h4><p>Der Ablauf zur Dateitranskription kann während der Verarbeitung Text streamen. Beim Streaming mit Sprecherkennzeichnungen erzeugen abgeschlossene Segmente Segmentereignisse. Textdeltas enthalten eine Segmentkennung, aber keine vorläufigen Sprecherzuordnungen. Ein Sprecher wird zugeordnet, sobald das Segment abgeschlossen ist.</p><p>Diese Unterscheidung ist für die Darstellung wichtig. Zeigen Sie vorläufigen Text und einen abgeschlossenen Sprecherbeitrag als unterschiedliche Zustände an, statt eine unsichere Sprecherkennzeichnung anzufügen, bevor das Modell das Segment abgeschlossen hat. Bewahren Sie das fertige Ergebnis auf, wenn das Transkript später bearbeitet oder analysiert werden soll.</p><h4>Modell- und Ausgabegrenzen</h4><p>Dieses Profil ist das Modell zur Sprechertrennung, getrennt von gewöhnlicher GPT-4o-Transkription, Mini-Transkription, Sprachsynthese und Modellen für Livegespräche. Es unterstützt keine Transkriptionsprompts. Behandeln Sie eine Terminologieprüfung oder -korrektur als separaten Schritt, der anhand des Originalaudios geprüft wird. Seine Herstellerschnittstelle transkribiert aufgezeichnetes Audio in Text. Es erzeugt keine Audioantwort und übersetzt eine Aufnahme nicht über den separaten Ablauf zur Audioübersetzung.</p><p>Nutzen Sie es für Transkripte, die sowohl Inhalt als auch eine Sprecherstruktur benötigen. Prüfen Sie Namen, Fachbegriffe, Zahlen, Sprecherwechsel und Zuordnungen anhand der Aufnahme. Bewahren Sie Audio, gewähltes Ergebnisformat, Referenzen und fertiges Transkript auf, damit eine Korrektur eine konkrete Formulierung oder Sprecherzuordnung betreffen kann.</p>",
  "aboutText": "GPT-4o Transcribe Diarize ist OpenAIs Modell zur automatischen Spracherkennung mit integrierter Sprechertrennung. Es ordnet transkribierte Audiosegmente verschiedenen Sprechern eines Gesprächs zu. Das nützliche Ergebnis ist ein nach Sprecher und Zeit gegliedertes Transkript statt eines einzigen fortlaufenden Textblocks. Es ist für aufgezeichnete Sprache gedacht, die Sprecherkennzeichnungen benötigt, etwa eine Besprechung, ein Interview oder eine Diskussion mit mehreren Personen.\n\n### Die abgeschlossene Aufnahme vorbereiten\n\nStellen Sie die zu transkribierende Aufnahme bereit. Der dokumentierte Dateiablauf akzeptiert MP3, MP4, MPEG, MPGA, M4A, WAV und WebM mit einer Dateigrößengrenze von 25 MB. Halten Sie die Originalaufnahme verfügbar, damit sich ein Sprecherwechsel, Name oder eine unklare Formulierung anhand des tatsächlichen Audios prüfen lässt.\n\nErhalten Sie bei einer Besprechung den Gesprächsverlauf, statt kurze Pausen herauszuschneiden, die beim Unterscheiden von Sprecherwechseln helfen. Lassen Sie bei einem Interview Frage und Antwort zusammen, wenn deren Beziehung für die Aufgabe wichtig ist. Die Audiovorbereitung sollte die Sprache hörbar machen, ohne Informationen zu entfernen, die für das Ergebnis mit Sprecherkennzeichnungen wichtig sind.\n\nDies ist ein Ablauf zur Dateitranskription. Eine abgeschlossene Aufnahme zu verarbeiten und einen noch eintreffenden Audiostream zu erkennen sind unterschiedliche Aufgaben. Die Sprecherkennzeichnung des Modells wird in Realtime-Transkriptionssitzungen nicht unterstützt.\n\n### Ein Transkript mit Sprecherkennzeichnungen anfordern\n\nDas Ergebnisformat `diarized_json` gibt Segmente mit Sprecherkennzeichnungen sowie Start- und Endzeiten zurück. Jedes Segment enthält außerdem seinen transkribierten Text. Halten Sie diese Felder zusammen, damit sich die Wörter mit dem relevanten Teil der Aufnahme verbinden lassen.\n\nBewahren Sie für ein brauchbares Besprechungstranskript die Segmentreihenfolge und zeigen Sie die Wörter jedes Sprechers mit ihren Zeitangaben an. Eine spätere Aufgabe kann daraus ein Protokoll oder Aufgabenpunkte erstellen. Die Sprechertrennung selbst entscheidet jedoch weder, was in der Besprechung vereinbart wurde, noch erzeugt sie eine geprüfte Zusammenfassung.\n\nSprecherkennzeichnungen beschreiben, wie das Modell die gesprochenen Beiträge gruppiert. Prüfen Sie Übergänge, an denen Personen einander unterbrechen, nur kurz sprechen oder gleichzeitig sprechen. Ein gut strukturiertes Ergebnis erleichtert Navigation und Prüfung; eine bestimmte Zuordnung kann dennoch das Anhören des Originalaudios erfordern.\n\n### Referenzen bekannter Sprecher\n\nDer dokumentierte Ablauf kann bis zu vier benannte Sprecherreferenzen entgegennehmen. Jede Referenz ist ein kurzer Audioclip von 2–10 Sekunden in einem vom Hauptupload unterstützten Format. Namen und Referenzen werden zusammen bereitgestellt, damit Segmente bekannten Sprechern zugeordnet werden können.\n\nBereiten Sie eine Referenz vor, in der der beabsichtigte Sprecher klar zu hören ist, und verwenden Sie den Namen einheitlich entsprechend den gewünschten Kennzeichnungen im Transkript. Bei einem Interview kann eine Referenz für den Moderator helfen, das Ergebnis nach Sprechern zu gliedern, ohne jedem Teilnehmer nur eine anonyme Kennzeichnung zu geben. Die Referenz dient als Eingabe für die Zuordnung; sie ist weder ein allgemeines Verfahren zum Stimmenklonen noch ein Identitätsnachweis einer Person.\n\nVerwechseln Sie die Benennung eines Sprechers nicht mit einer Änderung der gesprochenen Wörter. Die nützliche Ausgabe muss weiterhin den Inhalt der Aufnahme und die tatsächliche Reihenfolge der Beiträge erhalten.\n\n### Aufteilung und Modellgrenzen\n\nFür Audio von mehr als 30 Sekunden verlangt der Hersteller eine Aufteilungsstrategie: entweder automatische Aufteilung oder eine Konfiguration zur Erkennung von Sprachaktivität. Diese Anforderung ist keine maximale Aufnahmedauer. Sie beschreibt, wie längere Eingaben zur Verarbeitung aufgeteilt werden.\n\nDie Modellkarte nennt ein Kontextfenster von 16.000 Token und maximal 2.000 Ausgabetoken. Diese Modellgrenzen sind von der Uploadgrenze von 25 MB und dem Schwellenwert für die Aufteilung getrennt. Daraus darf keine erfundene Minutenzahl abgeleitet werden, die für jede Aufnahme gelten soll.\n\nErhalten Sie Zeitangaben und Segmentidentität, wenn Sie ein längeres Transkript zusammensetzen oder prüfen. Wurde eine Aufnahme vor der Übermittlung geteilt, bewahren Sie die Beziehung jedes Teils zum Originalaudio, damit ein lokaler Zeitstempel nicht mit seiner Position im vollständigen Gespräch verwechselt wird.\n\n### Abgeschlossene Segmente streamen\n\nDer Ablauf zur Dateitranskription kann während der Verarbeitung Text streamen. Beim Streaming mit Sprecherkennzeichnungen erzeugen abgeschlossene Segmente Segmentereignisse. Textdeltas enthalten eine Segmentkennung, aber keine vorläufigen Sprecherzuordnungen. Ein Sprecher wird zugeordnet, sobald das Segment abgeschlossen ist.\n\nDiese Unterscheidung ist für die Darstellung wichtig. Zeigen Sie vorläufigen Text und einen abgeschlossenen Sprecherbeitrag als unterschiedliche Zustände an, statt eine unsichere Sprecherkennzeichnung anzufügen, bevor das Modell das Segment abgeschlossen hat. Bewahren Sie das fertige Ergebnis auf, wenn das Transkript später bearbeitet oder analysiert werden soll.\n\n### Modell- und Ausgabegrenzen\n\nDieses Profil ist das Modell zur Sprechertrennung, getrennt von gewöhnlicher GPT-4o-Transkription, Mini-Transkription, Sprachsynthese und Modellen für Livegespräche. Es unterstützt keine Transkriptionsprompts. Behandeln Sie eine Terminologieprüfung oder -korrektur als separaten Schritt, der anhand des Originalaudios geprüft wird. Seine Herstellerschnittstelle transkribiert aufgezeichnetes Audio in Text. Es erzeugt keine Audioantwort und übersetzt eine Aufnahme nicht über den separaten Ablauf zur Audioübersetzung.\n\nNutzen Sie es für Transkripte, die sowohl Inhalt als auch eine Sprecherstruktur benötigen. Prüfen Sie Namen, Fachbegriffe, Zahlen, Sprecherwechsel und Zuordnungen anhand der Aufnahme. Bewahren Sie Audio, gewähltes Ergebnisformat, Referenzen und fertiges Transkript auf, damit eine Korrektur eine konkrete Formulierung oder Sprecherzuordnung betreffen kann.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "0acff028e95f1a1b069dd20f028d54535d235b99ce68d790d829bf5245295d94",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "de",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">O</span><h2 id=\"sheet-title\">gpt-4o-transcribe-diarize</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Schließen\">×</button></div><div class=\"idline\"><span>OpenAI /</span><code>openai/gpt-4o-transcribe-diarize</code><button type=\"button\" id=\"copy-id\">ID kopieren</button></div><nav class=\"card-jump-nav\" aria-label=\"Bereiche der Modellkarte\"><button type=\"button\" data-card-jump=\"overview\">Start</button><button type=\"button\" data-card-jump=\"methods\">Eingaben und Methoden</button><button type=\"button\" data-card-jump=\"pricing\">Tarife</button><button type=\"button\" data-card-jump=\"examples\">Beispiele</button><button type=\"button\" data-card-jump=\"results\">Ergebnisse</button><button type=\"button\" data-card-jump=\"aliases\">Aliasnamen</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API-Methoden\"><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|openai%2Fgpt-4o-transcribe-diarize\">Erkennung</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\">Start</h3><p class=\"mdesc-full\">GPT-4o Transcribe Diarize wandelt aufgezeichnete Sprache in Text mit Sprecherkennzeichnungen und Zeitangaben pro Segment um. Es eignet sich für Besprechungen, Interviews und Aufnahmen mit mehreren Personen, deren Transkript zeigen muss, wer wann gesprochen hat. Für bekannte Sprecher sind kurze Stimmreferenzen optional möglich.</p><dl class=\"card-io\" data-card-io><div><dt>Zulässige Eingaben</dt><dd>Audio</dd></div><div><dt>Ergebnisse</dt><dd>transcription</dd></div></dl><details class=\"card-about\"><summary>Über das Modell</summary><p class=\"note-s\" data-model-method-boundary>Diese Beschreibung erläutert die Fähigkeiten des Modells. Die über Ailoot verfügbaren Eingaben, Ausgaben und Optionen sind unten für die ausgewählte Methode aufgeführt.</p><div class=\"mabout\" id=\"m-about\"><p>GPT-4o Transcribe Diarize ist OpenAIs Modell zur automatischen Spracherkennung mit integrierter Sprechertrennung. Es ordnet transkribierte Audiosegmente verschiedenen Sprechern eines Gesprächs zu. Das nützliche Ergebnis ist ein nach Sprecher und Zeit gegliedertes Transkript statt eines einzigen fortlaufenden Textblocks. Es ist für aufgezeichnete Sprache gedacht, die Sprecherkennzeichnungen benötigt, etwa eine Besprechung, ein Interview oder eine Diskussion mit mehreren Personen.</p><h4>Die abgeschlossene Aufnahme vorbereiten</h4><p>Stellen Sie die zu transkribierende Aufnahme bereit. Der dokumentierte Dateiablauf akzeptiert MP3, MP4, MPEG, MPGA, M4A, WAV und WebM mit einer Dateigrößengrenze von 25 MB. Halten Sie die Originalaufnahme verfügbar, damit sich ein Sprecherwechsel, Name oder eine unklare Formulierung anhand des tatsächlichen Audios prüfen lässt.</p><p>Erhalten Sie bei einer Besprechung den Gesprächsverlauf, statt kurze Pausen herauszuschneiden, die beim Unterscheiden von Sprecherwechseln helfen. Lassen Sie bei einem Interview Frage und Antwort zusammen, wenn deren Beziehung für die Aufgabe wichtig ist. Die Audiovorbereitung sollte die Sprache hörbar machen, ohne Informationen zu entfernen, die für das Ergebnis mit Sprecherkennzeichnungen wichtig sind.</p><p>Dies ist ein Ablauf zur Dateitranskription. Eine abgeschlossene Aufnahme zu verarbeiten und einen noch eintreffenden Audiostream zu erkennen sind unterschiedliche Aufgaben. Die Sprecherkennzeichnung des Modells wird in Realtime-Transkriptionssitzungen nicht unterstützt.</p><h4>Ein Transkript mit Sprecherkennzeichnungen anfordern</h4><p>Das Ergebnisformat <code>diarized_json</code> gibt Segmente mit Sprecherkennzeichnungen sowie Start- und Endzeiten zurück. Jedes Segment enthält außerdem seinen transkribierten Text. Halten Sie diese Felder zusammen, damit sich die Wörter mit dem relevanten Teil der Aufnahme verbinden lassen.</p><p>Bewahren Sie für ein brauchbares Besprechungstranskript die Segmentreihenfolge und zeigen Sie die Wörter jedes Sprechers mit ihren Zeitangaben an. Eine spätere Aufgabe kann daraus ein Protokoll oder Aufgabenpunkte erstellen. Die Sprechertrennung selbst entscheidet jedoch weder, was in der Besprechung vereinbart wurde, noch erzeugt sie eine geprüfte Zusammenfassung.</p><p>Sprecherkennzeichnungen beschreiben, wie das Modell die gesprochenen Beiträge gruppiert. Prüfen Sie Übergänge, an denen Personen einander unterbrechen, nur kurz sprechen oder gleichzeitig sprechen. Ein gut strukturiertes Ergebnis erleichtert Navigation und Prüfung; eine bestimmte Zuordnung kann dennoch das Anhören des Originalaudios erfordern.</p><h4>Referenzen bekannter Sprecher</h4><p>Der dokumentierte Ablauf kann bis zu vier benannte Sprecherreferenzen entgegennehmen. Jede Referenz ist ein kurzer Audioclip von 2–10 Sekunden in einem vom Hauptupload unterstützten Format. Namen und Referenzen werden zusammen bereitgestellt, damit Segmente bekannten Sprechern zugeordnet werden können.</p><p>Bereiten Sie eine Referenz vor, in der der beabsichtigte Sprecher klar zu hören ist, und verwenden Sie den Namen einheitlich entsprechend den gewünschten Kennzeichnungen im Transkript. Bei einem Interview kann eine Referenz für den Moderator helfen, das Ergebnis nach Sprechern zu gliedern, ohne jedem Teilnehmer nur eine anonyme Kennzeichnung zu geben. Die Referenz dient als Eingabe für die Zuordnung; sie ist weder ein allgemeines Verfahren zum Stimmenklonen noch ein Identitätsnachweis einer Person.</p><p>Verwechseln Sie die Benennung eines Sprechers nicht mit einer Änderung der gesprochenen Wörter. Die nützliche Ausgabe muss weiterhin den Inhalt der Aufnahme und die tatsächliche Reihenfolge der Beiträge erhalten.</p><h4>Aufteilung und Modellgrenzen</h4><p>Für Audio von mehr als 30 Sekunden verlangt der Hersteller eine Aufteilungsstrategie: entweder automatische Aufteilung oder eine Konfiguration zur Erkennung von Sprachaktivität. Diese Anforderung ist keine maximale Aufnahmedauer. Sie beschreibt, wie längere Eingaben zur Verarbeitung aufgeteilt werden.</p><p>Die Modellkarte nennt ein Kontextfenster von 16.000 Token und maximal 2.000 Ausgabetoken. Diese Modellgrenzen sind von der Uploadgrenze von 25 MB und dem Schwellenwert für die Aufteilung getrennt. Daraus darf keine erfundene Minutenzahl abgeleitet werden, die für jede Aufnahme gelten soll.</p><p>Erhalten Sie Zeitangaben und Segmentidentität, wenn Sie ein längeres Transkript zusammensetzen oder prüfen. Wurde eine Aufnahme vor der Übermittlung geteilt, bewahren Sie die Beziehung jedes Teils zum Originalaudio, damit ein lokaler Zeitstempel nicht mit seiner Position im vollständigen Gespräch verwechselt wird.</p><h4>Abgeschlossene Segmente streamen</h4><p>Der Ablauf zur Dateitranskription kann während der Verarbeitung Text streamen. Beim Streaming mit Sprecherkennzeichnungen erzeugen abgeschlossene Segmente Segmentereignisse. Textdeltas enthalten eine Segmentkennung, aber keine vorläufigen Sprecherzuordnungen. Ein Sprecher wird zugeordnet, sobald das Segment abgeschlossen ist.</p><p>Diese Unterscheidung ist für die Darstellung wichtig. Zeigen Sie vorläufigen Text und einen abgeschlossenen Sprecherbeitrag als unterschiedliche Zustände an, statt eine unsichere Sprecherkennzeichnung anzufügen, bevor das Modell das Segment abgeschlossen hat. Bewahren Sie das fertige Ergebnis auf, wenn das Transkript später bearbeitet oder analysiert werden soll.</p><h4>Modell- und Ausgabegrenzen</h4><p>Dieses Profil ist das Modell zur Sprechertrennung, getrennt von gewöhnlicher GPT-4o-Transkription, Mini-Transkription, Sprachsynthese und Modellen für Livegespräche. Es unterstützt keine Transkriptionsprompts. Behandeln Sie eine Terminologieprüfung oder -korrektur als separaten Schritt, der anhand des Originalaudios geprüft wird. Seine Herstellerschnittstelle transkribiert aufgezeichnetes Audio in Text. Es erzeugt keine Audioantwort und übersetzt eine Aufnahme nicht über den separaten Ablauf zur Audioübersetzung.</p><p>Nutzen Sie es für Transkripte, die sowohl Inhalt als auch eine Sprecherstruktur benötigen. Prüfen Sie Namen, Fachbegriffe, Zahlen, Sprecherwechsel und Zuordnungen anhand der Aufnahme. Bewahren Sie Audio, gewähltes Ergebnisformat, Referenzen und fertiges Transkript auf, damit eine Korrektur eine konkrete Formulierung oder Sprecherzuordnung betreffen kann.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">In Ailoot verfügbar · Eingaben und Methoden</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Spracherkennung</b> <code>POST /v1/audio/transcriptions</code></summary><dl class=\"method-capabilities\"><div><dt>Eingabetypen</dt><dd><code>audio</code></dd></div><div><dt>Ausgabetypen</dt><dd><code>transcription</code></dd></div><div><dt>Ausgabeformat</dt><dd>json</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Feld</th><th>Typ</th><th>Anforderung</th><th>Werte und Limits</th><th>Standard</th></tr></thead><tbody><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Feld\" scope=\"row\"><span class=\"card-cell-label\">Feld</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>string</code></td><td data-cell-label=\"Anforderung\"><span class=\"card-cell-label\">Anforderung</span>Erforderlich</td><td data-cell-label=\"Werte und Limits\"><span class=\"card-cell-label\">Werte und Limits</span><div>openai/gpt-4o-transcribe-diarize</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Feld\" scope=\"row\"><span class=\"card-cell-label\">Feld</span><code class=\"card-field-name\">file</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>file</code></td><td data-cell-label=\"Anforderung\"><span class=\"card-cell-label\">Anforderung</span>Erforderlich</td><td data-cell-label=\"Werte und Limits\"><span class=\"card-cell-label\">Werte und Limits</span><div>Maximale Anzahl Bytes: 26.214.400</div><div>MIME-Typen: audio/mpeg</div><div>Dateiendung: .mp3</div><div>Maximale Dauer, Sekunden: 30</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Feld\" scope=\"row\"><span class=\"card-cell-label\">Feld</span><code class=\"card-field-name\">response_format</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span><code>string</code></td><td data-cell-label=\"Anforderung\"><span class=\"card-cell-label\">Anforderung</span>Erforderlich</td><td data-cell-label=\"Werte und Limits\"><span class=\"card-cell-label\">Werte und Limits</span><div>diarized_json</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr></tbody></table></div><details class=\"card-about\" data-material-combinations><summary>Kombinationen von Eingabematerialien</summary><p class=\"note-s\"><b>diarized_transcription</b></p></details><details class=\"note-s\" data-method-contract><summary>Methodenparameter und Lebenszyklus</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parameter</th><th>Vertrag</th></tr></thead><tbody><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>content_type</code></th><td data-cell-label=\"Vertrag\"><span class=\"card-cell-label\">Vertrag</span>multipart/form-data</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>required</code></th><td data-cell-label=\"Vertrag\"><span class=\"card-cell-label\">Vertrag</span>model, file, response_format</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>file_formats</code></th><td data-cell-label=\"Vertrag\"><span class=\"card-cell-label\">Vertrag</span>mp3</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>max_audio_seconds</code></th><td data-cell-label=\"Vertrag\"><span class=\"card-cell-label\">Vertrag</span>30</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>max_bytes</code></th><td data-cell-label=\"Vertrag\"><span class=\"card-cell-label\">Vertrag</span>26214400</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>response_format</code></th><td data-cell-label=\"Vertrag\"><span class=\"card-cell-label\">Vertrag</span>diarized_json</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>other_options</code></th><td data-cell-label=\"Vertrag\"><span class=\"card-cell-label\">Vertrag</span>false</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>material_types</code></th><td data-cell-label=\"Vertrag\"><span class=\"card-cell-label\">Vertrag</span>audio</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>additional_properties</code></th><td data-cell-label=\"Vertrag\"><span class=\"card-cell-label\">Vertrag</span>false</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>form_string_maximum_bytes</code></th><td data-cell-label=\"Vertrag\"><span class=\"card-cell-label\">Vertrag</span>256</td></tr></tbody></table></div><p>Methodenaliasnamen: <code>/audio/transcriptions</code></p><p>Lebenszyklus: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · die tatsächlich zurückgegebene task_id oder ein Eintrag in der Medienbibliothek</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><p class=\"note-s\">Verwenden Sie die tatsächliche Aufnahme und das passende Format.</p><p class=\"note-s\">Bewahren Sie das vollständige Transkript, Segmente, Sprecher-IDs und Zeitangaben auf.</p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Tarife</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Tarifangaben erweitern die Anfrageoptionen nicht. Unterstützte Parameter stehen bei der ausgewählten Methode.</p><dl data-price-conditions><dt>Schnellmodus</dt><dd>Nicht angegeben <span class=\"note-s\">Wenn der Schnellmodus ausgewählt ist</span></dd><dt>Flex-Modus</dt><dd>Nicht angegeben <span class=\"note-s\">Wenn der Modus flex ausgewählt ist</span></dd><dt>Maximaler Denkaufwand</dt><dd>Nicht angegeben <span class=\"note-s\">Wenn beim maximalen Denkaufwand die Standardanpassung (default) verwendet wird</span></dd></dl></div><div data-declared-tariff-pricing><h4>Ailoot-Tarife</h4><h4>Preise nach Konfiguration</h4><p class=\"note-s\">Ordnen Sie jede Gebühr den angezeigten Bedingungen zu. Verwenden Sie für jede Gruppe alternativer Konfigurationen einen Tarif.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Konfiguration</th><th>Tarifstaffel</th><th>Abrechnungseinheit</th><th>Gebühr</th></tr></thead><tbody><tr><th data-cell-label=\"Konfiguration\" scope=\"row\"><span class=\"card-cell-label\">Konfiguration</span>Basistarife für Token</th><td data-cell-label=\"Tarifstaffel\"><span class=\"card-cell-label\">Tarifstaffel</span>Grundtarif</td><td data-cell-label=\"Abrechnungseinheit\"><span class=\"card-cell-label\">Abrechnungseinheit</span>—</td><td data-cell-label=\"Gebühr\"><span class=\"card-cell-label\">Gebühr</span><div><span>Eingabe · Eingabetoken</span> <b>—</b> <span class=\"price-unit\">/ 1K Token</span></div><div><span>Ausgabe · Ausgabetoken</span> <b>—</b> <span class=\"price-unit\">/ 1K Token</span></div><div><span>Eingabe · Cache-Lesen</span> <b>—</b> <span class=\"price-unit\">/ 1K Token</span></div><div><span>Eingabe · Cache-Schreiben</span> <b>—</b> <span class=\"price-unit\">/ 1K Token</span></div><div><span>Eingabe · Cache-Schreiben, 1 Stunde</span> <b>—</b> <span class=\"price-unit\">/ 1K Token</span></div></td></tr><tr><th data-cell-label=\"Konfiguration\" scope=\"row\"><span class=\"card-cell-label\">Konfiguration</span>Ultra</th><td data-cell-label=\"Tarifstaffel\"><span class=\"card-cell-label\">Tarifstaffel</span>—</td><td data-cell-label=\"Abrechnungseinheit\"><span class=\"card-cell-label\">Abrechnungseinheit</span>/ 1K Audio-Token</td><td data-cell-label=\"Gebühr\"><span class=\"card-cell-label\">Gebühr</span><div><span>Eingabe · Audioeingabetoken</span> <b>$0.012</b> <span class=\"price-unit\">/ 1K Audio-Token</span></div></td></tr><tr><th data-cell-label=\"Konfiguration\" scope=\"row\"><span class=\"card-cell-label\">Konfiguration</span>Ultra</th><td data-cell-label=\"Tarifstaffel\"><span class=\"card-cell-label\">Tarifstaffel</span>—</td><td data-cell-label=\"Abrechnungseinheit\"><span class=\"card-cell-label\">Abrechnungseinheit</span>/ 1K Audio-Token</td><td data-cell-label=\"Gebühr\"><span class=\"card-cell-label\">Gebühr</span><div><span>Ausgabe · Audioausgabetoken</span> <b>$0.02</b> <span class=\"price-unit\">/ 1K Audio-Token</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot reserviert vor einer Anfrage einen geschätzten Betrag. Nach dem Ergebnis rechnet Ailoot die endgültige Gebühr anhand des gemessenen Verbrauchs ab. Bei Streaming erfolgt die Abrechnung anhand des abschließenden Verbrauchsdatensatzes. <a href=\"/docs/de/billing/reserve/\">So funktionieren Reservierung und Abrechnung →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Beispielanfragen</h3><h4>Ailoot Ultra · Spracherkennung</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Codevarianten\"><button class=\"cg-tab\" id=\"model-code-2050-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2050-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · Erstellungsaufruf exakt wie gespeichert</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Code kopieren\"><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-2050-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2050-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 MP3 recording}&quot;\nexport AILOOT_AUDIO_FILE\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport os\nfrom pathlib import Path\np=Path(os.environ[&quot;AILOOT_AUDIO_FILE&quot;])\nif not p.is_file() or p.suffix.lower()!=&quot;.mp3&quot;:raise SystemExit(&quot;Choose an existing MP3 recording&quot;)\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; \\\n  --form-string model=openai/gpt-4o-transcribe-diarize -F &quot;file=@$AILOOT_AUDIO_FILE&quot; --form-string response_format=diarized_json \\\n  -D response-headers.txt -o result.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(&quot;result.json&quot;).read_text())))\nPY_RESULT\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Ergebnisse abrufen und speichern</h3><h4>Ailoot Ultra · Spracherkennung</h4><p class=\"note-s\">json</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><details class=\"card-about\"><summary>Abrufe anderer Inhalte</summary><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Codevarianten\"><button class=\"cg-tab\" id=\"model-code-2051-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2051-panel-0\" aria-selected=\"true\" tabindex=\"0\">Jedes zurückgegebene eigene Transkript speichern</button><button class=\"cg-tab\" id=\"model-code-2051-tab-1\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2051-panel-1\" aria-selected=\"false\" tabindex=\"-1\">Medienbibliothek</button><button class=\"cg-tab\" id=\"model-code-2051-tab-2\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2051-panel-2\" aria-selected=\"false\" tabindex=\"-1\">Aufgabenstatus</button><button class=\"cg-tab\" id=\"model-code-2051-tab-3\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2051-panel-3\" aria-selected=\"false\" tabindex=\"-1\">Dateidetails</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Code kopieren\"><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-2051-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2051-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\nexport AILOOT_API_KEY\npython3 - &lt;&lt;&#39;PY_ASSETS&#39;\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path(&#39;result.json&#39;).read_text())\nurls=[]\nif isinstance(r.get(&#39;asset_url&#39;),str) and r[&#39;asset_url&#39;]:urls.append((&#39;transcript&#39;,r[&#39;asset_url&#39;]))\nfor label,path in urls:\n    u=urljoin(&#39;https://api.ailoot.ai&#39;,path);z=urlsplit(u)\n    if z.scheme!=&#39;https&#39; or z.netloc!=&#39;api.ailoot.ai&#39; or z.username or z.password:raise SystemExit(&#39;Use the actual returned Ailoot owned content URL&#39;)\n    target=Path(&#39;owned-&#39;+label+&#39;.bin&#39;)\n    subprocess.run([&#39;curl&#39;,&#39;--fail-with-body&#39;,&#39;--silent&#39;,&#39;--show-error&#39;,u,&#39;-H&#39;,&#39;Authorization: Bearer &#39;+os.environ[&#39;AILOOT_API_KEY&#39;],&#39;-D&#39;,str(target)+&#39;.headers&#39;,&#39;-o&#39;,str(target)],check=True)\nprint(&#39;All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.&#39;)\nPY_ASSETS\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-2051-panel-1\" role=\"tabpanel\" aria-labelledby=\"model-code-2051-tab-1\" hidden><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -o media-assets.json\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-2051-panel-2\" role=\"tabpanel\" aria-labelledby=\"model-code-2051-tab-2\" hidden><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}&quot;\nexport AILOOT_MEDIA_TASK_ID\nresource_id=$(python3 -c &#39;import os,urllib.parse;print(urllib.parse.quote(os.environ[&quot;AILOOT_MEDIA_TASK_ID&quot;],safe=&quot;&quot;))&#39;)\ncurl --fail-with-body --silent --show-error &quot;https://api.ailoot.ai/v1/media/tasks/$resource_id&quot; \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -o media-task.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(&quot;media-task.json&quot;).read_text())))\nPY_RESULT\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-2051-panel-3\" role=\"tabpanel\" aria-labelledby=\"model-code-2051-tab-3\" hidden><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}&quot;\nexport AILOOT_ASSET_ID\nresource_id=$(python3 -c &#39;import os,urllib.parse;print(urllib.parse.quote(os.environ[&quot;AILOOT_ASSET_ID&quot;],safe=&quot;&quot;))&#39;)\ncurl --fail-with-body --silent --show-error &quot;https://api.ailoot.ai/v1/media/assets/$resource_id&quot; \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -o media-asset.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(&quot;media-asset.json&quot;).read_text())))\nPY_RESULT\n</code></pre></div></div></div></details><div class=\"card-result-process\" data-all-results><h5>Alle fertiggestellten Ergebnisse aufbewahren</h5><p class=\"note-s\">Bewahren Sie jede vollständig zurückgegebene Antwort, Datei und jeden Inhaltsteil auf.</p><p class=\"note-s\">Bewahren Sie das vollständige JSON auf, nicht nur den Text; erhalten Sie jedes verfügbare Segment, jeden Sprecher, jeden Zeitstempel und die tatsächlichen Aufgaben- und Asset-Kennungen.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Wenn die ursprüngliche Antwort geprüft werden muss</h5><p class=\"note-s\">Die ursprüngliche operation_id/X-Client-Request-ID für den Abgleich ohne erneute Einreichung aufbewahren; es gibt keine eigene Route zur Abfrage des Audiostatus.</p></div><details class=\"card-about\" data-output-fields><summary>Antwortfelder</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Feld</th><th>Typ</th></tr></thead><tbody><tr><th data-cell-label=\"Feld\" scope=\"row\"><span class=\"card-cell-label\">Feld</span><code class=\"card-field-name\">text</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>string</td></tr><tr><th data-cell-label=\"Feld\" scope=\"row\"><span class=\"card-cell-label\">Feld</span><code class=\"card-field-name\">segments[]</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>object</td></tr><tr><th data-cell-label=\"Feld\" scope=\"row\"><span class=\"card-cell-label\">Feld</span><code class=\"card-field-name\">task_id</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>string</td></tr><tr><th data-cell-label=\"Feld\" scope=\"row\"><span class=\"card-cell-label\">Feld</span><code class=\"card-field-name\">asset_url</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>string</td></tr><tr><th data-cell-label=\"Feld\" scope=\"row\"><span class=\"card-cell-label\">Feld</span><code class=\"card-field-name\">usage</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>object</td></tr><tr><th data-cell-label=\"Feld\" scope=\"row\"><span class=\"card-cell-label\">Feld</span><code class=\"card-field-name\">segments[].speaker</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>string</td></tr><tr><th data-cell-label=\"Feld\" scope=\"row\"><span class=\"card-cell-label\">Feld</span><code class=\"card-field-name\">segments[].start</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>number</td></tr><tr><th data-cell-label=\"Feld\" scope=\"row\"><span class=\"card-cell-label\">Feld</span><code class=\"card-field-name\">segments[].end</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>number</td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Fehler und nächste Schritte</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Antwort</th><th>Bedingung</th><th>Nächster Schritt</th></tr></thead><tbody><tr><th data-cell-label=\"Antwort\" scope=\"row\"><span class=\"card-cell-label\">Antwort</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Bedingung\"><span class=\"card-cell-label\">Bedingung</span>Pflichtfelder, Darstellung des Eingabematerials oder Parameterwert ungültig</td><td data-cell-label=\"Nächster Schritt\"><span class=\"card-cell-label\">Nächster Schritt</span>Die angegebenen Felder vor einer neuen Erstellungsanfrage korrigieren.</td></tr><tr><th data-cell-label=\"Antwort\" scope=\"row\"><span class=\"card-cell-label\">Antwort</span><code>server_error</code></th><td data-cell-label=\"Bedingung\"><span class=\"card-cell-label\">Bedingung</span>Die zurückgegebene Antwort gibt an, dass der Vorgang oder das Ergebnis eine Prüfung erfordert</td><td data-cell-label=\"Nächster Schritt\"><span class=\"card-cell-label\">Nächster Schritt</span>Die ursprünglich zurückgegebene Vorgangs-/Aufgaben-ID, die Anfrageheader und die Antwort aufbewahren; mit unterstützten Leseaufrufen für diesen ursprünglichen Vorgang fortfahren. Die Erstellungsanfrage nicht erneut senden.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Aliasnamen</h3><h4>Modellaliasnamen</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=openai%2Fgpt-4o-transcribe-diarize&amp;route=Ultra&amp;caller=openai%2Fgpt-4o-transcribe-diarize&amp;fmt=transcriptions\"><code>openai/gpt-4o-transcribe-diarize</code></a></span></p><h4>Aliasnamen für Methodenpfade</h4><p class=\"note-s\"><code>/audio/transcriptions</code></p><h4>Zugehörige Aufrufer-IDs</h4><p class=\"note-s\"><a href=\"#m=openai%2Fgpt-4o-transcribe-diarize&amp;route=Ultra&amp;caller=openai%2Fgpt-4o-transcribe-diarize&amp;fmt=transcriptions\"><code>openai/gpt-4o-transcribe-diarize</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "openai/gpt-4o-transcribe-diarize",
        "fmt": "transcriptions",
        "http": "POST",
        "path": "/v1/audio/transcriptions",
        "request_model_id": "openai/gpt-4o-transcribe-diarize",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|transcriptions|/v1/audio/transcriptions|openai%2Fgpt-4o-transcribe-diarize",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain complete JSON, not only text; preserve every available segment/speaker/timestamp and actual task/asset identity.",
            "errors": [
              {
                "code": null,
                "condition": "Pflichtfelder, Darstellung des Eingabematerials oder Parameterwert ungültig",
                "http_status": 400,
                "recovery": "Die angegebenen Felder vor einer neuen Erstellungsanfrage korrigieren.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Die zurückgegebene Antwort gibt an, dass der Vorgang oder das Ergebnis eine Prüfung erfordert",
                "http_status": null,
                "recovery": "Die ursprünglich zurückgegebene Vorgangs-/Aufgaben-ID, die Anfrageheader und die Antwort aufbewahren; mit unterstützten Leseaufrufen für diesen ursprünglichen Vorgang fortfahren. Die Erstellungsanfrage nicht erneut senden.",
                "type": "server_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
              "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 URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Die ursprüngliche operation_id/X-Client-Request-ID für den Abgleich ohne erneute Einreichung aufbewahren; es gibt keine eigene Route zur Abfrage des Audiostatus."
            },
            "limits": {
              "decoded_audio_max_bytes": 26214400
            },
            "material_combinations": [
              {
                "content_type": "multipart/form-data",
                "file_formats": [
                  "mp3"
                ],
                "maximum_seconds": 30,
                "mode": "diarized_transcription"
              }
            ],
            "media_library": {
              "asset": {
                "fields": [
                  {
                    "description": null,
                    "name": "asset_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "task_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "output_key",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "family",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "model",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "method",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "status",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "content_type",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "sha256",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "size_bytes",
                    "type": "integer"
                  },
                  {
                    "description": null,
                    "name": "content_url",
                    "type": "string"
                  }
                ],
                "http": "GET",
                "id_source": "actual returned asset_id",
                "path": "/v1/media/assets/{asset_id}"
              },
              "content": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "range_header_supported": true,
                "url_source": "Use exact returned signed content_url including its token; do not construct a token."
              },
              "expired_link": {
                "code": "link_expired",
                "http_status": 404,
                "recovery": "Read the asset again to obtain its refreshed signed content_url, then fetch that URL. Do not regenerate."
              },
              "list": {
                "all_pages": "Follow every returned next_cursor, then select records by their actual task_id/output_key.",
                "http": "GET",
                "output_fields": [
                  {
                    "description": null,
                    "name": "object",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "data",
                    "type": "asset[]"
                  },
                  {
                    "description": null,
                    "name": "next_cursor",
                    "type": "string|null"
                  }
                ],
                "parameters": [
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "family",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "cursor",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": 20,
                    "default_known": true,
                    "enum": null,
                    "enum_known": false,
                    "maximum": 100,
                    "minimum": 1,
                    "name": "limit",
                    "required": false,
                    "type": "integer"
                  }
                ],
                "path": "/v1/media/assets"
              },
              "revoke": {
                "http": "DELETE",
                "meaning": "Revokes/deletes the existing owned file; this is not generation cancellation.",
                "path": "/v1/media/assets/{asset_id}",
                "pending_status": "revoking",
                "success_statuses": [
                  202,
                  204
                ]
              },
              "task": {
                "http": "GET",
                "id_source": "actual returned task_id or media library record; operation_id is not task_id",
                "path": "/v1/media/tasks/{task_id}"
              }
            },
            "operation_modes": [
              "diarized_transcription"
            ],
            "outputs": {
              "all_results": "Bewahren Sie das vollständige JSON auf, nicht nur den Text; erhalten Sie jedes verfügbare Segment, jeden Sprecher, jeden Zeitstempel und die tatsächlichen Aufgaben- und Asset-Kennungen.",
              "family": "transcription",
              "fields": [
                {
                  "description": null,
                  "name": "text",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "segments[]",
                  "type": "object"
                },
                {
                  "description": null,
                  "name": "task_id",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "asset_url",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": "object"
                },
                {
                  "description": null,
                  "name": "segments[].speaker",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "segments[].start",
                  "type": "number"
                },
                {
                  "description": null,
                  "name": "segments[].end",
                  "type": "number"
                }
              ],
              "format": "json"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "openai/gpt-4o-transcribe-diarize"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "file_extension": ".mp3",
                "maximum_bytes": 26214400,
                "maximum_seconds": 30,
                "mime_types": [
                  "audio/mpeg"
                ],
                "name": "file",
                "required": true,
                "type": "file"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "diarized_json"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": true,
                "type": "string"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "JSONinput_audio",
              "nonMP3",
              "audioover30seconds",
              "otheroptions"
            ]
          },
          "hints": [
            "Verwenden Sie die tatsächliche Aufnahme und das passende Format.",
            "Bewahren Sie das vollständige Transkript, Segmente, Sprecher-IDs und Zeitangaben auf."
          ],
          "input": {
            "additional_properties": false,
            "content_type": "multipart/form-data",
            "file_formats": [
              "mp3"
            ],
            "form_string_maximum_bytes": 256,
            "material_types": [
              "audio"
            ],
            "max_audio_seconds": 30,
            "max_bytes": 26214400,
            "other_options": false,
            "required": [
              "model",
              "file",
              "response_format"
            ],
            "response_format": [
              "diarized_json"
            ]
          },
          "lifecycle": {
            "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
            "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 URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "die tatsächlich zurückgegebene task_id oder ein Eintrag in der Medienbibliothek",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain original operation_id/X-Client-Request-ID for reconciliation without resubmission; no dedicated audio poll route."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "method_aliases": [
            "/audio/transcriptions"
          ],
          "operation_modes": [
            "diarized_transcription"
          ],
          "output": {
            "all_results": "Retain complete JSON, not only text; preserve every available segment/speaker/timestamp and actual task/asset identity.",
            "family": "transcription",
            "fields": [
              {
                "description": null,
                "name": "text",
                "type": "string"
              },
              {
                "description": null,
                "name": "segments[]",
                "type": "object"
              },
              {
                "description": null,
                "name": "task_id",
                "type": "string"
              },
              {
                "description": null,
                "name": "asset_url",
                "type": "string"
              },
              {
                "description": null,
                "name": "usage",
                "type": "object"
              },
              {
                "description": null,
                "name": "segments[].speaker",
                "type": "string"
              },
              {
                "description": null,
                "name": "segments[].start",
                "type": "number"
              },
              {
                "description": null,
                "name": "segments[].end",
                "type": "number"
              }
            ],
            "format": "json",
            "owned_result_extra_fields": [
              "task_id",
              "asset_url"
            ],
            "preserve_original_json_fields": [
              "text",
              "task",
              "duration",
              "segments",
              "usage"
            ],
            "segment_fields": [
              "type",
              "text",
              "speaker",
              "start",
              "end",
              "id"
            ]
          }
        },
        "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": "/ 1K audio tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.012000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_token",
                "label": "audio input token",
                "native_amount_usd_per_unit": "0.000012",
                "native_quantity": 1,
                "native_unit": "audio_input_token",
                "public_unit_label": "/ 1K audio tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "/ 1K audio tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.02000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_output_token",
                "label": "audio output token",
                "native_amount_usd_per_unit": "0.00002",
                "native_quantity": 1,
                "native_unit": "audio_output_token",
                "public_unit_label": "/ 1K audio tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "audio_output_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set the path to your actual MP3 recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport os\nfrom pathlib import Path\np=Path(os.environ[\"AILOOT_AUDIO_FILE\"])\nif not p.is_file() or p.suffix.lower()!=\".mp3\":raise SystemExit(\"Choose an existing MP3 recording\")\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" \\\n  --form-string model=openai/gpt-4o-transcribe-diarize -F \"file=@$AILOOT_AUDIO_FILE\" --form-string response_format=diarized_json \\\n  -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(\"result.json\").read_text())))\nPY_RESULT\n",
            "label": "curl · exact retained creation",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_ASSETS'\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path('result.json').read_text())\nurls=[]\nif isinstance(r.get('asset_url'),str) and r['asset_url']:urls.append(('transcript',r['asset_url']))\nfor label,path in urls:\n    u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)\n    if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')\n    target=Path('owned-'+label+'.bin')\n    subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)\nprint('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')\nPY_ASSETS\n",
            "label": "Save every returned owned transcript",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o media-assets.json\n",
            "label": "List actual media assets",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}\"\nexport AILOOT_MEDIA_TASK_ID\nresource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ[\"AILOOT_MEDIA_TASK_ID\"],safe=\"\"))')\ncurl --fail-with-body --silent --show-error \"https://api.ailoot.ai/v1/media/tasks/$resource_id\" \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o media-task.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(\"media-task.json\").read_text())))\nPY_RESULT\n",
            "label": "Read actual media task",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}\"\nexport AILOOT_ASSET_ID\nresource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ[\"AILOOT_ASSET_ID\"],safe=\"\"))')\ncurl --fail-with-body --silent --show-error \"https://api.ailoot.ai/v1/media/assets/$resource_id\" \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o media-asset.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(\"media-asset.json\").read_text())))\nPY_RESULT\n",
            "label": "Read actual asset metadata",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "Use actual recording and matching format.",
          "Preserve full transcript, segments, speaker IDs and timing."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "Распознавание речи",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/audio/transcriptions"
        ],
        "out": null,
        "output": [
          "transcription"
        ],
        "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_token": 1.2e-05,
            "audio_output_token": 2e-05
          }
        },
        "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": "/ 1K audio tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.012000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_token",
                "label": "audio input token",
                "native_amount_usd_per_unit": "0.000012",
                "native_quantity": 1,
                "native_unit": "audio_input_token",
                "public_unit_label": "/ 1K audio tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "/ 1K audio tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.02000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_output_token",
                "label": "audio output token",
                "native_amount_usd_per_unit": "0.00002",
                "native_quantity": 1,
                "native_unit": "audio_output_token",
                "public_unit_label": "/ 1K audio tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "audio_output_token"
              }
            ]
          }
        ],
        "request_model_id": "openai/gpt-4o-transcribe-diarize",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}",
          "GET /v1/media/assets/{asset_id}/content"
        ],
        "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.012000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_token",
            "label": "audio input token",
            "native_amount_usd_per_unit": "0.000012",
            "native_quantity": 1,
            "native_unit": "audio_input_token",
            "public_unit_label": "/ 1K audio tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_token"
          },
          {
            "amount": "0.02000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_output_token",
            "label": "audio output token",
            "native_amount_usd_per_unit": "0.00002",
            "native_quantity": 1,
            "native_unit": "audio_output_token",
            "public_unit_label": "/ 1K audio tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "audio_output_token"
          }
        ]
      }
    }
  ],
  "model_id": "openai/gpt-4o-transcribe-diarize",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "a6fab22b67270399f396cdc2c6ef17e8b18e584f5883c202be19be569c199116",
    "input_html_sha256": "394d2ee88bed0105b8a670acf60488dd726959861b73e525439742af4c0676b1",
    "private_audit_sha256": "a3c88a82b20ff256d60ea4c4a69d8b94233ddf9b381aa6f7389027d2c05e5aab",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/de/openai-gpt-4o-transcribe-diarize/",
    "description": "GPT-4o Transcribe Diarize wandelt aufgezeichnete Sprache in Text mit Sprecherkennzeichnungen und Zeitangaben pro Segment um. Es eignet sich für Besprechungen, Interviews und Aufnahmen mit mehreren Personen, deren Transkript zeigen muss, wer wann gesprochen hat. Für bekannte Sprecher sind kurze Stimmreferenzen optional möglich.",
    "locale": "de",
    "md_url": "https://ailoot.ai/models/de/openai-gpt-4o-transcribe-diarize/index.md",
    "title": "gpt-4o-transcribe-diarize — Ailoot",
    "url": "https://ailoot.ai/models/de/openai-gpt-4o-transcribe-diarize/"
  },
  "rawModel": {
    "about": "GPT-4o Transcribe Diarize ist OpenAIs Modell zur automatischen Spracherkennung mit integrierter Sprechertrennung. Es ordnet transkribierte Audiosegmente verschiedenen Sprechern eines Gesprächs zu. Das nützliche Ergebnis ist ein nach Sprecher und Zeit gegliedertes Transkript statt eines einzigen fortlaufenden Textblocks. Es ist für aufgezeichnete Sprache gedacht, die Sprecherkennzeichnungen benötigt, etwa eine Besprechung, ein Interview oder eine Diskussion mit mehreren Personen.\n\n### Die abgeschlossene Aufnahme vorbereiten\n\nStellen Sie die zu transkribierende Aufnahme bereit. Der dokumentierte Dateiablauf akzeptiert MP3, MP4, MPEG, MPGA, M4A, WAV und WebM mit einer Dateigrößengrenze von 25 MB. Halten Sie die Originalaufnahme verfügbar, damit sich ein Sprecherwechsel, Name oder eine unklare Formulierung anhand des tatsächlichen Audios prüfen lässt.\n\nErhalten Sie bei einer Besprechung den Gesprächsverlauf, statt kurze Pausen herauszuschneiden, die beim Unterscheiden von Sprecherwechseln helfen. Lassen Sie bei einem Interview Frage und Antwort zusammen, wenn deren Beziehung für die Aufgabe wichtig ist. Die Audiovorbereitung sollte die Sprache hörbar machen, ohne Informationen zu entfernen, die für das Ergebnis mit Sprecherkennzeichnungen wichtig sind.\n\nDies ist ein Ablauf zur Dateitranskription. Eine abgeschlossene Aufnahme zu verarbeiten und einen noch eintreffenden Audiostream zu erkennen sind unterschiedliche Aufgaben. Die Sprecherkennzeichnung des Modells wird in Realtime-Transkriptionssitzungen nicht unterstützt.\n\n### Ein Transkript mit Sprecherkennzeichnungen anfordern\n\nDas Ergebnisformat `diarized_json` gibt Segmente mit Sprecherkennzeichnungen sowie Start- und Endzeiten zurück. Jedes Segment enthält außerdem seinen transkribierten Text. Halten Sie diese Felder zusammen, damit sich die Wörter mit dem relevanten Teil der Aufnahme verbinden lassen.\n\nBewahren Sie für ein brauchbares Besprechungstranskript die Segmentreihenfolge und zeigen Sie die Wörter jedes Sprechers mit ihren Zeitangaben an. Eine spätere Aufgabe kann daraus ein Protokoll oder Aufgabenpunkte erstellen. Die Sprechertrennung selbst entscheidet jedoch weder, was in der Besprechung vereinbart wurde, noch erzeugt sie eine geprüfte Zusammenfassung.\n\nSprecherkennzeichnungen beschreiben, wie das Modell die gesprochenen Beiträge gruppiert. Prüfen Sie Übergänge, an denen Personen einander unterbrechen, nur kurz sprechen oder gleichzeitig sprechen. Ein gut strukturiertes Ergebnis erleichtert Navigation und Prüfung; eine bestimmte Zuordnung kann dennoch das Anhören des Originalaudios erfordern.\n\n### Referenzen bekannter Sprecher\n\nDer dokumentierte Ablauf kann bis zu vier benannte Sprecherreferenzen entgegennehmen. Jede Referenz ist ein kurzer Audioclip von 2–10 Sekunden in einem vom Hauptupload unterstützten Format. Namen und Referenzen werden zusammen bereitgestellt, damit Segmente bekannten Sprechern zugeordnet werden können.\n\nBereiten Sie eine Referenz vor, in der der beabsichtigte Sprecher klar zu hören ist, und verwenden Sie den Namen einheitlich entsprechend den gewünschten Kennzeichnungen im Transkript. Bei einem Interview kann eine Referenz für den Moderator helfen, das Ergebnis nach Sprechern zu gliedern, ohne jedem Teilnehmer nur eine anonyme Kennzeichnung zu geben. Die Referenz dient als Eingabe für die Zuordnung; sie ist weder ein allgemeines Verfahren zum Stimmenklonen noch ein Identitätsnachweis einer Person.\n\nVerwechseln Sie die Benennung eines Sprechers nicht mit einer Änderung der gesprochenen Wörter. Die nützliche Ausgabe muss weiterhin den Inhalt der Aufnahme und die tatsächliche Reihenfolge der Beiträge erhalten.\n\n### Aufteilung und Modellgrenzen\n\nFür Audio von mehr als 30 Sekunden verlangt der Hersteller eine Aufteilungsstrategie: entweder automatische Aufteilung oder eine Konfiguration zur Erkennung von Sprachaktivität. Diese Anforderung ist keine maximale Aufnahmedauer. Sie beschreibt, wie längere Eingaben zur Verarbeitung aufgeteilt werden.\n\nDie Modellkarte nennt ein Kontextfenster von 16.000 Token und maximal 2.000 Ausgabetoken. Diese Modellgrenzen sind von der Uploadgrenze von 25 MB und dem Schwellenwert für die Aufteilung getrennt. Daraus darf keine erfundene Minutenzahl abgeleitet werden, die für jede Aufnahme gelten soll.\n\nErhalten Sie Zeitangaben und Segmentidentität, wenn Sie ein längeres Transkript zusammensetzen oder prüfen. Wurde eine Aufnahme vor der Übermittlung geteilt, bewahren Sie die Beziehung jedes Teils zum Originalaudio, damit ein lokaler Zeitstempel nicht mit seiner Position im vollständigen Gespräch verwechselt wird.\n\n### Abgeschlossene Segmente streamen\n\nDer Ablauf zur Dateitranskription kann während der Verarbeitung Text streamen. Beim Streaming mit Sprecherkennzeichnungen erzeugen abgeschlossene Segmente Segmentereignisse. Textdeltas enthalten eine Segmentkennung, aber keine vorläufigen Sprecherzuordnungen. Ein Sprecher wird zugeordnet, sobald das Segment abgeschlossen ist.\n\nDiese Unterscheidung ist für die Darstellung wichtig. Zeigen Sie vorläufigen Text und einen abgeschlossenen Sprecherbeitrag als unterschiedliche Zustände an, statt eine unsichere Sprecherkennzeichnung anzufügen, bevor das Modell das Segment abgeschlossen hat. Bewahren Sie das fertige Ergebnis auf, wenn das Transkript später bearbeitet oder analysiert werden soll.\n\n### Modell- und Ausgabegrenzen\n\nDieses Profil ist das Modell zur Sprechertrennung, getrennt von gewöhnlicher GPT-4o-Transkription, Mini-Transkription, Sprachsynthese und Modellen für Livegespräche. Es unterstützt keine Transkriptionsprompts. Behandeln Sie eine Terminologieprüfung oder -korrektur als separaten Schritt, der anhand des Originalaudios geprüft wird. Seine Herstellerschnittstelle transkribiert aufgezeichnetes Audio in Text. Es erzeugt keine Audioantwort und übersetzt eine Aufnahme nicht über den separaten Ablauf zur Audioübersetzung.\n\nNutzen Sie es für Transkripte, die sowohl Inhalt als auch eine Sprecherstruktur benötigen. Prüfen Sie Namen, Fachbegriffe, Zahlen, Sprecherwechsel und Zuordnungen anhand der Aufnahme. Bewahren Sie Audio, gewähltes Ergebnisformat, Referenzen und fertiges Transkript auf, damit eine Korrektur eine konkrete Formulierung oder Sprecherzuordnung betreffen kann.",
    "alias_of": null,
    "aliases": [],
    "author": "OpenAI",
    "available": null,
    "canonical_model": "openai/gpt-4o-transcribe-diarize",
    "capabilities": {
      "context_length": 16000,
      "manufacturer_input": [],
      "manufacturer_output": []
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.012000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_token",
            "label": "audio input token",
            "native_amount_usd_per_unit": "0.000012",
            "native_quantity": 1,
            "native_unit": "audio_input_token",
            "public_unit_label": "/ 1K audio tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_token"
          },
          {
            "amount": "0.02000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_output_token",
            "label": "audio output token",
            "native_amount_usd_per_unit": "0.00002",
            "native_quantity": 1,
            "native_unit": "audio_output_token",
            "public_unit_label": "/ 1K audio tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "audio_output_token"
          }
        ],
        "summary": "Die vollständigen Preisangaben zur Konfiguration finden Sie in den Details."
      }
    ],
    "ctx": null,
    "entity_type": "model",
    "formats": [
      "transcriptions"
    ],
    "id": "openai/gpt-4o-transcribe-diarize",
    "input": [
      "audio"
    ],
    "kind": "unresolved_method_or_category",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain complete JSON, not only text; preserve every available segment/speaker/timestamp and actual task/asset identity.",
            "errors": [
              {
                "code": null,
                "condition": "Pflichtfelder, Darstellung des Eingabematerials oder Parameterwert ungültig",
                "http_status": 400,
                "recovery": "Die angegebenen Felder vor einer neuen Erstellungsanfrage korrigieren.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Die zurückgegebene Antwort gibt an, dass der Vorgang oder das Ergebnis eine Prüfung erfordert",
                "http_status": null,
                "recovery": "Die ursprünglich zurückgegebene Vorgangs-/Aufgaben-ID, die Anfrageheader und die Antwort aufbewahren; mit unterstützten Leseaufrufen für diesen ursprünglichen Vorgang fortfahren. Die Erstellungsanfrage nicht erneut senden.",
                "type": "server_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
              "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 URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Die ursprüngliche operation_id/X-Client-Request-ID für den Abgleich ohne erneute Einreichung aufbewahren; es gibt keine eigene Route zur Abfrage des Audiostatus."
            },
            "limits": {
              "decoded_audio_max_bytes": 26214400
            },
            "material_combinations": [
              {
                "content_type": "multipart/form-data",
                "file_formats": [
                  "mp3"
                ],
                "maximum_seconds": 30,
                "mode": "diarized_transcription"
              }
            ],
            "media_library": {
              "asset": {
                "fields": [
                  {
                    "description": null,
                    "name": "asset_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "task_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "output_key",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "family",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "model",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "method",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "status",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "content_type",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "sha256",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "size_bytes",
                    "type": "integer"
                  },
                  {
                    "description": null,
                    "name": "content_url",
                    "type": "string"
                  }
                ],
                "http": "GET",
                "id_source": "actual returned asset_id",
                "path": "/v1/media/assets/{asset_id}"
              },
              "content": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "range_header_supported": true,
                "url_source": "Use exact returned signed content_url including its token; do not construct a token."
              },
              "expired_link": {
                "code": "link_expired",
                "http_status": 404,
                "recovery": "Read the asset again to obtain its refreshed signed content_url, then fetch that URL. Do not regenerate."
              },
              "list": {
                "all_pages": "Follow every returned next_cursor, then select records by their actual task_id/output_key.",
                "http": "GET",
                "output_fields": [
                  {
                    "description": null,
                    "name": "object",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "data",
                    "type": "asset[]"
                  },
                  {
                    "description": null,
                    "name": "next_cursor",
                    "type": "string|null"
                  }
                ],
                "parameters": [
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "family",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "cursor",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": 20,
                    "default_known": true,
                    "enum": null,
                    "enum_known": false,
                    "maximum": 100,
                    "minimum": 1,
                    "name": "limit",
                    "required": false,
                    "type": "integer"
                  }
                ],
                "path": "/v1/media/assets"
              },
              "revoke": {
                "http": "DELETE",
                "meaning": "Revokes/deletes the existing owned file; this is not generation cancellation.",
                "path": "/v1/media/assets/{asset_id}",
                "pending_status": "revoking",
                "success_statuses": [
                  202,
                  204
                ]
              },
              "task": {
                "http": "GET",
                "id_source": "actual returned task_id or media library record; operation_id is not task_id",
                "path": "/v1/media/tasks/{task_id}"
              }
            },
            "operation_modes": [
              "diarized_transcription"
            ],
            "outputs": {
              "all_results": "Bewahren Sie das vollständige JSON auf, nicht nur den Text; erhalten Sie jedes verfügbare Segment, jeden Sprecher, jeden Zeitstempel und die tatsächlichen Aufgaben- und Asset-Kennungen.",
              "family": "transcription",
              "fields": [
                {
                  "description": null,
                  "name": "text",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "segments[]",
                  "type": "object"
                },
                {
                  "description": null,
                  "name": "task_id",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "asset_url",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": "object"
                },
                {
                  "description": null,
                  "name": "segments[].speaker",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "segments[].start",
                  "type": "number"
                },
                {
                  "description": null,
                  "name": "segments[].end",
                  "type": "number"
                }
              ],
              "format": "json"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "openai/gpt-4o-transcribe-diarize"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "file_extension": ".mp3",
                "maximum_bytes": 26214400,
                "maximum_seconds": 30,
                "mime_types": [
                  "audio/mpeg"
                ],
                "name": "file",
                "required": true,
                "type": "file"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "diarized_json"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": true,
                "type": "string"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "JSONinput_audio",
              "nonMP3",
              "audioover30seconds",
              "otheroptions"
            ]
          },
          "hints": [
            "Verwenden Sie die tatsächliche Aufnahme und das passende Format.",
            "Bewahren Sie das vollständige Transkript, Segmente, Sprecher-IDs und Zeitangaben auf."
          ],
          "input": {
            "additional_properties": false,
            "content_type": "multipart/form-data",
            "file_formats": [
              "mp3"
            ],
            "form_string_maximum_bytes": 256,
            "material_types": [
              "audio"
            ],
            "max_audio_seconds": 30,
            "max_bytes": 26214400,
            "other_options": false,
            "required": [
              "model",
              "file",
              "response_format"
            ],
            "response_format": [
              "diarized_json"
            ]
          },
          "lifecycle": {
            "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
            "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 URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "die tatsächlich zurückgegebene task_id oder ein Eintrag in der Medienbibliothek",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain original operation_id/X-Client-Request-ID for reconciliation without resubmission; no dedicated audio poll route."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "method_aliases": [
            "/audio/transcriptions"
          ],
          "operation_modes": [
            "diarized_transcription"
          ],
          "output": {
            "all_results": "Retain complete JSON, not only text; preserve every available segment/speaker/timestamp and actual task/asset identity.",
            "family": "transcription",
            "fields": [
              {
                "description": null,
                "name": "text",
                "type": "string"
              },
              {
                "description": null,
                "name": "segments[]",
                "type": "object"
              },
              {
                "description": null,
                "name": "task_id",
                "type": "string"
              },
              {
                "description": null,
                "name": "asset_url",
                "type": "string"
              },
              {
                "description": null,
                "name": "usage",
                "type": "object"
              },
              {
                "description": null,
                "name": "segments[].speaker",
                "type": "string"
              },
              {
                "description": null,
                "name": "segments[].start",
                "type": "number"
              },
              {
                "description": null,
                "name": "segments[].end",
                "type": "number"
              }
            ],
            "format": "json",
            "owned_result_extra_fields": [
              "task_id",
              "asset_url"
            ],
            "preserve_original_json_fields": [
              "text",
              "task",
              "duration",
              "segments",
              "usage"
            ],
            "segment_fields": [
              "type",
              "text",
              "speaker",
              "start",
              "end",
              "id"
            ]
          }
        },
        "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": "/ 1K audio tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.012000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_token",
                "label": "audio input token",
                "native_amount_usd_per_unit": "0.000012",
                "native_quantity": 1,
                "native_unit": "audio_input_token",
                "public_unit_label": "/ 1K audio tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "/ 1K audio tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.02000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_output_token",
                "label": "audio output token",
                "native_amount_usd_per_unit": "0.00002",
                "native_quantity": 1,
                "native_unit": "audio_output_token",
                "public_unit_label": "/ 1K audio tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "audio_output_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set the path to your actual MP3 recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport os\nfrom pathlib import Path\np=Path(os.environ[\"AILOOT_AUDIO_FILE\"])\nif not p.is_file() or p.suffix.lower()!=\".mp3\":raise SystemExit(\"Choose an existing MP3 recording\")\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" \\\n  --form-string model=openai/gpt-4o-transcribe-diarize -F \"file=@$AILOOT_AUDIO_FILE\" --form-string response_format=diarized_json \\\n  -D response-headers.txt -o result.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(\"result.json\").read_text())))\nPY_RESULT\n",
            "label": "curl · exact retained creation",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_ASSETS'\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path('result.json').read_text())\nurls=[]\nif isinstance(r.get('asset_url'),str) and r['asset_url']:urls.append(('transcript',r['asset_url']))\nfor label,path in urls:\n    u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)\n    if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')\n    target=Path('owned-'+label+'.bin')\n    subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)\nprint('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')\nPY_ASSETS\n",
            "label": "Save every returned owned transcript",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o media-assets.json\n",
            "label": "List actual media assets",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}\"\nexport AILOOT_MEDIA_TASK_ID\nresource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ[\"AILOOT_MEDIA_TASK_ID\"],safe=\"\"))')\ncurl --fail-with-body --silent --show-error \"https://api.ailoot.ai/v1/media/tasks/$resource_id\" \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o media-task.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(\"media-task.json\").read_text())))\nPY_RESULT\n",
            "label": "Read actual media task",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}\"\nexport AILOOT_ASSET_ID\nresource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ[\"AILOOT_ASSET_ID\"],safe=\"\"))')\ncurl --fail-with-body --silent --show-error \"https://api.ailoot.ai/v1/media/assets/$resource_id\" \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o media-asset.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nprint(json.dumps(json.loads(Path(\"media-asset.json\").read_text())))\nPY_RESULT\n",
            "label": "Read actual asset metadata",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "Use actual recording and matching format.",
          "Preserve full transcript, segments, speaker IDs and timing."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "Распознавание речи",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/audio/transcriptions"
        ],
        "out": null,
        "output": [
          "transcription"
        ],
        "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_token": 1.2e-05,
            "audio_output_token": 2e-05
          }
        },
        "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": "/ 1K audio tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.012000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_token",
                "label": "audio input token",
                "native_amount_usd_per_unit": "0.000012",
                "native_quantity": 1,
                "native_unit": "audio_input_token",
                "public_unit_label": "/ 1K audio tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "/ 1K audio tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.02000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_output_token",
                "label": "audio output token",
                "native_amount_usd_per_unit": "0.00002",
                "native_quantity": 1,
                "native_unit": "audio_output_token",
                "public_unit_label": "/ 1K audio tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "audio_output_token"
              }
            ]
          }
        ],
        "request_model_id": "openai/gpt-4o-transcribe-diarize",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}",
          "GET /v1/media/assets/{asset_id}/content"
        ],
        "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.012000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_token",
            "label": "audio input token",
            "native_amount_usd_per_unit": "0.000012",
            "native_quantity": 1,
            "native_unit": "audio_input_token",
            "public_unit_label": "/ 1K audio tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_token"
          },
          {
            "amount": "0.02000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_output_token",
            "label": "audio output token",
            "native_amount_usd_per_unit": "0.00002",
            "native_quantity": 1,
            "native_unit": "audio_output_token",
            "public_unit_label": "/ 1K audio tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "audio_output_token"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "openai/gpt-4o-transcribe-diarize",
        "request_model_id": "openai/gpt-4o-transcribe-diarize",
        "route_label": "Ultra"
      }
    ],
    "name": "gpt-4o-transcribe-diarize",
    "price": {
      "in": null,
      "in_label": null,
      "out": 0.02,
      "out_label": "/ 1K audio tokens",
      "sort_in": null,
      "sort_out": 0.02,
      "varies": true
    },
    "pricing_profiles": [],
    "public_id": "openai/gpt-4o-transcribe-diarize",
    "short": "GPT-4o Transcribe Diarize wandelt aufgezeichnete Sprache in Text mit Sprecherkennzeichnungen und Zeitangaben pro Segment um. Es eignet sich für Besprechungen, Interviews und Aufnahmen mit mehreren Personen, deren Transkript zeigen muss, wer wann gesprochen hat. Für bekannte Sprecher sind kurze Stimmreferenzen optional möglich."
  },
  "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": "GPT-4o Transcribe Diarize wandelt aufgezeichnete Sprache in Text mit Sprecherkennzeichnungen und Zeitangaben pro Segment um. Es eignet sich für Besprechungen, Interviews und Aufnahmen mit mehreren Personen, deren Transkript zeigen muss, wer wann gesprochen hat. Für bekannte Sprecher sind kurze Stimmreferenzen optional möglich.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "26dcc374c7f0fb904f2b2e0dc84cf219fce508f6eb6ae39502a1d373dd6c46ab",
    "renderer_sha256": "8bd3076b303b7b3aa4d961032854071403a471ec26a4f50c64e3a32556ea2925"
  },
  "sourceRevision": "80d9ce67b42219ea10928b7edfb5957545988dee95878556b1812a6ef996476f"
}
