Streaming(ストリーミング)
この記事は約7分で読めます
ざっくり言うと
ストリーミング(Streaming)とは、AIの答えを最後まで待たず、できたところから順に表示する配信のやり方です。
ChatGPTに質問すると、文字が少しずつ書き足されていきますよね。あれがストリーミングです。
裏側では、文章が全部そろってから一度に返しているのではありません。書けた分から少しずつ送る、という配り方です。
AIが考える速さそのものは変わりません。変わるのは答えの渡し方だけです。それでも、最初のひと言は早く目に入ります。
イメージ
じつは、動画を見るときも同じ配り方です。YouTubeは、ファイル全体をダウンロードし終えてから再生するわけではありません。先頭から少しずつ受け取りながら再生します。
これも広い意味でのストリーミングです。AIのストリーミングは、その文章版だと思ってください。
正確には
ここからは、少し技術寄りの話になります。自分のアプリやサイトからAIを呼び出す予定がなければ、読み飛ばして大丈夫です。外部のサービスを自分のプログラムから呼び出す窓口を、APIと呼びます。ストリーミングにするかどうかも、この窓口へのお願いの中で指定するものです。
実際にどう指定するのか、3つのサービスで比べてみましょう。
| サービス | 返ってくる中身 |
|---|---|
| OpenAIのResponses API | stream: trueを付けると、Server-Sent Events(SSE、サーバーから小さな知らせが次々と届く配信のしくみ)で順に返る。文字の追加やツールの呼び出しなど、種類の違う知らせが混ざって届くので、受け取る側で見分けながら処理する |
| AnthropicのMessages API | stream: trueで差分をイベントとして返す。中身は書き足された文章やツールへの入力など。thinking(考えている途中)の差分が届くかどうかは、使うモデルと表示の設定によって変わる |
| GoogleのGemini API | stream: trueの指定があり、2026年7月27日時点のInteractions APIガイドがイベント配信を案内。RESTでの例ではSSEを使用 |
ただし、API名やイベントの形は更新されていきます。実装するときは、各社の現行ガイドに従ってください。
ここまではHTTPとSSEを使う例です。つなぎ方はほかにもあり、OpenAIのWebSocket modeや、GeminiのLive APIがそれにあたります。ストリーミングのAPIがすべてstream: trueとSSEを使うわけではありません。
一括で受け取る場合と、ここが違います
| 観点 | 一括取得(非ストリーミング) | ストリーミング |
|---|---|---|
| 返り方 | 全文ができてから、まとめて1回返す | 書けた先頭から、少しずつ返し続ける |
| 最初の出力が見える時間 | 原則として全文ができたあと | 最初のひとかたまりが届いた時点 |
| 体感の速さ | 待たされる | 読みながら待てる |
| 途中で止める | できあがってから結果を受け取る | 使う側で切れる場合がある。止め方と課金の扱いはAPIごとに確認 |
| 作る手間 | できあがった返事を処理する | 届く順番、エラー、完了の状態を処理する |
| 主な使い道 | まとめ処理、要約結果の保存 | チャット画面、その場での表示 |
実装を助ける道具もあります
Vercel AI SDKは、文章をストリーミングで受け取るstreamTextという関数を公式ドキュメントで案内しています。書き足された文字や各種のイベントを読むためのしくみについても、同じドキュメントに説明があります。
これは実装を楽にする道具の一例です。各社のイベントの形そのものが同じになる、という意味ではありません。
使う場面
ストリーミングが向くのは、長い答えを見せる画面です
効き目が大きいのは、全体の長さに対して、最初の数行から役に立つ情報が出始めるタイプの出力です。長い解説、コードを順に書き出す処理、要約、翻訳などが当てはまります。
- AIチャットの長い回答
- 長い文章の要約
- コードの生成や修正案
- 翻訳や議事録の整形
- 途中で止めたくなることがある処理
最初の数行を見て「方向は合っていそう」と判断できる場面ほど、効果が出やすくなります。
一方、短い分類結果や「はい / いいえ」だけを返す処理では、利点はあまりありません。画面の作りが少し複雑になるぶん、必要な場面に絞ったほうが扱いやすいです。
| 場面 | 相性 |
|---|---|
| チャットで長い回答を見せる | よい |
| 書いている途中の文章を見せる | よい |
| JSONをまとめて次の処理へ渡す | 注意が必要 |
| 分類のラベルを1つ返す | あまり必要ない |
よくある勘違い
途中の表示は、未完成として扱ってください
途中まで表示された文章は、答えとしてはまだ未完成です。完了の知らせ、エラー、切断を確かめてから、完成として扱ってください。保存やコピーをしてよい状態かどうかも、画面ではっきり分かるようにしてください。
実装やツール選びで迷ったら、2つの時間を分けて確かめてください。役に立つ最初の一部が届くまでの時間と、完了の知らせが届くまでの時間です。前者は体感の速さ、後者は処理全体の待ち時間にあたります。
ストリーミングが主によくするのは前者です。そう考えておくと、期待のずれが起きにくくなります。
注意点
関連用語
- 推論 — 学習を終えたモデルが、入力から答えを計算する工程です。
- レイテンシー — 頼んでから答えを受け取るまでの待ち時間です。
- API — 外部のサービスを自分のプログラムから呼び出すための窓口です。
やってみよう
よくある質問
- Q. ストリーミングとは何ですか?
- A. AIの答えを最後まで待たず、できたところから順に表示する配信のやり方です。チャットで文字が少しずつ書き足されていくのが、これにあたります。
- Q. ストリーミングだと、AIの答えは速くなりますか?
- A. AIが考える速さそのものは変わりません。変わるのは答えの渡し方だけです。それでも最初のひと言が早く目に入るので、読みながら待てるぶん体感は早くなります。
- Q. ストリーミングが向いているのは、どんな場面ですか?
- A. 長い答えを画面に見せる場面です。長い解説、要約、翻訳、コードの生成など、最初の数行から役に立つ情報が出始めるものほど効きます。短い分類結果では利点があまりありません。
- Q. 途中まで表示された文章は、そのまま使ってよいですか?
- A. まだ未完成として扱ってください。完了の知らせ、エラー、切断を確かめてから完成とします。途中で止めたときの使用量や課金の扱いは、提供元とAPIによって違います。
公開: 更新: ✓ 公式情報と照合:
参考ソース
判断クイズ
文字が少しずつ出るのは、AIが速くなったからだと思っていませんか?
3問です。答えるとその場で解説が出ます。全問終えたら、「回答を記録する」で学習の記録に残せます。
全問に答えると、回答を記録できます。
残るのは「答えたかどうか」だけで、正解数は保存されません。この端末の中だけに残り、別の端末には引き継がれません。
この教科書は無料で全文公開しています。仕事で使えるところまで進みたい方は、実習と資料がそろった生徒プランをどうぞ。
あわせて読みたい
- AI基礎 | 用語集約6分
レイテンシー(応答速度)
レイテンシー(応答速度)とは、AIに頼んでから答えを受け取るまでの待ち時間です。最初の一言までのTTFT、トークン間の遅延、全体の時間、ストリーミングとの関係を公式資料に沿ってやさしく整理しました。内容を見る - AI基礎 | 用語集約7分
API とは
API(Application Programming Interface)とは、ソフトウェア同士をつなぐ窓口のこと。AIのAPIは、モデルをWebの画面ではなくプログラムから使う方法です。料金・安全・自由度の違いを整理しました。内容を見る - Claude | ツール固有の機能約10分
ClaudeのComputer Use(画面操作)って何?
ClaudeのComputer Useは、Claudeが画面を見ながらクリックや文字入力をして、アプリを操作してくれる機能です。Cowork版の有効化手順、開発者向けAPI版との違い、安全に試すコツをまとめました。内容を見る