| 2026年5月26日 | v1.0 | 初版公開。Gemini Interactions API(v1beta)May 2026破壊的変更・stepsスキーマ移行・response_format刷新・初心者向け移行ガイドを掲載 |
Google GeminiのInteractions API(v1beta)で、2026年5月26日から大規模な「破壊的変更(Breaking Changes)」が適用されています。「APIって何?」という方にもわかるよう、変更内容・理由・具体的な対応手順を丁寧に解説します。6月8日までに対応しないとコードが動かなくなりますので、早めにご確認ください。
Interactions APIの旧スキーマ(outputs配列)は2026年6月8日に完全廃止されます。それ以降は旧コードが動作しなくなります。新しい「stepsスキーマ」への移行は今すぐ始めてください。
2026年5月、GoogleのAI開発者向けAPI「Gemini Interactions API(v1beta)」に、過去最大級の仕様変更が行われました。これは単なるマイナーアップデートではなく、AIの動作モデルそのものを「テキスト生成」から「エージェント型の自律実行」へと根本から転換する、開発者にとって非常に重要なアップデートです。
この記事では、エンジニア・開発者の方はもちろん、「APIって何?」というプログラミング初心者の方にも理解できるよう、変更の内容・背景・具体的な移行方法をわかりやすく解説します。
- Interactions APIとは何か(そもそもの基礎)
- 今回の変更点(outputs → steps、response_format刷新)
- 変更のタイムラインと移行制御の方法
- ストリーミングSSEイベントの新仕様
- SDK・コードの具体的な移行手順チェックリスト
- Googleが今回の変更を行った戦略的背景
📌 この記事の内容
- Interactions APIとは?(基礎から解説)
- 変更のタイムライン・スケジュール
- コア変更①:outputsからstepsスキーマへ
- コア変更②:response_mime_typeの廃止とresponse_format
- ストリーミングSSEイベントの新仕様
- 開発者向け:具体的な移行手順
- 変更の背景:Googleの戦略的意図
- まとめ
🔍 Interactions APIとは?(基礎から解説)
たとえば、あなたが作ったアプリからGemini(GoogleのAI)に「この文章を要約して」と依頼するとき、その依頼と回答の受け渡しを担うのがAPIです。
その中でも Interactions API は、AIがツールを使ったり、複数ステップで考えたりする「高度な会話・エージェント処理」に特化した新世代のAPIです。従来の
generateContent API と比べて、AIの「思考プロセス」や「ツール実行」を細かく追跡・制御できます。
Gemini Interactions API(v1beta)は、Googleが新世代AI開発のために提供する実験的なAPIです。従来のgenerateContent APIがテキストを1回生成して返すシンプルな設計だったのに対し、Interactions APIは「AIエージェントが複数のステップを踏んで自律的にタスクを実行する」ワークフロー向けに設計されています。
| 比較項目 | 従来のgenerateContent API | 新Interactions API |
|---|---|---|
| 処理モデル | 1問1答(ステートレス) | 複数ステップ自律実行(エージェント型) |
| 履歴管理 | クライアント側で手動管理 | サーバー側で自動管理 |
| ツール実行 | 限定的 | Google検索・コード実行・関数呼び出しなど統合 |
| 処理の可視化 | 最終結果のみ | 各ステップ(思考・検索・実行)をリアルタイムで追跡可能 |
| 本番利用推奨 | ✅ 安定版として推奨 | ⚠️ v1betaのため変更あり(今後の主力API) |
今回の破壊的変更は Interactions APIのみ が対象です。generateContent APIを使っているアプリは影響を受けません。ただし、今後GoogleはInteractions APIを通じてのみ最新モデルや先進機能を提供していく方針のため、長期的には移行検討が必要です。
📅 変更のタイムライン・スケジュール
今回の変更には明確な期限が設けられています。対応を先延ばしにすると、本番サービスが突然停止するリスクがあります。必ずスケジュールを確認してください。
-
2026年5月20日(移行窓口オープン)新スキーマへの事前移行が可能に。リクエストヘッダー
Api-Revision: 2026-05-20で新スキーマに切り替えてテスト可能 -
2026年5月26日(本日・新スキーマがデフォルト化)本日適用新スキーマが既定の動作になりました。旧スキーマへの一時的な切り戻しには
Api-Revision: 2026-05-07が必要 -
2026年6月8日(旧スキーマ完全廃止)最終期限レガシーschema(outputs配列)が完全に削除されます。この日以降は旧コードが一切動作しません。猶予なし
5月26日〜6月8日の2週間は「安全な延長期間」ではなく、あくまで最終対応期間です。本番サービスへの影響を避けるため、できるだけ早く移行を完了させることを強く推奨します。
移行期間中の版(Api-Revision)の制御方法
移行期間中は、リクエストヘッダーに Api-Revision を指定することで、適用するスキーマのバージョンを細かく制御できます。
| Api-Revisionヘッダーの値 | 効果 | 有効期間 |
|---|---|---|
Api-Revision: 2026-05-20 |
新スキーマ(steps)を先行適用 | 5月26日まで有効 |
| (ヘッダーなし) | 5/26以降は自動的に新スキーマが適用 | 5月26日以降の既定 |
Api-Revision: 2026-05-07 |
旧スキーマ(outputs)に一時的に切り戻し | 6月8日まで。その後完全廃止 |
🔄 コア変更①:outputsからstepsスキーマへ
今回の変更で最も影響が大きいのが、モデルの応答を格納する配列の構造変更です。
outputs(旧):AIが最終的に生成したテキストだけを入れるシンプルな箱。
steps(新):AIが「考えた」「検索した」「結果を受け取った」「最終回答した」という一連の過程を、時系列順に記録する構造化された箱。
変更の概要
コードで比較:何がどう変わるか
Before(旧スキーマ)- Python
After(新スキーマ)- Python
Before(旧スキーマ)- JavaScript
After(新スキーマ)- JavaScript
stepsの種類と構造
新しいsteps配列には、AIの処理過程に応じた複数の「ステップタイプ」が格納されます。
| ステップタイプ | 意味 | 取得元 |
|---|---|---|
user_input |
ユーザーが送った入力内容 | GET /interactions/{id}のみ |
model_output |
AIが生成した最終テキスト・マルチモーダル出力 | POST/GETどちらでも取得可 |
thought |
AIの内部思考プロセス(Thinking機能) | POST/GETどちらでも取得可 |
google_search_call |
Google検索ツールの呼び出し内容 | POST/GETどちらでも取得可 |
google_search_result |
Google検索の結果 | POST/GETどちらでも取得可 |
function_call |
カスタム関数呼び出し(Function Calling) | POST/GETどちらでも取得可 |
code_execution |
コード実行ステップ | POST/GETどちらでも取得可 |
POST /interactions(新規作成)では、出力ステップのみが返されます。GET /interactions/{id}(履歴取得)では、user_inputステップを含む完全なタイムラインが返されます。
会話履歴の引き継ぎ方
ステートレスに会話履歴を管理する場合、このsteps配列をそのまま次のリクエストのinputフィールドに渡す設計になっています。サーバー側で状態を持たせる場合は store=true(デフォルト)を使い、previous_interaction_idを指定するだけでOKです。
🎨 コア変更②:response_mime_typeの廃止とresponse_format
もう1つの重要な変更が、出力フォーマットの設定方法です。従来のシンプルなresponse_mime_typeパラメーターが廃止され、より柔軟なresponse_formatオブジェクトへと統合されました。
例えば「テキストで返して」「JSON形式で返して」「画像も一緒に返して」といった指定が、以前は
response_mime_type という1つの設定でした。今後は response_format という、より詳細に指定できる仕組みに変わります。
変更点の概要
コードで比較
Before(旧:JSON出力の指定方法)
After(新:response_formatでの指定)
マルチモーダル出力(テキスト+画像)の設定例
従来
generation_config 内に存在した画像生成設定(aspect_ratio・image_sizeなど)は、response_format 内の "type": "image" エントリに移動されました。既存の画像生成コードは必ずこの点を修正してください。
📡 ストリーミングSSEイベントの新仕様
SSE(Server-Sent Events)とは、サーバーからブラウザへリアルタイムでデータを送り続ける技術の一種です。
ストリーミングで出力を受け取る際のSSEイベントが再定義され、AIが「今何をしているか」をリアルタイムでUIに反映しやすくなりました。
| 新SSEイベントタイプ | タイミング・意味 | UI活用例 |
|---|---|---|
interaction.created |
セッション開始時 | ローディングスピナーの表示開始 |
interaction.in_progress |
処理中 | 「AIが考えています…」のテキスト表示 |
step.start |
各ステップ(思考・ツール実行など)の開始 | 「🔍 Google検索中…」などの中間表示 |
step.delta |
ストリーミング中のデータの断片 | テキストを1文字ずつリアルタイムで表示 |
step.stop |
該当ステップの終了 | 中間表示の非表示・次ステップへの切り替え |
interaction.requires_action |
クライアント側のアクション(関数実行など)待ち | 「ユーザーの承認を待っています」の表示 |
interaction.completed |
セッション完了 | ローディングスピナーの非表示・完了アニメーション |
これらのイベントを活用することで、「AIが今どの段階にいるか」をユーザーにリアルタイムで伝えるリッチなUIが容易に構築できます。たとえば「💭 思考中」「🔍 検索中」「✍️ 回答作成中」といった段階的なローディング表示が実現できます。
🛠️ 開発者向け:具体的な移行手順
① SDKのアップデート(最初にやること)
Interactions APIを新スキーマで使うには、最新のSDKが必須です。まず以下のバージョン以降にアップデートしてください。
SDK v2.0.0以降は自動的に新スキーマ(steps)を使用します。旧SDK(
google-generativeai・@google/generative-ai)は非推奨・廃止済みのため、絶対に使用しないでください。
② コード移行チェックリスト
以下の項目を順番にチェックしながらコードを修正してください。
-
outputs → steps へのアクセス方法を変更する
interaction.outputs[0].textをinteraction.steps[-1].content[0].textに書き換える(Python)
interaction.outputs[0].textをinteraction.steps.at(-1).content[0].textに書き換える(JavaScript) -
response_mime_type を response_format に移行する
response_mime_type="application/json"をresponse_format=[{"type": "text", "mime_type": "application/json"}]に変更 -
generation_config内のimage_configを移動する
generation_config内のaspect_ratioやimage_sizeを、response_formatの"type": "image"エントリ内に移動 -
Function Calling(カスタム関数呼び出し)を修正する
steps配列内から"type": "function_call"のステップを検知・抽出する処理に変更 -
ストリーミング処理のSSEイベントハンドラーを更新する
新しいイベントタイプ(step.start・step.delta・step.stopなど)に対応したハンドラーを実装 -
テスト環境で動作確認後、本番に適用する
Api-Revision: 2026-05-20ヘッダーを使ってステージング環境で先行テスト → 問題なければ本番適用
③ コーディングエージェントによる自動移行(推奨)
Gemini CLIやJulesなどの自律型コーディングエージェントを活用すれば、移行作業を自動化できます。
1. Gemini CLIまたはJulesを起動
2. 開発環境のディレクトリで Gemini Docs MCP に接続し、
gemini-interactions-api スキルをインストール3. 上記コマンドを実行すると、AIがソースコードを自動解析し、新スキーマに準拠したコードにリファクタリングしてくれる
🎯 変更の背景:Googleの戦略的意図
なぜGoogleはこれほど大きな変更を短期間で実施したのでしょうか?その背景には明確な戦略があります。
「チャットボット」から「自律エージェント」へ
今回の破壊的変更は、AIを単なる「テキスト生成機」から「自律してタスクを実行するエージェント」へと進化させるための基盤整備です。従来のステートレスなgenerateContent APIでは、AIが複数のステップを踏んで問題を解決したり、ツールを自律的に組み合わせたりすることが困難でした。新しいstepsスキーマはこれを可能にする構造的な変革です。
開発者が今すぐ移行すべき理由
| 理由 | 詳細 |
|---|---|
| ⚠️ 6/8以降、旧コードが停止 | 最も直接的な理由。対応を怠ると本番サービスが動作しなくなる |
| 🚀 最新モデルへのアクセス | Gemini 3.5 Flashをはじめ、今後の先進モデルはInteractions API経由でのみ提供される方針 |
| 🔍 デバッグ・監視の向上 | stepsスキーマにより、AIの処理過程を細かく追跡できるため、問題の特定が容易になる |
| 🎨 リッチなUIの実現 | 新SSEイベントを活用し、AIの思考・ツール実行状態をリアルタイムでユーザーに見せるUXが構築できる |
📝 まとめ:今すぐ移行を始めよう
Google Gemini Interactions API(v1beta)の2026年5月変更は、AIの動作パラダイムを根本から転換する重要なアップデートです。対応を先延ばしにすると6月8日に本番コードが停止します。今すぐ以下のポイントを確認してください。
- 📅 本日(5/26)から新スキーマがデフォルト適用——
Api-Revisionヘッダーで移行を制御可能 - ⏰ 6月8日が旧スキーマの最終廃止日——それ以降は旧コードが一切動作しない
- 🔄 responses.outputs → steps[-1].content[0].text へのアクセス変更——最重要の書き換えポイント
- 🎛️ response_mime_type は廃止、response_format 配列を使用——JSON・画像・音声の出力設定が統合
- 📡 新SSEイベントでリッチなUIが実現——step.start / step.delta / step.stop を活用
- 📦 SDK v2.0.0以降に必ずアップデート——旧SDK(google-generativeai等)は廃止済み
- 🤖 Gemini CLIの自動移行コマンドも活用可——
/gemini-interactions-api migrateで自動リファクタリング
まずは開発・ステージング環境でSDKをアップデートし、stepsを使ったコードに書き換えることから始めましょう。公式の移行ガイドも合わせてご参照ください。

