
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 expõe o ponto final padrão /v1/audio/transcriptions e retorna a transcrição final no formato normal de resposta de transcrição.
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 | Encoding of the audio you append to the input buffer: base64 16-bit PCM. |
| language | string | - | - | Optional language hint. Omit to let the model detect it. |
Transcrição ao vivo por WebSocket em wss://api.empiriolabs.ai/v1/realtime?model=stepaudio-2-5-asr-stream, autenticada com o cabeçalho comum Authorization Bearer. Transmita áudio pcm16 de 16 kHz com input_audio_buffer.append e leia resultados parciais enquanto o falante ainda está falando, com a detecção de atividade de voz do lado do servidor marcando onde cada frase termina. Use isso para legendas ao vivo e entrada de voz; para uma gravação finalizada, o POST /v1/audio/transcriptions retorna a transcrição completa em uma única chamada. A faturação segue a duração do áudio que você transmite, definida quando a sessão termina.
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.
StepAudio 2.5 ASR Stream funciona sobre um WebSocket em vez de requisição e resposta, então 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.