Áudio

xAI TTS 1 audio

xAI TTS 1 — voz econômica com tags expressivas ([laugh], <whisper>) e 5 vozes.

Categoria: Texto em voz · xai-tts-1

Quando escolher

A voz mais barata do catálogo, com tags expressivas embutidas no texto. Só 5 vozes.

Bom para:

Evite:

As tags expressivas são divertidas e o preço é o menor da casa. O catálogo de 5 vozes limita: em projeto com vários personagens você fica sem opção.

Alternativas:

Capacidades

O que este modelo suporta, direto do schema — sem preços, sem detalhes de infraestrutura.

CapacidadeValor
tts Texto em vozSim
voice Seleção de vozSim
voices Vozes disponíveis5

Parâmetros

Campos aceitos em params (ou de primeira classe, quando aplicável) para POST /generations.

NomeRótuloTipoObrigatórioPadrãoOpçõesMín / Máx
textTextotextareaObrigatório———
voiceVozselectOpcionaleveeve · ara · rex · sal · leo—
language_codeIdiomatextOpcionalauto——

Exemplo de requisição

bash
curl -X POST https://caranguejo.art/api/v1/dev/generations \
  -H "Authorization: Bearer $CK" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "xai-tts-1",
  "text": "um caranguejo neon numa praia ao entardecer, estilo cinematográfico",
  "params": {
    "voice": "eve",
    "language_code": "auto"
  }
}'
javascript
const res = await fetch("https://caranguejo.art/api/v1/dev/generations", {
  method: "POST",
  headers: {
    "Authorization": "Bearer " + process.env.CK,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "model": "xai-tts-1",
    "text": "um caranguejo neon numa praia ao entardecer, estilo cinematográfico",
    "params": {
      "voice": "eve",
      "language_code": "auto"
    }
  }),
});
const { data } = await res.json();

Exemplo de resposta

json
{
  "id": "9f0c1a7e-…",
  "object": "generation",
  "model": "xai-tts-1",
  "type": "audio",
  "status": "completed",
  "output": {
    "assets": [
      {
        "url": "https://media.caranguejo.art/outputs/example.mp3",
        "type": "audio"
      }
    ]
  }
}
O custo real do job é retornado em credits_charged na resposta concluída — consulte GET /balance para o saldo da conta.

Erros comuns deste tipo de job:

insufficient_creditsSaldo insuficiente para cobrir o job.
content_policy_violationPrompt ou mídia recusados por política de conteúdo.
generation_timeoutO job excedeu o tempo máximo de processamento.
rate_limitedLimite de requisições por minuto excedido.
invalid_inputParâmetro obrigatório ausente ou fora do schema do modelo.
generation_failedFalha genérica no processamento do job.