{
  "aboutHtml": "<h4>Eine natürliche Stimme für Interaktion</h4><p>Speech 2.6 HD dient natürlicher Sprachsynthese und Szenarien, bei denen ein schneller Antwortbeginn wichtig ist. Der Hersteller legt Wert auf Intonation, flüssige Sprache und Textverarbeitung vor dem Sprechen. Die HD-Variante betont Klangqualität; die Eingabe dieser Karte ist Text, die Ausgabe Sprachaudio.</p><h4>Nicht standardisierte Schreibweisen vorlesen</h4><p>Die Generation Speech 2.6 kann Schreibweisen verarbeiten, die häufig in Arbeitsnachrichten vorkommen: Webadressen, E-Mail-Adressen, Telefonnummern, Daten und Geldbeträge. Das Modell wandelt sie in eine sprechbare Form um, damit die Äusserung beim Hören verständlich bleibt. Der Hersteller beschreibt solche Aufgaben in mehreren Sprachen.</p><h4>Flüssige Sprache bei erhaltener Klangfarbe</h4><p>Speech 2.6 bietet den Modus Fluent LoRA zur Verbesserung des Redeflusses. Er dient der Synthese mit einer vorbereiteten Stimme: Er hilft, die Klangfarbe zu erhalten und zugleich zusammenhängendere Sprache zu erzeugen, selbst wenn das Ausgangsmuster ungleichmässig war oder einen Akzent enthielt. Die Vorbereitung einer geklonten Stimme und ihre Verwendung bei der Vertonung sind verschiedene Aktionen.</p><p>Unterstützt werden <strong>40 Sprachen</strong>, einschliesslich Russisch. Neben sieben grundlegenden emotionalen Zuständen sieht Speech 2.6 die Varianten für flüssige Sprache <code>fluent</code> und Flüstern <code>whisper</code> vor. Wird keine Emotion angegeben, wählt das Modell sie anhand der Textbedeutung.</p><h4>Sprecheinstellungen</h4><p>MiniMax sieht die Stimmwahl und die Steuerung von Tempo, Lautstärke und Tonhöhe vor. Die Geschwindigkeit wird im Bereich <strong>0,5–2</strong> festgelegt, die Lautstärke oberhalb von 0 und bis <strong>10</strong>, die Tonhöhenänderung von <strong>−12 bis 12</strong>. Die Emotion kann dem Modell anhand der Textbedeutung überlassen oder manuell festgelegt 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> festgelegt. Ihre Dauer wird mit zwei Nachkommastellen angegeben; Marker stehen zwischen gesprochenen Abschnitten und werden nicht unmittelbar hintereinander gesetzt. Diese Einstellungen ermöglichen es, den Klang von Namen, Abkürzungen und mehrdeutigen Wörtern auf die beabsichtigte Vertonung abzustimmen.</p><h4>Textlänge und Audio</h4><p>Die Synthese nimmt Text mit weniger als <strong>10 000 Zeichen</strong> entgegen. Für lange Texte mit mehr als 3000 Zeichen empfiehlt der Hersteller Streaming; auch der Empfang des vollständigen fertigen Audios ist vorgesehen. Die allgemeinen Syntheseeinstellungen umfassen MP3, PCM, FLAC, WAV, Opus und G.711-μ-law-Varianten, Mono oder Stereo; die verfügbaren Formate einer konkreten Anfrage werden durch die Mittel von Ailoot bestimmt.</p><p>Laut MiniMax ist die Generation auf geringe Verzögerung in Sprachszenarien ausgerichtet. Das beschreibt das Modell; die Zeit einer konkreten Antwort und die Verfügbarkeit erweiterter Einstellungen hängen von der gewählten Ailoot-Aufrufart ab.</p><p>Zusätzliche Audioeinstellungen umfassen die Abtastraten <strong>8, 16, 22,05, 24, 32 und 44,1 kHz</strong>. Für MP3 sind die Bitraten <strong>32, 64, 128 oder 256 kbit/s</strong> vorgesehen. Auch die Stimmfarbe lässt sich verändern und ein Effekt anwenden: weitläufiges Echo, Saalecho, Telefonklang oder eine Roboterstimme. Effekte zur Stimmveränderung werden bei vollständigem Audioempfang für MP3, WAV und FLAC unterstützt, bei Streaming nur für MP3. G.711-μ-law-Formate verwenden eine Abtastrate von 8 kHz. Diese Möglichkeiten gehören zu den Syntheseeinstellungen von MiniMax.</p><p>Der Hersteller sieht die Synchronisation von Sprache und Text vor: Zeitmarken für Sätze, Wörter oder Wörter bei schrittweiser Ausgabe. Ein solches Ergebnis hilft, das Sprechen mit der Textanzeige abzustimmen. Diese Zusatzfunktion benötigt Unterstützung des entsprechenden Antwortformats.</p>",
  "aboutText": "### Eine natürliche Stimme für Interaktion\n\nSpeech 2.6 HD dient natürlicher Sprachsynthese und Szenarien, bei denen ein schneller Antwortbeginn wichtig ist. Der Hersteller legt Wert auf Intonation, flüssige Sprache und Textverarbeitung vor dem Sprechen. Die HD-Variante betont Klangqualität; die Eingabe dieser Karte ist Text, die Ausgabe Sprachaudio.\n\n### Nicht standardisierte Schreibweisen vorlesen\n\nDie Generation Speech 2.6 kann Schreibweisen verarbeiten, die häufig in Arbeitsnachrichten vorkommen: Webadressen, E-Mail-Adressen, Telefonnummern, Daten und Geldbeträge. Das Modell wandelt sie in eine sprechbare Form um, damit die Äusserung beim Hören verständlich bleibt. Der Hersteller beschreibt solche Aufgaben in mehreren Sprachen.\n\n### Flüssige Sprache bei erhaltener Klangfarbe\n\nSpeech 2.6 bietet den Modus Fluent LoRA zur Verbesserung des Redeflusses. Er dient der Synthese mit einer vorbereiteten Stimme: Er hilft, die Klangfarbe zu erhalten und zugleich zusammenhängendere Sprache zu erzeugen, selbst wenn das Ausgangsmuster ungleichmässig war oder einen Akzent enthielt. Die Vorbereitung einer geklonten Stimme und ihre Verwendung bei der Vertonung sind verschiedene Aktionen.\n\nUnterstützt werden **40 Sprachen**, einschliesslich Russisch. Neben sieben grundlegenden emotionalen Zuständen sieht Speech 2.6 die Varianten für flüssige Sprache `fluent` und Flüstern `whisper` vor. Wird keine Emotion angegeben, wählt das Modell sie anhand der Textbedeutung.\n\n### Sprecheinstellungen\n\nMiniMax sieht die Stimmwahl und die Steuerung von Tempo, Lautstärke und Tonhöhe vor. Die Geschwindigkeit wird im Bereich **0,5–2** festgelegt, die Lautstärke oberhalb von 0 und bis **10**, die Tonhöhenänderung von **−12 bis 12**. Die Emotion kann dem Modell anhand der Textbedeutung überlassen oder manuell festgelegt 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** festgelegt. Ihre Dauer wird mit zwei Nachkommastellen angegeben; Marker stehen zwischen gesprochenen Abschnitten und werden nicht unmittelbar hintereinander gesetzt. Diese Einstellungen ermöglichen es, den Klang von Namen, Abkürzungen und mehrdeutigen Wörtern auf die beabsichtigte Vertonung abzustimmen.\n\n### Textlänge und Audio\n\nDie Synthese nimmt Text mit weniger als **10 000 Zeichen** entgegen. Für lange Texte mit mehr als 3000 Zeichen empfiehlt der Hersteller Streaming; auch der Empfang des vollständigen fertigen Audios ist vorgesehen. Die allgemeinen Syntheseeinstellungen umfassen MP3, PCM, FLAC, WAV, Opus und G.711-μ-law-Varianten, Mono oder Stereo; die verfügbaren Formate einer konkreten Anfrage werden durch die Mittel von Ailoot bestimmt.\n\nLaut MiniMax ist die Generation auf geringe Verzögerung in Sprachszenarien ausgerichtet. Das beschreibt das Modell; die Zeit einer konkreten Antwort und die Verfügbarkeit erweiterter Einstellungen hängen von der gewählten Ailoot-Aufrufart ab.\n\nZusätzliche Audioeinstellungen umfassen die Abtastraten **8, 16, 22,05, 24, 32 und 44,1 kHz**. Für MP3 sind die Bitraten **32, 64, 128 oder 256 kbit/s** vorgesehen. Auch die Stimmfarbe lässt sich verändern und ein Effekt anwenden: weitläufiges Echo, Saalecho, Telefonklang oder eine Roboterstimme. Effekte zur Stimmveränderung werden bei vollständigem Audioempfang für MP3, WAV und FLAC unterstützt, bei Streaming nur für MP3. G.711-μ-law-Formate verwenden eine Abtastrate von 8 kHz. Diese Möglichkeiten gehören zu den Syntheseeinstellungen von MiniMax.\n\nDer Hersteller sieht die Synchronisation von Sprache und Text vor: Zeitmarken für Sätze, Wörter oder Wörter bei schrittweiser Ausgabe. Ein solches Ergebnis hilft, das Sprechen mit der Textanzeige abzustimmen. Diese Zusatzfunktion benötigt Unterstützung des entsprechenden Antwortformats.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "d3145ad879811549501237882259d51a9b70c8991681f6af25a36ebdc907d44b",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "de-ch",
  "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=\"Schliessen\">×</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\">Einstieg</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\">Einstieg</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>Eine natürliche Stimme für Interaktion</h4><p>Speech 2.6 HD dient natürlicher Sprachsynthese und Szenarien, bei denen ein schneller Antwortbeginn wichtig ist. Der Hersteller legt Wert auf Intonation, flüssige Sprache und Textverarbeitung vor dem Sprechen. Die HD-Variante betont Klangqualität; die Eingabe dieser Karte ist Text, die Ausgabe Sprachaudio.</p><h4>Nicht standardisierte Schreibweisen vorlesen</h4><p>Die Generation Speech 2.6 kann Schreibweisen verarbeiten, die häufig in Arbeitsnachrichten vorkommen: Webadressen, E-Mail-Adressen, Telefonnummern, Daten und Geldbeträge. Das Modell wandelt sie in eine sprechbare Form um, damit die Äusserung beim Hören verständlich bleibt. Der Hersteller beschreibt solche Aufgaben in mehreren Sprachen.</p><h4>Flüssige Sprache bei erhaltener Klangfarbe</h4><p>Speech 2.6 bietet den Modus Fluent LoRA zur Verbesserung des Redeflusses. Er dient der Synthese mit einer vorbereiteten Stimme: Er hilft, die Klangfarbe zu erhalten und zugleich zusammenhängendere Sprache zu erzeugen, selbst wenn das Ausgangsmuster ungleichmässig war oder einen Akzent enthielt. Die Vorbereitung einer geklonten Stimme und ihre Verwendung bei der Vertonung sind verschiedene Aktionen.</p><p>Unterstützt werden <strong>40 Sprachen</strong>, einschliesslich Russisch. Neben sieben grundlegenden emotionalen Zuständen sieht Speech 2.6 die Varianten für flüssige Sprache <code>fluent</code> und Flüstern <code>whisper</code> vor. Wird keine Emotion angegeben, wählt das Modell sie anhand der Textbedeutung.</p><h4>Sprecheinstellungen</h4><p>MiniMax sieht die Stimmwahl und die Steuerung von Tempo, Lautstärke und Tonhöhe vor. Die Geschwindigkeit wird im Bereich <strong>0,5–2</strong> festgelegt, die Lautstärke oberhalb von 0 und bis <strong>10</strong>, die Tonhöhenänderung von <strong>−12 bis 12</strong>. Die Emotion kann dem Modell anhand der Textbedeutung überlassen oder manuell festgelegt 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> festgelegt. Ihre Dauer wird mit zwei Nachkommastellen angegeben; Marker stehen zwischen gesprochenen Abschnitten und werden nicht unmittelbar hintereinander gesetzt. Diese Einstellungen ermöglichen es, den Klang von Namen, Abkürzungen und mehrdeutigen Wörtern auf die beabsichtigte Vertonung abzustimmen.</p><h4>Textlänge und Audio</h4><p>Die Synthese nimmt Text mit weniger als <strong>10 000 Zeichen</strong> entgegen. Für lange Texte mit mehr als 3000 Zeichen empfiehlt der Hersteller Streaming; auch der Empfang des vollständigen fertigen Audios ist vorgesehen. Die allgemeinen Syntheseeinstellungen umfassen MP3, PCM, FLAC, WAV, Opus und G.711-μ-law-Varianten, Mono oder Stereo; die verfügbaren Formate einer konkreten Anfrage werden durch die Mittel von Ailoot bestimmt.</p><p>Laut MiniMax ist die Generation auf geringe Verzögerung in Sprachszenarien ausgerichtet. Das beschreibt das Modell; die Zeit einer konkreten Antwort und die Verfügbarkeit erweiterter Einstellungen hängen von der gewählten Ailoot-Aufrufart ab.</p><p>Zusätzliche Audioeinstellungen umfassen die Abtastraten <strong>8, 16, 22,05, 24, 32 und 44,1 kHz</strong>. Für MP3 sind die Bitraten <strong>32, 64, 128 oder 256 kbit/s</strong> vorgesehen. Auch die Stimmfarbe lässt sich verändern und ein Effekt anwenden: weitläufiges Echo, Saalecho, Telefonklang oder eine Roboterstimme. Effekte zur Stimmveränderung werden bei vollständigem Audioempfang für MP3, WAV und FLAC unterstützt, bei Streaming nur für MP3. G.711-μ-law-Formate verwenden eine Abtastrate von 8 kHz. Diese Möglichkeiten gehören zu den Syntheseeinstellungen von MiniMax.</p><p>Der Hersteller sieht die Synchronisation von Sprache und Text vor: Zeitmarken für Sätze, Wörter oder Wörter bei schrittweiser Ausgabe. Ein solches Ergebnis hilft, das Sprechen mit der Textanzeige abzustimmen. Diese Zusatzfunktion benötigt 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>Eingabe</dt><dd><code>text</code></dd></div><div><dt>Ausgabe</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 abschliessenden Verbrauchsdatensatzes. <a href=\"/docs/de-ch/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": "093702b91e0873558d69414ce628c60e667d813e355507fd61a6a8f3bda50d1d",
    "input_html_sha256": "c82fffac5bcc157da7ed00c3b2ff20c8398bbcec01a37a1f8f4e243742e52147",
    "private_audit_sha256": "b764f0b54e444bd2c334f443dc58084fee0697e5646d699f51e4444e9c83227b",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/de-ch/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-ch",
    "md_url": "https://ailoot.ai/models/de-ch/speech-2-6-hd/index.md",
    "title": "speech-2.6-hd — Ailoot",
    "url": "https://ailoot.ai/models/de-ch/speech-2-6-hd/"
  },
  "rawModel": {
    "about": "### Eine natürliche Stimme für Interaktion\n\nSpeech 2.6 HD dient natürlicher Sprachsynthese und Szenarien, bei denen ein schneller Antwortbeginn wichtig ist. Der Hersteller legt Wert auf Intonation, flüssige Sprache und Textverarbeitung vor dem Sprechen. Die HD-Variante betont Klangqualität; die Eingabe dieser Karte ist Text, die Ausgabe Sprachaudio.\n\n### Nicht standardisierte Schreibweisen vorlesen\n\nDie Generation Speech 2.6 kann Schreibweisen verarbeiten, die häufig in Arbeitsnachrichten vorkommen: Webadressen, E-Mail-Adressen, Telefonnummern, Daten und Geldbeträge. Das Modell wandelt sie in eine sprechbare Form um, damit die Äusserung beim Hören verständlich bleibt. Der Hersteller beschreibt solche Aufgaben in mehreren Sprachen.\n\n### Flüssige Sprache bei erhaltener Klangfarbe\n\nSpeech 2.6 bietet den Modus Fluent LoRA zur Verbesserung des Redeflusses. Er dient der Synthese mit einer vorbereiteten Stimme: Er hilft, die Klangfarbe zu erhalten und zugleich zusammenhängendere Sprache zu erzeugen, selbst wenn das Ausgangsmuster ungleichmässig war oder einen Akzent enthielt. Die Vorbereitung einer geklonten Stimme und ihre Verwendung bei der Vertonung sind verschiedene Aktionen.\n\nUnterstützt werden **40 Sprachen**, einschliesslich Russisch. Neben sieben grundlegenden emotionalen Zuständen sieht Speech 2.6 die Varianten für flüssige Sprache `fluent` und Flüstern `whisper` vor. Wird keine Emotion angegeben, wählt das Modell sie anhand der Textbedeutung.\n\n### Sprecheinstellungen\n\nMiniMax sieht die Stimmwahl und die Steuerung von Tempo, Lautstärke und Tonhöhe vor. Die Geschwindigkeit wird im Bereich **0,5–2** festgelegt, die Lautstärke oberhalb von 0 und bis **10**, die Tonhöhenänderung von **−12 bis 12**. Die Emotion kann dem Modell anhand der Textbedeutung überlassen oder manuell festgelegt 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** festgelegt. Ihre Dauer wird mit zwei Nachkommastellen angegeben; Marker stehen zwischen gesprochenen Abschnitten und werden nicht unmittelbar hintereinander gesetzt. Diese Einstellungen ermöglichen es, den Klang von Namen, Abkürzungen und mehrdeutigen Wörtern auf die beabsichtigte Vertonung abzustimmen.\n\n### Textlänge und Audio\n\nDie Synthese nimmt Text mit weniger als **10 000 Zeichen** entgegen. Für lange Texte mit mehr als 3000 Zeichen empfiehlt der Hersteller Streaming; auch der Empfang des vollständigen fertigen Audios ist vorgesehen. Die allgemeinen Syntheseeinstellungen umfassen MP3, PCM, FLAC, WAV, Opus und G.711-μ-law-Varianten, Mono oder Stereo; die verfügbaren Formate einer konkreten Anfrage werden durch die Mittel von Ailoot bestimmt.\n\nLaut MiniMax ist die Generation auf geringe Verzögerung in Sprachszenarien ausgerichtet. Das beschreibt das Modell; die Zeit einer konkreten Antwort und die Verfügbarkeit erweiterter Einstellungen hängen von der gewählten Ailoot-Aufrufart ab.\n\nZusätzliche Audioeinstellungen umfassen die Abtastraten **8, 16, 22,05, 24, 32 und 44,1 kHz**. Für MP3 sind die Bitraten **32, 64, 128 oder 256 kbit/s** vorgesehen. Auch die Stimmfarbe lässt sich verändern und ein Effekt anwenden: weitläufiges Echo, Saalecho, Telefonklang oder eine Roboterstimme. Effekte zur Stimmveränderung werden bei vollständigem Audioempfang für MP3, WAV und FLAC unterstützt, bei Streaming nur für MP3. G.711-μ-law-Formate verwenden eine Abtastrate von 8 kHz. Diese Möglichkeiten gehören zu den Syntheseeinstellungen von MiniMax.\n\nDer Hersteller sieht die Synchronisation von Sprache und Text vor: Zeitmarken für Sätze, Wörter oder Wörter bei schrittweiser Ausgabe. Ein solches Ergebnis hilft, das Sprechen mit der Textanzeige abzustimmen. Diese Zusatzfunktion benötigt 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": "b2b507b482dc1bb4ad249d1bfa4f04045f91b74c1409dede0e49700b8f565e11",
    "renderer_sha256": "76caa42c097db2ddc47d1e1e6fe7ca45c8363d7211296daf28e4352971e6c0c8"
  },
  "sourceRevision": "b02436bc41bd600bdf9ae30a0ad56c0afc8eb7496030d29252b92e66acdf1b6a"
}
