Fish Audio Docs
Referência APITexto para fala
Back to site

TTS compatível com Fish Audio

Use o contrato POST /v1/tts no estilo fish.audio com chaves Fish Audio API para clientes como RikkaHub.

TTS compatível com Fish Audio

Use esse ponto de extremidade quando um cliente codificar o formato de solicitação fish.audio POST /v1/tts. Ele mapeia essa carga útil no pipeline Fish Audio Open TTS enquanto mantém a autenticação, a cota e o faturamento da chave API em sua conta Fish Audio.

Para uma integração Open API nativa, prefira Sync HTTP. Para clientes OpenAI POST /v1/audio/speech, use OpenAI compatível com TTS.

Ponto final

POST /v1/tts
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
model: s2.1-pro

URL completo:

https://fishaudio.org/v1/tts

Se o aplicativo de terceiros solicitar uma base Fish Audio API, como https://api.fish.audio, defina-a como https://fishaudio.org e deixe o caminho como /v1/tts.

Mantenha a chave API no campo de credencial protegida do cliente. Crie uma chave dedicada para cada aplicativo para que você possa monitorá-la ou revogá-la de forma independente.

Solicitar

{
  "text": "Hello from Fish Audio.",
  "reference_id": "00a1b221-6137-4b73-ad62-b0cbce134167",
  "format": "mp3",
  "temperature": 0.7,
  "top_p": 0.7,
  "normalize": true,
  "prosody": {
    "speed": 1
  }
}
Campo/cabeçalhoTipoObrigatórioNotas
Cabeçalho modelcordaNãorótulo do mecanismo fish.audio, como s2.1-pro, s2.1-pro-flash ou s2-pro
textcordaSimTexto para sintetizar
reference_idcordaSimID de voz Fish Audio; o servidor não escolhe silenciosamente uma voz padrão
formatcordaNãomp3, wav ou pcm; valores não suportados, como opus, retornam para mp3
prosody.speednúmeroNãoVelocidade de fala de 0.5 a 2; speed no nível superior também é aceito
temperaturenúmeroNãoMapeado para estabilidade Fish Audio (0.51.5)
top_pnúmeroNãoMapeado para similaridade Fish Audio (0.51.5)
normalizebooleanoNãoMapeado para normalização de texto
chunk_lengthnúmeroNãoAceito para compatibilidade do cliente e ignorado
latencycordaNãoAceito para compatibilidade do cliente e ignorado

Mapeamento de cabeçalho do modelo

Valor do cabeçalho modelID do modelo do motor Fish Audio
s2.1-profishaudio-s21pro
s2.1-pro-freefishaudio-s21pro-free
s2.1-flashfishaudio-s21-flash
s2.1-pro-flashfishaudio-s21pro-flash
s2-profishaudio-s2pro
s1/s1-minifishaudio-s1
speech-1.5/1.6fishaudio-s1

Valores de cabeçalho desconhecidos são ignorados e o mecanismo padrão do servidor é aplicado. Você também pode enviar um ID de mecanismo nativo, como fishaudio-s21pro-flash, no cabeçalho.

Obtenha IDs de voz de GET /api/open/v1/voices. Para um teste rápido de conexão, use a voz do sistema público 00a1b221-6137-4b73-ad62-b0cbce134167.

Resposta

Uma solicitação bem-sucedida retorna áudio binário:

HTTP/1.1 200 OK
Content-Type: audio/mpeg
X-OpenAPI-Quota-Remaining: 987988
X-OpenAPI-Credits-Used: 12

<binary audio data>

Os erros são JSON e compartilham autenticação, cota e comportamento de geração com Sincronizar HTTP.

Exemplo curl

curl -X POST "https://fishaudio.org/v1/tts" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -H "model: s2.1-pro" \
  -d '{
    "text": "Hello from Fish Audio.",
    "reference_id": "00a1b221-6137-4b73-ad62-b0cbce134167",
    "format": "mp3",
    "prosody": { "speed": 1 }
  }' \
  --output speech.mp3

Conecte RikkaHub

Para chave API, URL base, modelo e configuração de voz em RikkaHub, siga o [guia de configuração RikkaHub] dedicado (/pt/docs/integration-guides/third-party/rikkahub).

Erros

EstadoSignificadoAção
400Texto inválido, reference_id ausente ou JSON incorretoCorrija a solicitação antes de tentar novamente
401A chave API está ausente ou é inválidaVerifique ou substitua a chave de integração
402A cota API é insuficienteAdicione cota antes de gerar mais áudio
429Limite de taxa de solicitação excedidoTentar novamente com espera exponencial
500Falha na geração de TTSTente novamente apenas com reconhecimento de cobrança duplicada