Стриминг ответа
Стриминг ответа — режим доставки, при котором токены языковой модели передаются клиенту по мере генерации, без ожидания полного ответа. Снижает воспринимаемую задержку: пользователь видит начало текста через доли секунды после отправки запроса.
Стриминг ответа (response streaming) — протокол доставки, при котором сервер отправляет каждый сгенерированный токен клиенту немедленно, не буферизируя полный ответ. Для конечного пользователя это выглядит как постепенное «напечатывание» текста — поведение, ставшее привычным по интерфейсам ChatGPT, Claude и большинства современных AI-ассистентов с момента их массового распространения в 2023 году.
На транспортном уровне стриминг реализуется через Server-Sent Events (SSE) — лёгкий HTTP-механизм однонаправленной потоковой передачи, или через WebSocket для двунаправленной связи. OpenAI API стандартизировал параметр stream: true и формат событий «data: {chunk}\n\n», который стал де-факто стандартом для большинства совместимых API, включая Anthropic, Mistral и Groq. Время до первого токена (TTFT) при стриминге определяет, как быстро начнётся отображение ответа; дальнейшая скорость зависит от TPOT модели.
Психологический эффект стриминга значителен: пользователь, видящий нарастающий текст, воспринимает систему как более отзывчивую, даже если суммарное время генерации не изменилось. Для длинных ответов (тысячи токенов) без стриминга ожидание достигает десятков секунд — неприемлемо для интерактивных приложений. Стриминг также позволяет клиенту прервать генерацию, получив нужный фрагмент, не дожидаясь её завершения.
К 2026 году стриминг поддерживается всеми ведущими LLM API и открытыми серверами инференса (vLLM, llama.cpp, Ollama). В голосовых приложениях стриминг объединяется с потоковым синтезом речи: первые слова TTS-системы озвучиваются ещё до завершения генерации полного предложения, создавая разговорный опыт с суммарной задержкой ниже 500 мс — порога, при котором диалог воспринимается как естественный.