AI Powered SaaS: Stripe + Auth + Billing + Deploy · Урок

Потоковая передача ответов искусственного интеллекта

Научитесь передавать токены из модели искусственного интеллекта в реальном времени, чтобы пользователи видели постепенное появление ответа, не дожидаясь его полного формирования.

Урок 4 из 413 шагов

«Потоковая передача ответов искусственного интеллекта» — бесплатный урок AI Powered SaaS: Stripe + Auth + Billing + Deploy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения AI Powered SaaS: Stripe + Auth + Billing + Deploy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс AI Powered SaaS: Stripe + Auth + Billing + Deploy содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Why Stream Responses?

Large language models can take several seconds to produce a full answer. Streaming sends tokens to the client as they are generated, so the user sees text appear word by word.

  • Lower perceived latency
  • Users can start reading immediately
  • Feels conversational, like a chat

How Streaming Works

Streaming relies on a long-lived HTTP connection. The server keeps the response open and pushes chunks as they arrive from the model provider.

Two common transports are Server-Sent Events and chunked HTTP responses. Most AI SDKs default to SSE.

Enabling Stream Mode

Most AI APIs accept a stream: true flag. Instead of a single JSON object you receive a sequence of small JSON events, each containing a piece of the answer.

const response = await client.chat.completions.create({
  model: "gpt-4o-mini",
  stream: true,
  messages: [{ role: "user", content: "Explain streaming." }],
});

Reading the Stream on the Server

The SDK returns an async iterable. You loop over it and forward each delta to your client.

for await (const chunk of response) {
  const token = chunk.choices[0].delta.content || "";
  process.stdout.write(token);
}

Forwarding to the Browser with SSE

Wrap each token in an SSE data: frame. Set the right headers so the browser keeps the connection open.

res.setHeader("Content-Type", "text/event-stream");
res.setHeader("Cache-Control", "no-cache");
for await (const chunk of aiStream) {
  const t = chunk.choices[0].delta.content || "";
  res.write("data: " + JSON.stringify({ t }) + "\n\n");
}
res.end();

Consuming the Stream in the UI

On the client, use the EventSource API or fetch with a reader. Append each token to your displayed message state.

const es = new EventSource("/api/chat");
es.onmessage = (e) => {
  const { t } = JSON.parse(e.data);
  setMessage((prev) => prev + t);
};

Showing a Typing Indicator

While tokens stream in, show a blinking cursor or animated dots. Remove it once the stream closes. This reinforces the feeling that the AI is actively responding.

Handling Stream Errors

Connections can drop mid-stream. Always handle the error event and close the source. Offer a retry button and keep whatever partial text was already received.

es.onerror = () => {
  es.close();
  showRetry();
};

Cancelling a Stream

Let users stop a long answer. With fetch you abort via an AbortController; with EventSource you call close(). Cancelling also saves token cost.

const controller = new AbortController();
fetch("/api/chat", { signal: controller.signal });
// later:
controller.abort();

Cost and Token Accounting

Streaming does not change billing: you still pay for total tokens generated. Count tokens as they arrive, or read the final usage event some providers send when the stream ends.

Backpressure and Buffering

If the client reads slower than the model produces, tokens queue up. Most runtimes handle this automatically, but for very high throughput consider buffering small batches of tokens before flushing to reduce write overhead.

Quick Check

Test your understanding of streaming AI responses.

Recap

You learned to stream AI responses end to end:

  • Enable stream: true on the API call
  • Iterate over chunks server-side and forward via SSE
  • Append tokens in the UI with a typing indicator
  • Handle errors, cancellation, and token accounting

Streaming makes AI features feel fast and conversational.

Можно начать бесплатно

Изучай AI Powered SaaS: Stripe + Auth + Billing + Deploy с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
12
Уроки
48

Часто задаваемые вопросы

Урок «Потоковая передача ответов искусственного интеллекта» бесплатный?

Да — полный текст урока «Потоковая передача ответов искусственного интеллекта» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс AI Powered SaaS: Stripe + Auth + Billing + Deploy, подпишись на CoddyKit PRO. Курс AI Powered SaaS: Stripe + Auth + Billing + Deploy содержит 4 уроков всего.

Чему я научусь в уроке «Потоковая передача ответов искусственного интеллекта»?

Научитесь передавать токены из модели искусственного интеллекта в реальном времени, чтобы пользователи видели постепенное появление ответа, не дожидаясь его полного формирования. Ты практикуешь AI Powered SaaS: Stripe + Auth + Billing + Deploy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать AI Powered SaaS: Stripe + Auth + Billing + Deploy?

Предыдущий опыт не требуется. AI Powered SaaS: Stripe + Auth + Billing + Deploy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Потоковая передача ответов искусственного интеллекта»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке AI Powered SaaS: Stripe + Auth + Billing + Deploy?

Да. Каждый урок AI Powered SaaS: Stripe + Auth + Billing + Deploy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Интеграция API сервисов искусственного интеллекта
  2. Основы разработки промптов
  3. Встраивание искусственного интеллекта в пользовательский интерфейс
  4. Потоковая передача ответов искусственного интеллекта
← Назад к AI Powered SaaS: Stripe + Auth + Billing + Deploy