Документация · Стриминг
Стриминг
Ответ по частям, как в официальных API.
Стриминг включается параметром stream: true и идёт в формате Server-Sent Events, в тех же событиях, что у OpenAI и Anthropic. SDK разбирают его сами.
| Эндпоинт | События |
|---|---|
/v1/chat/completions | чанки chat.completion.chunk, в конце data: [DONE] |
/v1/responses | response.created … response.output_text.delta … response.completed с sequence_number |
/v1/messages | message_start, content_block_delta, message_delta, message_stop |
stream = client.chat.completions.create(
model="gpt-5.4-mini",
messages=[{"role": "user", "content": "Напиши короткое стихотворение"}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)- Пока модель думает, сервер шлёт пинги раз в 15 секунд, чтобы соединение не закрыли прокси.
- Если клиент отключился, генерация всё равно завершится и будет оплачена. Чтобы продолжить чтение после обрыва, используйте Responses в фоне со стримингом.
stream_options.include_usageв Chat Completions добавляет перед[DONE]чанк сusage.