Rustvy API
Потоковый ответ
Передайте stream: true, чтобы получать ответ постепенно. Сервер отправляет события SSE с изменениями текста в choices[].delta.content.
Структура потока
data: {"choices":[{"delta":{"content":"Hello"}}]}
data: {"choices":[{"delta":{"content":"!"}}]}
data: [DONE]Пример сокращён. Пустая строка отделяет события, а data: [DONE] означает конец потока. События могут содержать только служебные поля или usage, поэтому проверяйте наличие choices перед чтением текста.
Обработка в Python
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["RUSTVY_API_KEY"],
base_url="https://rustvy.xyz/v1",
)
stream = client.chat.completions.create(
model="gpt-5.6-sol",
messages=[{"role": "user", "content": "Hello"}],
stream=True,
)
for chunk in stream:
if chunk.choices:
print(chunk.choices[0].delta.content or "", end="", flush=True)Сетевой фрагмент не всегда совпадает с полным событием. Если вы читаете поток без SDK, накапливайте данные до пустой строки и только потом разбирайте JSON.