Pular para o conteúdo
NotHolyDocs

Guias

Streaming

Receba os tokens conforme são gerados, com server-sent events, em todos os formatos da API.

Ver em Markdown

Defina stream: true. A resposta é text/event-stream. Os eventos são enviados um a um, sem buffer.

curl -N https://api.notholy.com/v1/chat/completions \
  -H "Authorization: Bearer $NOTHOLY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "notholy-specter", "stream": true, "stream_options": {"include_usage": true}, "messages": [{"role": "user", "content": "Define XSS."}]}'

O que esperar

  • Chat completions e text completions terminam com data: [DONE]. O chunk anterior sempre traz usage, com ou sem include_usage.
  • O Responses termina com response.completed (ou response.incomplete quando bate no limite de saída). O Messages termina com message_delta e message_stop. Nenhum dos dois envia [DONE].
  • Pausas longas recebem comentários de keep-alive (formatos da OpenAI) ou eventos ping (Messages).
  • Se o stream cair, você paga só pelos tokens gerados antes da queda.
  • Erros detectados antes de o stream começar (chave, créditos, limites) voltam como um erro JSON normal, com o status HTTP correspondente. Uma falha depois que o stream começou chega como evento de erro no mesmo formato: data: {"error": ...}, response.failed ou um evento error.

Próximos passos