
Transcrição ao vivo por um soquete, retornando resultados parciais enquanto o falante fala, com a detecção de atividade vocal marcando cada frase.
Transcrição ao vivo por um soquete, retornando resultados parciais enquanto o falante fala, com a detecção de atividade vocal marcando cada frase.
EmpirioLabs exposes the standard WEBSOCKET /v1/realtime endpoint and returns partial and final transcripts as the speaker talks.
Também conhecido como StepAudio ASR Stream, StepFun StepAudio 2.5 ASR Stream
stepaudio-2-5-asr-stream/v1/realtimestepaudio-2.5-asr-streamstepfun/stepaudio-2-5-asr-streamTarifas pay-as-you-go ao vivo do catálogo EmpirioLabs. Você paga só pelo que usa, sem mínimo mensal.
StepAudio 2.5 ASR Stream transcreve um fluxo de áudio ao vivo por um WebSocket em wss://api.empiriolabs.ai/v1/realtime?model=stepaudio-2-5-asr-stream, e não pelos endpoints HTTP. Conecte-se com o id de modelo stepaudio-2-5-asr-stream e envie sua chave de API da EmpirioLabs como cabeçalho Authorization: Bearer no handshake. Acrescente áudio PCM de 16 bits em base64 e leia os eventos de transcrição enquanto a pessoa ainda fala. 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=stepaudio-2-5-asr-stream",
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
# 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(),
}))
await ws.send(json.dumps({"type": "input_audio_buffer.commit"}))
async for raw in ws:
event = json.loads(raw)
if event["type"].endswith("input_audio_transcription.delta"):
# "text" is settled transcript; "stash" is still in progress.
if event.get("text"):
print(event["text"], end="", flush=True)
asyncio.run(main())Parâmetros de requisição suportados pela API StepAudio 2.5 ASR Stream na EmpirioLabs. Os padrões valem quando um campo é omitido.
| Parâmetro | Tipo | Padrão | Intervalo / valores | Descrição |
|---|---|---|---|---|
| input_audio_format | enum | pcm16 | pcm16 | Codificação do áudio que você adiciona ao buffer de entrada: PCM base64 de 16 bits. |
| language | enum | zh | en, zh, fr, es | Linguagem de reconhecimento. |
Live transcription over a WebSocket at wss://api.empiriolabs.ai/v1/realtime?model=stepaudio-2-5-asr-stream, authenticated with the ordinary Authorization Bearer header. Stream 16 kHz pcm16 audio up with input_audio_buffer.append and read partial results back as the speaker is still talking, with server-side voice activity detection marking where each sentence ends. Use this for live captions and voice input; for a finished recording, StepAudio 2.5 ASR returns the whole transcript in one call. Billing follows the duration of audio you stream, settled when the session closes.
Na EmpirioLabs, StepAudio 2.5 ASR Stream é cobrado por uso: Transcrição $0.18 por hora de áudio. A tabela de tarifas ao vivo desta página sempre corresponde ao que a API cobra.
StepAudio 2.5 ASR Stream é 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. StepAudio 2.5 ASR Stream 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 stepaudio-2-5-asr-stream 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.