
Tradução falada simultânea via WebSocket. Defina o idioma de destino, depois fale; o modelo responde nesse idioma com texto e áudio.
Tradução falada simultânea via WebSocket. Defina o idioma de destino, depois fale; o modelo responde nesse idioma com texto e áudio.
A sessão é configurada com eventos session.update pelo socket em vez de parâmetros de requisição. O idioma de destino é necessário. Tokens de texto e áudio cobram a taxas separadas.
Também conhecido como Alibaba Cloud Qwen3.8 LiveTranslate Flash Realtime
qwen3-8-livetranslate-flash-realtime/v1/realtimeqwen3.8-livetranslate-flash-realtimealibaba/qwen3-8-livetranslate-flash-realtimeTarifas pay-as-you-go ao vivo do catálogo EmpirioLabs. Você paga só pelo que usa, sem mínimo mensal.
Qwen3.8 LiveTranslate Flash Realtime é tradução falada ao vivo por um WebSocket em wss://api.empiriolabs.ai/v1/realtime?model=qwen3-8-livetranslate-flash-realtime, e não pelos endpoints HTTP. Conecte-se com o id de modelo qwen3-8-livetranslate-flash-realtime e envie sua chave de API da EmpirioLabs como cabeçalho Authorization: Bearer no handshake. Defina o idioma de destino com um session.update antes de enviar áudio. O áudio trafega nos dois sentidos como PCM de 16 bits em base64. Um navegador não consegue definir cabeçalhos em um WebSocket, então abra esta conexão a partir do seu servidor e repasse o áudio ao navegador pelo seu próprio socket. Obtenha uma chave de API no painel EmpirioLabs.
import asyncio, json, os, websockets
async def main():
async with websockets.connect(
"wss://api.empiriolabs.ai/v1/realtime?model=qwen3-8-livetranslate-flash-realtime",
additional_headers=[
("Authorization", f"Bearer {os.environ['EMPIRIOLABS_API_KEY']}"),
],
max_size=None,
) as ws:
print(json.loads(await ws.recv())["type"]) # session.created
import base64
await ws.send(json.dumps({
"type": "session.update",
"session": {
"voice": "Tina",
"translation": {"language": "en"},
"modalities": ["text", "audio"],
},
}))
# 16-bit PCM microphone audio, base64 encoded, in small chunks.
for chunk in read_microphone_chunks():
await ws.send(json.dumps({
"type": "input_audio_buffer.append",
"audio": base64.b64encode(chunk).decode(),
}))
async for raw in ws:
event = json.loads(raw)
if event["type"] == "response.audio.delta":
... # base64 audio chunk, append to your playback buffer
elif event["type"] in ("response.audio_transcript.text", "response.text.text"):
print(event.get("text") or "")
elif event["type"] == "response.done":
break
asyncio.run(main())Parâmetros de requisição suportados pela API Qwen3.8 LiveTranslate Flash Realtime na EmpirioLabs. Os padrões valem quando um campo é omitido.
| Parâmetro | Tipo | Padrão | Intervalo / valores | Descrição |
|---|---|---|---|---|
| voice | enum | Tina | Tina, Serena, Ethan, Cindy | Falando voz para o áudio traduzido. Configure com session.update antes que o modelo produza qualquer áudio. |
| target_language | enum | en | zh, en, ar, de, fr, es, pt, id, it, ko, ru, th, vi, ja, tr, h... | Idioma para o qual o modelo traduz. Obrigatório. Defina com session.update antes de enviar o áudio. |
| source_language | enum | auto | auto, zh, en, ar, de, fr, es, pt, id, it, ko, ru, th, vi, ja,... | A linguagem que você está falando. Deixe o auto para que o modelo detecte. |
| modalities | string | ["text","audio"] | - | Qual tipo de saída o modelo retorna por um turno. Corte o áudio para uma tradução apenas de texto. |
| input_audio_format | enum | pcm | pcm | Codificação do áudio que você adiciona ao buffer de entrada: PCM base64 de 16 bits. |
| output_audio_format | enum | pcm | pcm | Codificação do áudio que o modelo transmite de volta: PCM base64 de 16 bits. |
Tradução falada via WebSocket em wss://api.empiriolabs.ai/v1/realtime?model=qwen3-8-livetranslate-flash-realtime, autenticada com o cabeçalho comum Authorization Bearer. Defina o idioma alvo com session.update antes de enviar o áudio. Use uma voz que este modelo aceite, ou deixe a Tina padrão. Tokens de áudio e texto são precificados separadamente, e cada turno concluído é faturado separadamente a partir do uso que o modelo reporta.
Na EmpirioLabs, Qwen3.8 LiveTranslate Flash Realtime é cobrado por uso: Entrada: áudio $15.00 por 1M de tokens de entrada de áudio; Entrada $1.10 por 1M de tokens de prompt; Saída $40.00 por 1M de tokens gerados; Saída: áudio $60.00 por 1M de tokens de áudio gerados. A tabela de tarifas ao vivo desta página sempre corresponde ao que a API cobra.
Qwen3.8 LiveTranslate Flash Realtime suporta uma janela de contexto de 53K tokens com até 4.096 tokens de saída por resposta.
Qwen3.8 LiveTranslate Flash Realtime é servido por WEBSOCKET /v1/realtime em api.empiriolabs.ai com autenticação padrão por token Bearer.
Abra o playground da EmpirioLabs e clique em Start session para testar no navegador. Qwen3.8 LiveTranslate Flash Realtime funciona sobre um WebSocket em vez de requisição e resposta, então para integrar comece pelo guia rápido de voz em tempo real. Conecte-se do seu servidor com sua chave de API da EmpirioLabs e o id de modelo qwen3-8-livetranslate-flash-realtime e transmita áudio nos dois sentidos.
Crie uma conta EmpirioLabs e gere uma chave em API Keys no painel. A cobrança usa créditos pay-as-you-go, então você paga apenas pelas requisições que faz.
Confira nossos preços ou entre em contato se quiser que seu próprio modelo seja implementado em nossa pilha.