OpenAI entfernt tts-1, tts-1-hd und gpt-4o-mini-tts am 6. Januar 2027 aus seiner API.Quelle

OpenAI-TTS-Alternative: SDK behalten, Base URL ändern

Fish Audio bietet denselben Aufruf /v1/audio/speech. Richte deinen OpenAI-Client auf Fish, wähle das kostenlose Modell, und dein Code für die Sprachausgabe läuft weiter, auch wenn die TTS-Modelle von OpenAI abgeschaltet sind.

Keine Kreditkarte erforderlich: fish-audio/s2.1-pro-free kostet $0 bis einschließlich 30. November 2026.

Zwei Zeilen stellen den Client um

base_url und api_key richten das offizielle OpenAI SDK auf Fish. Im Aufruf setzt du ein Fish-Modell und eine Fish-Stimme. Der neue Code läuft unverändert auf einem neuen Konto mit $0 Guthaben.

import os from openai import OpenAI client = OpenAI(Hinzugefügte Zeile:     base_url="https://api.fish.audio/compat/v1",Entfernte Zeile:     api_key=os.environ["OPENAI_API_KEY"],Hinzugefügte Zeile:     api_key=os.environ["FISH_API_KEY"],) with client.audio.speech.with_streaming_response.create(Entfernte Zeile:     model="tts-1",Entfernte Zeile:     voice="alloy",Hinzugefügte Zeile:     model="fish-audio/s2.1-pro-free",Hinzugefügte Zeile:     voice="",    input="Hello, world!",    response_format="mp3",) as response:    response.stream_to_file("speech.mp3")
import fs from "node:fs";import OpenAI from "openai"; const client = new OpenAI({Hinzugefügte Zeile:   baseURL: "https://api.fish.audio/compat/v1",Entfernte Zeile:   apiKey: process.env.OPENAI_API_KEY,Hinzugefügte Zeile:   apiKey: process.env.FISH_API_KEY,}); const response = await client.audio.speech.create({Entfernte Zeile:   model: "tts-1",Entfernte Zeile:   voice: "alloy",Hinzugefügte Zeile:   model: "fish-audio/s2.1-pro-free",Hinzugefügte Zeile:   voice: "",  input: "Hello, world!",  response_format: "mp3",});fs.writeFileSync("speech.mp3", Buffer.from(await response.arrayBuffer()));
Entfernte Zeile: curl https://api.openai.com/v1/audio/speech \Entfernte Zeile:   -H "Authorization: Bearer $OPENAI_API_KEY" \Hinzugefügte Zeile: curl https://api.fish.audio/compat/v1/audio/speech \Hinzugefügte Zeile:   -H "Authorization: Bearer $FISH_API_KEY" \  -H "Content-Type: application/json" \  -d '{Entfernte Zeile:     "model": "tts-1",Entfernte Zeile:     "voice": "alloy",Hinzugefügte Zeile:     "model": "fish-audio/s2.1-pro-free",Hinzugefügte Zeile:     "voice": "",    "input": "Hello, world!",    "response_format": "mp3"  }' \  --output speech.mp3

Benötigt das offizielle OpenAI SDK (pip install openai oder npm install openai) und deinen Fish-API-Key in FISH_API_KEY.

Was sich sonst ändert

  • voice erwartet eine Stimm-ID von Fish. OpenAI-Preset-Namen wie nova geben einen Fehler 400 zurück; ein leerer String verwendet die Standardstimme des Modells.
  • response_format ist bei Fish standardmäßig pcm, nicht mp3. Setze es explizit.
  • instructions wird nicht unterstützt und gibt einen Fehler 400 zurück. Schreib Vortragshinweise stattdessen direkt in den Text, etwa [whispering].
  • tts-1, tts-1-hd und gpt-4o-mini-tts funktionieren weiterhin als Modellnamen. Sie verweisen auf das kostenpflichtige fish-audio/s2.1-pro.

Stimme wählen

Die Preset-Stimmen von OpenAI gibt es bei Fish nicht. Übergib die ID einer beliebigen Stimme aus der Stimmbibliothek von Fish oder einer Stimme, die du klonst. Ein leerer String verwendet die Standardstimme des Modells.

Hannah · Stimmbibliothek

voice="9a9cf47702da476aa4629e2506d4a857"
Stimmbibliothek durchstöbern

Preise

S2.1-Pro rechnet nach UTF-8-Bytes des Eingabetexts ab. Im Englischen entspricht ein Zeichen einem Byte, es kostet also so viel wie tts-1 und halb so viel wie tts-1-hd. Die meisten chinesischen, japanischen und koreanischen Zeichen belegen 3 Bytes.

ModellPreis
Fish Audiofish-audio/s2.1-pro-freeKostenlos bis einschließlich 30. November 2026, im Rahmen der Fair-Use-Limits. Dasselbe Modell wie S2.1-Pro, ohne Garantien zu Latenz (TTFA) oder DPA; Requests können zur Verbesserung des Modells verwendet werden.$0.00 / 1 Mio. UTF-8-Bytes
Fish Audiofish-audio/s2.1-proFür die Produktion. Pay-as-you-go, kein Abo.$15.00 / 1 Mio. UTF-8-Bytes
OpenAItts-1Wird am 6. Januar 2027 aus der OpenAI API entfernt.$15.00 / 1 Mio. Zeichen
OpenAItts-1-hdWird am 6. Januar 2027 aus der OpenAI API entfernt.$30.00 / 1 Mio. Zeichen

Preise laut den offiziellen Preisseiten, Stand 29. Oktober 2026:Fish AudioOpenAI

Häufig gestellte Fragen

Laut der Deprecations-Seite von OpenAI werden tts-1, tts-1-hd und gpt-4o-mini-tts am 6. Januar 2027 aus der API entfernt. Der empfohlene Ersatz, gpt-realtime-2.1-mini, läuft über die Realtime API statt über /v1/audio/speech.

Vor dem 6. Januar 2027 umsteigen

Kostenlosen Key erstellen, zwei Zeilen ändern und weiter Sprachausgabe ausliefern.