Стримингов ответы токен за токеном через Server-Sent Events. Доступно только для текстовых / LLM-моделей.
Запрос
curl -X POST https://neuralbox.top/api/v2/generate/stream \
-H "Authorization: Bearer nb_ВАШ_API_КЛЮЧ" \
-H "Accept: text/event-stream" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5",
"prompt": "Напиши короткий рассказ о роботе, который учится рисовать"
}'
import requests, json
response = requests.post(
"https://neuralbox.top/api/v2/generate/stream",
headers={
"Authorization": "Bearer nb_ВАШ_API_КЛЮЧ",
"Accept": "text/event-stream"
},
json={"model": "gpt-5", "prompt": "Расскажи историю"},
stream=True
)
for line in response.iter_lines():
if line:
line = line.decode("utf-8")
if line.startswith("data: ") and line != "data: [DONE]":
chunk = json.loads(line[6:])
if chunk.get("type") == "content_delta":
print(chunk["delta"], end="", flush=True)
Формат SSE-событий
data: {"type": "generation_start", "id": 18473, "model": "gpt-5"}
data: {"type": "content_delta", "delta": "Однажды"}
data: {"type": "content_delta", "delta": " в далёкой"}
data: {"type": "generation_end", "id": 18473, "tokens_spent": 3}
data: [DONE]
| Тип события | Поля | Описание |
|---|
generation_start | id, model | Генерация началась |
content_delta | delta | Фрагмент текста |
generation_end | id, tokens_spent | Завершено, данные биллинга |
error | message | Что-то пошло не так |
Стриминг доступен только для текстовых / LLM-моделей. Изображения, видео и аудио не поддерживают стриминг.