{
  "aboutHtml": "<h4>Natürliche Stimme für Interaktion</h4><p>Speech 2.6 HD ist für natürliche Sprachsynthese und Szenarien vorgesehen, in denen die Antwort schnell beginnen soll. Der Hersteller legt Wert auf Intonation, flüssige Sprache und Textverarbeitung vor dem Sprechen. Die HD-Variante betont die Klangqualität; die Eingabe dieser Karte ist Text, die Ausgabe gesprochenes Audio.</p><h4>Ungewöhnliche Schreibweisen vorlesen</h4><p>Die Speech-2.6-Generation kann Schreibweisen verarbeiten, die häufig in Arbeitsnachrichten vorkommen: Webadressen, E-Mail-Adressen, Telefonnummern, Datumsangaben und Geldbeträge. Das Modell wandelt sie in eine aussprechbare Form um, damit der Beitrag beim Hören verständlich bleibt. Der Hersteller beschreibt solche Aufgaben in mehreren Sprachen.</p><h4>Flüssige Sprache mit erhaltener Klangfarbe</h4><p>Speech 2.6 sieht den Modus Fluent LoRA zur Verbesserung des Redeflusses vor. Er dient der Synthese anhand einer vorbereiteten Stimme: Er hilft, die Klangfarbe zu erhalten und zugleich zusammenhängendere Sprache zu erzeugen, auch wenn die Ausgangsprobe ungleichmäßig war oder einen Akzent enthielt. Die Vorbereitung einer geklonten Stimme und ihre Verwendung zur Vertonung sind unterschiedliche Aktionen.</p><p>Unterstützt werden <strong>40 Sprachen</strong>, darunter Russisch. Neben sieben grundlegenden emotionalen Zuständen sind bei Speech 2.6 die Varianten für flüssige Sprache <code>fluent</code> und Flüstern <code>whisper</code> vorgesehen. Wird keine Emotion angegeben, wählt das Modell sie anhand der Textbedeutung.</p><h4>Ausspracheeinstellungen</h4><p>MiniMax sieht Stimmenauswahl und die Steuerung von Tempo, Lautstärke und Tonhöhe vor. Die Geschwindigkeit liegt im Bereich <strong>0,5–2</strong>, die Lautstärke über 0 und bis <strong>10</strong>, die Tonhöhenänderung bei <strong>−12 bis 12</strong>. Die Emotion kann anhand der Textbedeutung dem Modell überlassen oder manuell angegeben werden: Freude, Trauer, Wut, Angst, Ekel, Überraschung oder Ruhe.</p><p>Die Aussprache lässt sich mit einem Ersetzungswörterbuch und phonetischer Notation präzisieren; vorgesehen sind das internationale phonetische Alphabet, chinesisches Pinyin und japanische Lesevarianten. Pausen werden zwischen gesprochenen Abschnitten im Bereich <strong>0,01–99,99 Sekunden</strong> angegeben. Die Pausendauer wird mit zwei Nachkommastellen festgelegt; Markierungen stehen zwischen gesprochenen Abschnitten und nicht unmittelbar hintereinander. Diese Einstellungen erlauben es, Namen, Abkürzungen und mehrdeutige Wörter auf die Vertonungsidee abzustimmen.</p><h4>Textlänge und Audio</h4><p>Die Synthese akzeptiert Text mit weniger als <strong>10 000 Zeichen</strong>. Für lange Texte mit mehr als 3000 Zeichen empfiehlt der Hersteller Streaming-Ausgabe; vollständiger Audioempfang ist ebenfalls vorgesehen. Allgemeine Syntheseeinstellungen umfassen MP3, PCM, FLAC, WAV, Opus und G.711 μ-law-Varianten sowie Mono oder Stereo; welche Formate eine konkrete Anfrage bietet, wird durch die Mittel von Ailoot bestimmt.</p><p>Laut MiniMax ist die Generation auf geringe Latenz in Sprachszenarien ausgerichtet. Das beschreibt das Modell; die Antwortzeit und Verfügbarkeit erweiterter Einstellungen hängen vom gewählten Ailoot-Zugriffsweg ab.</p><p>Zusätzliche Audioeinstellungen umfassen Abtastraten von <strong>8, 16, 22,05, 24, 32 und 44,1 kHz</strong>. Für MP3 sind Bitraten von <strong>32, 64, 128 oder 256 kbit/s</strong> vorgesehen. Außerdem kann die Stimmfärbung geändert und ein einzelner Effekt angewendet werden: weiträumiges Echo, Hallenecho, Telefonklang oder Roboterstimme. Stimmveränderungseffekte werden bei vollständigem Audioempfang für MP3, WAV und FLAC unterstützt, bei Streaming-Ausgabe nur für MP3. G.711 μ-law-Formate verwenden 8 kHz. Diese Fähigkeiten gehören zu den MiniMax-Syntheseeinstellungen.</p><p>Der Hersteller sieht die Synchronisierung von Sprache und Text vor: Zeitstempel auf Satzebene, auf Wortebene oder für Wörter bei schrittweiser Ausgabe. Ein solches Ergebnis hilft, Aussprache und Textanzeige zu verbinden. Diese Zusatzfunktion erfordert Unterstützung des entsprechenden Antwortformats.</p>",
  "aboutText": "### Natürliche Stimme für Interaktion\n\nSpeech 2.6 HD ist für natürliche Sprachsynthese und Szenarien vorgesehen, in denen die Antwort schnell beginnen soll. Der Hersteller legt Wert auf Intonation, flüssige Sprache und Textverarbeitung vor dem Sprechen. Die HD-Variante betont die Klangqualität; die Eingabe dieser Karte ist Text, die Ausgabe gesprochenes Audio.\n\n### Ungewöhnliche Schreibweisen vorlesen\n\nDie Speech-2.6-Generation kann Schreibweisen verarbeiten, die häufig in Arbeitsnachrichten vorkommen: Webadressen, E-Mail-Adressen, Telefonnummern, Datumsangaben und Geldbeträge. Das Modell wandelt sie in eine aussprechbare Form um, damit der Beitrag beim Hören verständlich bleibt. Der Hersteller beschreibt solche Aufgaben in mehreren Sprachen.\n\n### Flüssige Sprache mit erhaltener Klangfarbe\n\nSpeech 2.6 sieht den Modus Fluent LoRA zur Verbesserung des Redeflusses vor. Er dient der Synthese anhand einer vorbereiteten Stimme: Er hilft, die Klangfarbe zu erhalten und zugleich zusammenhängendere Sprache zu erzeugen, auch wenn die Ausgangsprobe ungleichmäßig war oder einen Akzent enthielt. Die Vorbereitung einer geklonten Stimme und ihre Verwendung zur Vertonung sind unterschiedliche Aktionen.\n\nUnterstützt werden **40 Sprachen**, darunter Russisch. Neben sieben grundlegenden emotionalen Zuständen sind bei Speech 2.6 die Varianten für flüssige Sprache `fluent` und Flüstern `whisper` vorgesehen. Wird keine Emotion angegeben, wählt das Modell sie anhand der Textbedeutung.\n\n### Ausspracheeinstellungen\n\nMiniMax sieht Stimmenauswahl und die Steuerung von Tempo, Lautstärke und Tonhöhe vor. Die Geschwindigkeit liegt im Bereich **0,5–2**, die Lautstärke über 0 und bis **10**, die Tonhöhenänderung bei **−12 bis 12**. Die Emotion kann anhand der Textbedeutung dem Modell überlassen oder manuell angegeben werden: Freude, Trauer, Wut, Angst, Ekel, Überraschung oder Ruhe.\n\nDie Aussprache lässt sich mit einem Ersetzungswörterbuch und phonetischer Notation präzisieren; vorgesehen sind das internationale phonetische Alphabet, chinesisches Pinyin und japanische Lesevarianten. Pausen werden zwischen gesprochenen Abschnitten im Bereich **0,01–99,99 Sekunden** angegeben. Die Pausendauer wird mit zwei Nachkommastellen festgelegt; Markierungen stehen zwischen gesprochenen Abschnitten und nicht unmittelbar hintereinander. Diese Einstellungen erlauben es, Namen, Abkürzungen und mehrdeutige Wörter auf die Vertonungsidee abzustimmen.\n\n### Textlänge und Audio\n\nDie Synthese akzeptiert Text mit weniger als **10 000 Zeichen**. Für lange Texte mit mehr als 3000 Zeichen empfiehlt der Hersteller Streaming-Ausgabe; vollständiger Audioempfang ist ebenfalls vorgesehen. Allgemeine Syntheseeinstellungen umfassen MP3, PCM, FLAC, WAV, Opus und G.711 μ-law-Varianten sowie Mono oder Stereo; welche Formate eine konkrete Anfrage bietet, wird durch die Mittel von Ailoot bestimmt.\n\nLaut MiniMax ist die Generation auf geringe Latenz in Sprachszenarien ausgerichtet. Das beschreibt das Modell; die Antwortzeit und Verfügbarkeit erweiterter Einstellungen hängen vom gewählten Ailoot-Zugriffsweg ab.\n\nZusätzliche Audioeinstellungen umfassen Abtastraten von **8, 16, 22,05, 24, 32 und 44,1 kHz**. Für MP3 sind Bitraten von **32, 64, 128 oder 256 kbit/s** vorgesehen. Außerdem kann die Stimmfärbung geändert und ein einzelner Effekt angewendet werden: weiträumiges Echo, Hallenecho, Telefonklang oder Roboterstimme. Stimmveränderungseffekte werden bei vollständigem Audioempfang für MP3, WAV und FLAC unterstützt, bei Streaming-Ausgabe nur für MP3. G.711 μ-law-Formate verwenden 8 kHz. Diese Fähigkeiten gehören zu den MiniMax-Syntheseeinstellungen.\n\nDer Hersteller sieht die Synchronisierung von Sprache und Text vor: Zeitstempel auf Satzebene, auf Wortebene oder für Wörter bei schrittweiser Ausgabe. Ein solches Ergebnis hilft, Aussprache und Textanzeige zu verbinden. Diese Zusatzfunktion erfordert Unterstützung des entsprechenden Antwortformats.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "27b1ef8dd8ee1c28a3d4d10fcd39540c3f37c5bbdcfc47d53dbc5c407549b433",
    "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\">MM</span><h2 id=\"sheet-title\">speech-2.6-hd</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Schließen\">×</button></div><div class=\"idline\"><span>MiniMax /</span><code>speech-2.6-hd</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=\"Core|speech|/v1/audio/speech|speech-2.6-hd\">Sprachausgabe</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\">Speech 2.6 HD ist ein Modell für hochwertige Sprachsynthese mit Schwerpunkt auf Natürlichkeit und Stimmähnlichkeit.</p><dl class=\"card-io\" data-card-io><div><dt>Zulässige Eingaben</dt><dd>Text</dd></div><div><dt>Ergebnisse</dt><dd>speech</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\"><h4>Natürliche Stimme für Interaktion</h4><p>Speech 2.6 HD ist für natürliche Sprachsynthese und Szenarien vorgesehen, in denen die Antwort schnell beginnen soll. Der Hersteller legt Wert auf Intonation, flüssige Sprache und Textverarbeitung vor dem Sprechen. Die HD-Variante betont die Klangqualität; die Eingabe dieser Karte ist Text, die Ausgabe gesprochenes Audio.</p><h4>Ungewöhnliche Schreibweisen vorlesen</h4><p>Die Speech-2.6-Generation kann Schreibweisen verarbeiten, die häufig in Arbeitsnachrichten vorkommen: Webadressen, E-Mail-Adressen, Telefonnummern, Datumsangaben und Geldbeträge. Das Modell wandelt sie in eine aussprechbare Form um, damit der Beitrag beim Hören verständlich bleibt. Der Hersteller beschreibt solche Aufgaben in mehreren Sprachen.</p><h4>Flüssige Sprache mit erhaltener Klangfarbe</h4><p>Speech 2.6 sieht den Modus Fluent LoRA zur Verbesserung des Redeflusses vor. Er dient der Synthese anhand einer vorbereiteten Stimme: Er hilft, die Klangfarbe zu erhalten und zugleich zusammenhängendere Sprache zu erzeugen, auch wenn die Ausgangsprobe ungleichmäßig war oder einen Akzent enthielt. Die Vorbereitung einer geklonten Stimme und ihre Verwendung zur Vertonung sind unterschiedliche Aktionen.</p><p>Unterstützt werden <strong>40 Sprachen</strong>, darunter Russisch. Neben sieben grundlegenden emotionalen Zuständen sind bei Speech 2.6 die Varianten für flüssige Sprache <code>fluent</code> und Flüstern <code>whisper</code> vorgesehen. Wird keine Emotion angegeben, wählt das Modell sie anhand der Textbedeutung.</p><h4>Ausspracheeinstellungen</h4><p>MiniMax sieht Stimmenauswahl und die Steuerung von Tempo, Lautstärke und Tonhöhe vor. Die Geschwindigkeit liegt im Bereich <strong>0,5–2</strong>, die Lautstärke über 0 und bis <strong>10</strong>, die Tonhöhenänderung bei <strong>−12 bis 12</strong>. Die Emotion kann anhand der Textbedeutung dem Modell überlassen oder manuell angegeben werden: Freude, Trauer, Wut, Angst, Ekel, Überraschung oder Ruhe.</p><p>Die Aussprache lässt sich mit einem Ersetzungswörterbuch und phonetischer Notation präzisieren; vorgesehen sind das internationale phonetische Alphabet, chinesisches Pinyin und japanische Lesevarianten. Pausen werden zwischen gesprochenen Abschnitten im Bereich <strong>0,01–99,99 Sekunden</strong> angegeben. Die Pausendauer wird mit zwei Nachkommastellen festgelegt; Markierungen stehen zwischen gesprochenen Abschnitten und nicht unmittelbar hintereinander. Diese Einstellungen erlauben es, Namen, Abkürzungen und mehrdeutige Wörter auf die Vertonungsidee abzustimmen.</p><h4>Textlänge und Audio</h4><p>Die Synthese akzeptiert Text mit weniger als <strong>10 000 Zeichen</strong>. Für lange Texte mit mehr als 3000 Zeichen empfiehlt der Hersteller Streaming-Ausgabe; vollständiger Audioempfang ist ebenfalls vorgesehen. Allgemeine Syntheseeinstellungen umfassen MP3, PCM, FLAC, WAV, Opus und G.711 μ-law-Varianten sowie Mono oder Stereo; welche Formate eine konkrete Anfrage bietet, wird durch die Mittel von Ailoot bestimmt.</p><p>Laut MiniMax ist die Generation auf geringe Latenz in Sprachszenarien ausgerichtet. Das beschreibt das Modell; die Antwortzeit und Verfügbarkeit erweiterter Einstellungen hängen vom gewählten Ailoot-Zugriffsweg ab.</p><p>Zusätzliche Audioeinstellungen umfassen Abtastraten von <strong>8, 16, 22,05, 24, 32 und 44,1 kHz</strong>. Für MP3 sind Bitraten von <strong>32, 64, 128 oder 256 kbit/s</strong> vorgesehen. Außerdem kann die Stimmfärbung geändert und ein einzelner Effekt angewendet werden: weiträumiges Echo, Hallenecho, Telefonklang oder Roboterstimme. Stimmveränderungseffekte werden bei vollständigem Audioempfang für MP3, WAV und FLAC unterstützt, bei Streaming-Ausgabe nur für MP3. G.711 μ-law-Formate verwenden 8 kHz. Diese Fähigkeiten gehören zu den MiniMax-Syntheseeinstellungen.</p><p>Der Hersteller sieht die Synchronisierung von Sprache und Text vor: Zeitstempel auf Satzebene, auf Wortebene oder für Wörter bei schrittweiser Ausgabe. Ein solches Ergebnis hilft, Aussprache und Textanzeige zu verbinden. Diese Zusatzfunktion erfordert Unterstützung des entsprechenden Antwortformats.</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 · Sprachausgabe</b> <code>POST /v1/audio/speech</code></summary><dl class=\"method-capabilities\"><div><dt>Eingabetypen</dt><dd><code>text</code></dd></div><div><dt>Ausgabetypen</dt><dd><code>speech</code></dd></div><div><dt>Ausgabeformat</dt><dd>mp3</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>speech-2.6-hd</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\">input</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>Mindestlänge: 1</div><div>Maximale Länge (exklusiv): 10.000</div><div>Einheit: Unicode-Zeichen</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\">voice</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>Muster: ^[A-Za-z0-9_-]{1,128}$</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>Optional</td><td data-cell-label=\"Werte und Limits\"><span class=\"card-cell-label\">Werte und Limits</span><div>mp3</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>text_to_speech</b> · Erforderlich: input</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>material_types</code></th><td data-cell-label=\"Vertrag\"><span class=\"card-cell-label\">Vertrag</span>text</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>null</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>optional_controls</code></th><td data-cell-label=\"Vertrag\"><span class=\"card-cell-label\">Vertrag</span>null</td></tr></tbody></table></div><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\">Methodenstrukturen und IDs sind exakt; die Fähigkeiten des Anbieters sind von der Zulassung einer Anfrage zu unterscheiden.</p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Tarife</h3><h4>Ailoot-Methodentarife</h4><section class=\"meth\" data-route=\"Core\"><header><b><span class=\"alias\">Ailoot</span> Sprachausgabe</b><code>POST /v1/audio/speech</code></header><dl><div><dt>Eingabe</dt><dd>100,00 $ <em>pro 1 Million Zeichen</em></dd></div></dl></section><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 · Sprachausgabe</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-469-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-469-panel-0\" aria-selected=\"true\" tabindex=\"0\">Sprachbeispiel</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-469-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-469-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_TEXT_FILE:?Set your actual UTF-8 narration script}&quot;\nexport AILOOT_TEXT_FILE\n: &quot;${AILOOT_VOICE_ID:?Set the actual accepted voice ID for this model}&quot;\nexport AILOOT_VOICE_ID\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np=json.loads(&#39;{&quot;model&quot;: &quot;speech-2.6-hd&quot;, &quot;input&quot;: &quot;&quot;}&#39;)\nf=Path(os.environ[&quot;AILOOT_TEXT_FILE&quot;])\nif not f.is_file():raise SystemExit(&quot;Choose your actual UTF-8 source material&quot;)\ntext=f.read_text(encoding=&quot;utf-8&quot;)\nif not text.strip():raise SystemExit(&quot;Source material must contain text&quot;)\np[&quot;input&quot;]=text\nimport re\nvoice=os.environ[&quot;AILOOT_VOICE_ID&quot;]\nif not re.fullmatch(r&quot;[A-Za-z0-9_-]{1,128}&quot;,voice):raise SystemExit(&quot;Set an actual accepted voice ID&quot;)\np[&quot;voice&quot;]=voice\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o speech.mp3\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 · Sprachausgabe</h4><p class=\"note-s\">mp3</p><ul class=\"card-result-paths\"><li><code>GET /v1/media/tasks/{task_id}</code></li><li><code>GET /v1/media/assets/{asset_id}/content</code></li><li><code>GET /v1/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><div class=\"card-result-process\" data-all-results><h5>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\">Das vollständige Binärergebnis und die Header aufbewahren. Wenn JSON oder mehrere Ausgaben zurückgegeben werden, jedes Datenelement aufbewahren und jede tatsächlich zurückgegebene signierte Asset-URL abrufen.</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\">binary audio</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>bytes</td></tr><tr><th data-cell-label=\"Feld\" scope=\"row\"><span class=\"card-cell-label\">Feld</span><code class=\"card-field-name\">response headers</code></th><td data-cell-label=\"Typ\" data-field-type><span class=\"card-cell-label\">Typ</span>headers</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=\"Core\"><b>Ailoot</b> <a href=\"#m=speech-2.6-hd&amp;route=Core&amp;caller=speech-2.6-hd&amp;fmt=speech\"><code>speech-2.6-hd</code></a></span></p><h4>Aliasnamen für Methodenpfade</h4><p class=\"note-s\">Verwenden Sie die oben angezeigten Methodenpfade.</p><h4>Zugehörige Aufrufer-IDs</h4><p class=\"note-s\"><a href=\"#m=speech-2.6-hd&amp;route=Core&amp;caller=speech-2.6-hd&amp;fmt=speech\"><code>speech-2.6-hd</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "speech-2.6-hd",
        "fmt": "speech",
        "http": "POST",
        "path": "/v1/audio/speech",
        "request_model_id": "speech-2.6-hd",
        "route_label": "Core"
      },
      "method_key": "Core|speech|/v1/audio/speech|speech-2.6-hd",
      "ordinal": 0,
      "rawMethod": {
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "cache_write_5m": null,
        "conditional_meter": null,
        "contract": {
          "data": {
            "all_results": "Keep the complete binary result and headers. If JSON/multiple outputs are returned, retain every data item and fetch each actual signed asset URL.",
            "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": [
              "MiniMax accepts optionalresponse_formatmp3. Actual voice IDs come from the selected model voice profile.",
              "The facade uses bufferedMP3; provider speed/volume/pitch/sample-rate fields are fixed by the adapter, not callercontrols."
            ],
            "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."
            },
            "material_combinations": [
              {
                "content_type": "application/json",
                "mode": "text_to_speech",
                "required": [
                  "input"
                ]
              }
            ],
            "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": [
              "text_to_speech"
            ],
            "outputs": {
              "all_results": "Das vollständige Binärergebnis und die Header aufbewahren. Wenn JSON oder mehrere Ausgaben zurückgegeben werden, jedes Datenelement aufbewahren und jede tatsächlich zurückgegebene signierte Asset-URL abrufen.",
              "family": "audio",
              "fields": [
                {
                  "description": null,
                  "name": "binary audio",
                  "type": "bytes"
                },
                {
                  "description": null,
                  "name": "response headers",
                  "type": "headers"
                }
              ],
              "format": "mp3"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "speech-2.6-hd"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maximum_length_exclusive": 10000,
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string",
                "unit": "Unicode-Zeichen"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "voice",
                "pattern": "^[A-Za-z0-9_-]{1,128}$",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "mp3"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": []
          },
          "hints": [
            "Methodenstrukturen und IDs sind exakt; die Fähigkeiten des Anbieters sind von der Zulassung einer Anfrage zu unterscheiden."
          ],
          "input": {
            "material_types": [
              "text"
            ],
            "optional_controls": null,
            "required": null
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed 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/speech"
          },
          "operation_modes": [
            "audio_speech"
          ],
          "output": {
            "family": [
              "speech"
            ],
            "format": null,
            "multioutputs": "retain every actual response output"
          }
        },
        "ctx": null,
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_TEXT_FILE:?Set your actual UTF-8 narration script}\"\nexport AILOOT_TEXT_FILE\n: \"${AILOOT_VOICE_ID:?Set the actual accepted voice ID for this model}\"\nexport AILOOT_VOICE_ID\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"speech-2.6-hd\", \"input\": \"\"}')\nf=Path(os.environ[\"AILOOT_TEXT_FILE\"])\nif not f.is_file():raise SystemExit(\"Choose your actual UTF-8 source material\")\ntext=f.read_text(encoding=\"utf-8\")\nif not text.strip():raise SystemExit(\"Source material must contain text\")\np[\"input\"]=text\nimport re\nvoice=os.environ[\"AILOOT_VOICE_ID\"]\nif not re.fullmatch(r\"[A-Za-z0-9_-]{1,128}\",voice):raise SystemExit(\"Set an actual accepted voice ID\")\np[\"voice\"]=voice\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o speech.mp3\n",
            "label": "Synthesize your actual script",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "http": "POST",
        "img_in": null,
        "img_out": null,
        "in": null,
        "input": [
          "text"
        ],
        "label": "Sprachausgabe",
        "max_out": null,
        "max_tool_calls": null,
        "out": null,
        "output": [
          "speech"
        ],
        "path": "/v1/audio/speech",
        "pricing_profiles": [
          {
            "dimensions": {},
            "label": "Core",
            "units": [
              {
                "amount": 100,
                "amount_unit": "usd_per_display_unit",
                "key": "tts_million_chars",
                "label": "per 1 million characters",
                "side": "in"
              }
            ]
          }
        ],
        "request_model_id": "speech-2.6-hd",
        "route_label": "Core",
        "status_reads": [],
        "tiers": [],
        "tool_prices": null,
        "unit": "tts_million_chars",
        "units": [
          {
            "key": "tts_million_chars",
            "label": "per 1 million characters",
            "side": "in",
            "usd": 100
          }
        ]
      }
    }
  ],
  "model_id": "speech-2.6-hd",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "b327e73993109fe39f7b31570067fb26c612bb1d5b7b04e3822f3f5a482c4c2f",
    "input_html_sha256": "79081f6cc8866c9b85746635dcc06d36471c742ac6bfdc02fc6f5dee6b7585c6",
    "private_audit_sha256": "eb60a401b64e2a447f995dee57df1c78ee57569da53349069fc8dddf1443bee0",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/de/speech-2-6-hd/",
    "description": "Speech 2.6 HD ist ein Modell für hochwertige Sprachsynthese mit Schwerpunkt auf Natürlichkeit und Stimmähnlichkeit.",
    "locale": "de",
    "md_url": "https://ailoot.ai/models/de/speech-2-6-hd/index.md",
    "title": "speech-2.6-hd — Ailoot",
    "url": "https://ailoot.ai/models/de/speech-2-6-hd/"
  },
  "rawModel": {
    "about": "### Natürliche Stimme für Interaktion\n\nSpeech 2.6 HD ist für natürliche Sprachsynthese und Szenarien vorgesehen, in denen die Antwort schnell beginnen soll. Der Hersteller legt Wert auf Intonation, flüssige Sprache und Textverarbeitung vor dem Sprechen. Die HD-Variante betont die Klangqualität; die Eingabe dieser Karte ist Text, die Ausgabe gesprochenes Audio.\n\n### Ungewöhnliche Schreibweisen vorlesen\n\nDie Speech-2.6-Generation kann Schreibweisen verarbeiten, die häufig in Arbeitsnachrichten vorkommen: Webadressen, E-Mail-Adressen, Telefonnummern, Datumsangaben und Geldbeträge. Das Modell wandelt sie in eine aussprechbare Form um, damit der Beitrag beim Hören verständlich bleibt. Der Hersteller beschreibt solche Aufgaben in mehreren Sprachen.\n\n### Flüssige Sprache mit erhaltener Klangfarbe\n\nSpeech 2.6 sieht den Modus Fluent LoRA zur Verbesserung des Redeflusses vor. Er dient der Synthese anhand einer vorbereiteten Stimme: Er hilft, die Klangfarbe zu erhalten und zugleich zusammenhängendere Sprache zu erzeugen, auch wenn die Ausgangsprobe ungleichmäßig war oder einen Akzent enthielt. Die Vorbereitung einer geklonten Stimme und ihre Verwendung zur Vertonung sind unterschiedliche Aktionen.\n\nUnterstützt werden **40 Sprachen**, darunter Russisch. Neben sieben grundlegenden emotionalen Zuständen sind bei Speech 2.6 die Varianten für flüssige Sprache `fluent` und Flüstern `whisper` vorgesehen. Wird keine Emotion angegeben, wählt das Modell sie anhand der Textbedeutung.\n\n### Ausspracheeinstellungen\n\nMiniMax sieht Stimmenauswahl und die Steuerung von Tempo, Lautstärke und Tonhöhe vor. Die Geschwindigkeit liegt im Bereich **0,5–2**, die Lautstärke über 0 und bis **10**, die Tonhöhenänderung bei **−12 bis 12**. Die Emotion kann anhand der Textbedeutung dem Modell überlassen oder manuell angegeben werden: Freude, Trauer, Wut, Angst, Ekel, Überraschung oder Ruhe.\n\nDie Aussprache lässt sich mit einem Ersetzungswörterbuch und phonetischer Notation präzisieren; vorgesehen sind das internationale phonetische Alphabet, chinesisches Pinyin und japanische Lesevarianten. Pausen werden zwischen gesprochenen Abschnitten im Bereich **0,01–99,99 Sekunden** angegeben. Die Pausendauer wird mit zwei Nachkommastellen festgelegt; Markierungen stehen zwischen gesprochenen Abschnitten und nicht unmittelbar hintereinander. Diese Einstellungen erlauben es, Namen, Abkürzungen und mehrdeutige Wörter auf die Vertonungsidee abzustimmen.\n\n### Textlänge und Audio\n\nDie Synthese akzeptiert Text mit weniger als **10 000 Zeichen**. Für lange Texte mit mehr als 3000 Zeichen empfiehlt der Hersteller Streaming-Ausgabe; vollständiger Audioempfang ist ebenfalls vorgesehen. Allgemeine Syntheseeinstellungen umfassen MP3, PCM, FLAC, WAV, Opus und G.711 μ-law-Varianten sowie Mono oder Stereo; welche Formate eine konkrete Anfrage bietet, wird durch die Mittel von Ailoot bestimmt.\n\nLaut MiniMax ist die Generation auf geringe Latenz in Sprachszenarien ausgerichtet. Das beschreibt das Modell; die Antwortzeit und Verfügbarkeit erweiterter Einstellungen hängen vom gewählten Ailoot-Zugriffsweg ab.\n\nZusätzliche Audioeinstellungen umfassen Abtastraten von **8, 16, 22,05, 24, 32 und 44,1 kHz**. Für MP3 sind Bitraten von **32, 64, 128 oder 256 kbit/s** vorgesehen. Außerdem kann die Stimmfärbung geändert und ein einzelner Effekt angewendet werden: weiträumiges Echo, Hallenecho, Telefonklang oder Roboterstimme. Stimmveränderungseffekte werden bei vollständigem Audioempfang für MP3, WAV und FLAC unterstützt, bei Streaming-Ausgabe nur für MP3. G.711 μ-law-Formate verwenden 8 kHz. Diese Fähigkeiten gehören zu den MiniMax-Syntheseeinstellungen.\n\nDer Hersteller sieht die Synchronisierung von Sprache und Text vor: Zeitstempel auf Satzebene, auf Wortebene oder für Wörter bei schrittweiser Ausgabe. Ein solches Ergebnis hilft, Aussprache und Textanzeige zu verbinden. Diese Zusatzfunktion erfordert Unterstützung des entsprechenden Antwortformats.",
    "alias_of": null,
    "aliases": [],
    "author": "MiniMax",
    "ctx": null,
    "formats": [
      "speech"
    ],
    "id": "speech-2.6-hd",
    "input": [
      "text"
    ],
    "kind": "speech",
    "max_out": null,
    "methods": [
      {
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "cache_write_5m": null,
        "conditional_meter": null,
        "contract": {
          "data": {
            "all_results": "Keep the complete binary result and headers. If JSON/multiple outputs are returned, retain every data item and fetch each actual signed asset URL.",
            "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": [
              "MiniMax accepts optionalresponse_formatmp3. Actual voice IDs come from the selected model voice profile.",
              "The facade uses bufferedMP3; provider speed/volume/pitch/sample-rate fields are fixed by the adapter, not callercontrols."
            ],
            "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."
            },
            "material_combinations": [
              {
                "content_type": "application/json",
                "mode": "text_to_speech",
                "required": [
                  "input"
                ]
              }
            ],
            "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": [
              "text_to_speech"
            ],
            "outputs": {
              "all_results": "Das vollständige Binärergebnis und die Header aufbewahren. Wenn JSON oder mehrere Ausgaben zurückgegeben werden, jedes Datenelement aufbewahren und jede tatsächlich zurückgegebene signierte Asset-URL abrufen.",
              "family": "audio",
              "fields": [
                {
                  "description": null,
                  "name": "binary audio",
                  "type": "bytes"
                },
                {
                  "description": null,
                  "name": "response headers",
                  "type": "headers"
                }
              ],
              "format": "mp3"
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "speech-2.6-hd"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maximum_length_exclusive": 10000,
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string",
                "unit": "Unicode-Zeichen"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "voice",
                "pattern": "^[A-Za-z0-9_-]{1,128}$",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "mp3"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": []
          },
          "hints": [
            "Methodenstrukturen und IDs sind exakt; die Fähigkeiten des Anbieters sind von der Zulassung einer Anfrage zu unterscheiden."
          ],
          "input": {
            "material_types": [
              "text"
            ],
            "optional_controls": null,
            "required": null
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed 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/speech"
          },
          "operation_modes": [
            "audio_speech"
          ],
          "output": {
            "family": [
              "speech"
            ],
            "format": null,
            "multioutputs": "retain every actual response output"
          }
        },
        "ctx": null,
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_TEXT_FILE:?Set your actual UTF-8 narration script}\"\nexport AILOOT_TEXT_FILE\n: \"${AILOOT_VOICE_ID:?Set the actual accepted voice ID for this model}\"\nexport AILOOT_VOICE_ID\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"speech-2.6-hd\", \"input\": \"\"}')\nf=Path(os.environ[\"AILOOT_TEXT_FILE\"])\nif not f.is_file():raise SystemExit(\"Choose your actual UTF-8 source material\")\ntext=f.read_text(encoding=\"utf-8\")\nif not text.strip():raise SystemExit(\"Source material must contain text\")\np[\"input\"]=text\nimport re\nvoice=os.environ[\"AILOOT_VOICE_ID\"]\nif not re.fullmatch(r\"[A-Za-z0-9_-]{1,128}\",voice):raise SystemExit(\"Set an actual accepted voice ID\")\np[\"voice\"]=voice\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o speech.mp3\n",
            "label": "Synthesize your actual script",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "http": "POST",
        "img_in": null,
        "img_out": null,
        "in": null,
        "input": [
          "text"
        ],
        "label": "Sprachausgabe",
        "max_out": null,
        "max_tool_calls": null,
        "out": null,
        "output": [
          "speech"
        ],
        "path": "/v1/audio/speech",
        "pricing_profiles": [
          {
            "dimensions": {},
            "label": "Core",
            "units": [
              {
                "amount": 100,
                "amount_unit": "usd_per_display_unit",
                "key": "tts_million_chars",
                "label": "per 1 million characters",
                "side": "in"
              }
            ]
          }
        ],
        "request_model_id": "speech-2.6-hd",
        "route_label": "Core",
        "status_reads": [],
        "tiers": [],
        "tool_prices": null,
        "unit": "tts_million_chars",
        "units": [
          {
            "key": "tts_million_chars",
            "label": "per 1 million characters",
            "side": "in",
            "usd": 100
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "speech-2.6-hd",
        "request_model_id": "speech-2.6-hd",
        "route_label": "Core"
      }
    ],
    "name": "speech-2.6-hd",
    "price": {
      "in": 100,
      "in_label": "per 1 million characters",
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": false
    },
    "short": "Speech 2.6 HD ist ein Modell für hochwertige Sprachsynthese mit Schwerpunkt auf Natürlichkeit und Stimmähnlichkeit."
  },
  "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": "Speech 2.6 HD ist ein Modell für hochwertige Sprachsynthese mit Schwerpunkt auf Natürlichkeit und Stimmähnlichkeit.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "16ac4cc61a898990e4542367bddbdce346633e197a31adac58d3db148fb43f0b",
    "renderer_sha256": "8bd3076b303b7b3aa4d961032854071403a471ec26a4f50c64e3a32556ea2925"
  },
  "sourceRevision": "e37bcfb211774deb60dca4cfe108db2530e80982575ad2d796874359459103e7"
}
