これら4つの名前は異なるレイヤーにあります。選定時にまず確認すべき問いは、「誰がエージェントループを実行するのか?」です。Responses APIはモデル呼び出しであり、ループはあなたのコードで実装します。Agents SDKは、アプリケーション内でランナーがループを実行するTypeScript/Pythonライブラリです。2026年9月10日から公開ベータ版のAgents APIは、OpenAIのCodexハーネスを実行し、セッションと任意のサンドボックスを維持します。AgentKitは2025年10月にリリースされたAgent Builder、ChatKit、Connector Registry、Evalsのバンドルで、Agent Builderは2026年11月30日にシャットダウン予定です。
9月29日のDevDayでAgents APIにコンピューター利用機能が追加され、選択肢の違いを理解する重要性が高まりました。詳細はDevDay 2026まとめを参照してください。この記事では、ループの実行主体、コンピューティング、状態、コスト、成熟度を比較し、既存のResponses APIループをAgents APIへ移行する手順を示します。セッションと承認の実装はOpenAI Agents APIガイドも参照してください。HTTPリクエストの検証にはApidogを利用できます。
OpenAIエージェントのオプション比較
| Agents API | Responses API | Agents SDK | AgentKit | |
|---|---|---|---|---|
| 何であるか | Codexハーネス上のマネージドエージェントランタイム | モデルエンドポイント、POST /v1/responses
|
TypeScriptおよびPython用ライブラリ | Agent Builder、ChatKit、Connector Registry、Evalsのバンドル |
| 誰がループを実行するか | OpenAI | あなたのコード | アプリケーション内のSDKランナー | Agent Builderワークフロー、SDKコードへエクスポート、またはChatKitへ組み込み |
| コンピューティングの実行場所 | OpenAIホスト型サンドボックス、独自サンドボックス、またはなし | あなたの環境、およびホスト型ツール | あなたのランタイムとサンドボックスプロバイダー | 該当なし |
| 状態の保存場所 | OpenAIセッション: 設定、ターン、アイテム | 履歴、previous_response_id、またはConversations API |
独自ストレージ、SDKセッション、またはResponsesの状態 | 公開・バージョン管理されたワークフロー |
| 支払い内容 | トークン、ツール、ホスト型コンテナ。追加料金なし | トークンとツール | トークン、ツール、ホスティング費用 | 基盤APIの使用料。個別サブスクリプションなし |
| 統合の労力(OpenAIによる) | 低 | 高 | 中 | 評価なし |
| ステータス | 公開ベータ版(OpenAI-Beta: agents=v1) |
すべての新規プロジェクトに推奨 | 現行 | Agent BuilderとEvalsは2026年11月30日にシャットダウン予定。ChatKitは継続 |
| データ制御 | 米国データレジデンシーのみ。ZDR非対象。削除まで状態を保持 | ZDR対象(制限あり)。地域別エンドポイントあり | 呼び出すAPIに依存 | 該当なし |
出典: OpenAIのエージェントランタイム比較、Agents API概要、非推奨ページ。
誰がループを実行するのか
実装方針は、ループを誰が所有するかで決まります。
Responses API: あなたのコードが実行する
Responses APIでは、独自関数ツールの呼び出しと再実行ループをアプリケーションで処理します。ウェブ検索、ファイル検索、コードインタプリタ、リモートMCPなどのホスト型ツールは1リクエストで複数回呼び出される場合があります。一方、独自関数はfunction_callとして返されます。
実装フローは次のとおりです。
-
POST /v1/responsesを呼び出す - レスポンスの
function_callを検出する - 指定された関数を実行する
- 同じ
call_idを持つfunction_call_outputを次のリクエストへ送る - モデルが最終応答を返すまで繰り返す
履歴の保存方法、停止条件、長いコンテキストを圧縮するタイミングも実装側で決めます。レスポンスはデフォルトで保存されますが、store: falseで無効化できます。長い会話ではcontext_managementとcompact_thresholdを使用します。
実装例はResponses APIガイドと関数呼び出しガイドを参照してください。
Agents SDK: あなたのプロセスが実行する
Agents SDKでは、SDKランナーがエージェントループとハンドオフを処理します。ただし、デプロイメント、ツール実装、状態ストレージ、承認判断はあなたのサーバーが所有します。
この方式は、以下を自分で制御したい場合に適しています。
- 型付きのアプリケーションコードでツールを実装したい
- 認証・認可を自社サービス内に置きたい
- 監査ログや人間による承認フローを管理したい
- ストレージと会話状態の保存先を制御したい
サンドボックスエージェントを使用する場合も、ハーネスは自分のインフラストラクチャに置けます。コマンドはUnixローカル、Docker、またはホスト型プロバイダーのワークスペースで実行し、認証・監査ログ・人間レビューはコンテナ外で維持できます。
Agents API: OpenAIが実行する
Agents APIでは、OpenAIのマネージドハーネスがセッション、オーケストレーション、コンテキスト圧縮、リカバリを処理します。サブエージェント、ツール検索、プログラムによるツール呼び出しも利用できます。リモートMCPサーバーはOpenAIが直接呼び出します。
独自関数ツールを使う場合のみ、アプリケーション側で結果を返します。セッションがrequired_actions内にfunction_callを報告したら、turn_idとcall_idを含むagent.session.input.tool_resultイベントを送信します。
同じタスクを両方のAPIで実行する例です。
# Responses API: 1回のモデル呼び出し。ループはあなたのコードが所有する
curl https://api.openai.com/v1/responses \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-6.1-sol",
"reasoning": {"effort": "low"},
"tools": [{"type": "web_search"}],
"input": "Summarize the breaking changes in the latest Node.js release."
}'
# Agents API: 永続的なセッション。ループはOpenAIが所有する
curl https://api.openai.com/v1/agents/sessions \
-H "OpenAI-Beta: agents=v1" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"agent": {
"model": "gpt-6-astra",
"tools": [{"type": "web_search"}]
},
"environment": {"type": "none"},
"input": "Summarize the breaking changes in the latest Node.js release."
}'
Agents APIドキュメントの例ではgpt-6-astraが使われています。他モデルが受け入れられるかは明記されていないため、gpt-6.1-solなどに変更する前に確認してください。
コンピューティング、状態、コスト
コンピューティング
Agents APIでは、セッションに対するサンドボックスをプロビジョニング・管理できます。environment.typeには次の値を設定します。
openai_hostedself_hostednone
Agents SDKでは、サンドボックスプロバイダーの選定とコスト負担はあなた側です。Responses APIでは、ホスト型ツールを除くコードはあなたが実行する環境で動作します。
状態
状態管理の実装は選択肢ごとに異なります。
- Agents API: OpenAI側のセッションが設定、ターン、アイテムを保持する。同じセッションIDにイベントを送って会話を継続する。
-
Responses API:
previous_response_idでレスポンスを連結するか、Conversations APIを利用する。 - Agents SDK: 独自ストレージ、SDKセッション、またはResponses APIの状態管理を利用する。
コスト
同じモデルを呼び出す場合、トークン価格は選択肢によらず同じです。違いは実行環境の費用です。
- Agents API: 追加料金なし。ただしホスト型コンテナには20分セッションあたり0.03ドル(1GB)から0.48ドル(16GB)の費用がかかる。
- Agents SDK: トークン・ツール費用に加え、自分で運用するホスティング費用がかかる。
- AgentKit: 個別サブスクリプションはない。詳細はAgentKit解説を参照。
データ要件
Agents APIは米国データレジデンシーのみをサポートし、自己ホスト型サンドボックスを使用する場合もZDRをサポートしません。OpenAIのデータ管理ページでは、/v1/agentsはZDR対象外で、状態は削除されるまで保持されると説明されています。
一方、/v1/responsesは制限付きでZDR対象であり、eu.api.openai.comなど地域別エンドポイントを使用できます。ZDRまたはEUデータレジデンシーが必須なら、現時点でAgents APIは選択肢から除外します。
2026年後半のAgentKit: 残されたもの
AgentKitは2025年10月6日に4要素としてリリースされました。現在の扱いを確認しておきましょう。
- Agent Builder: 2026年6月3日に非推奨が発表され、2026年11月30日にシャットダウン予定です。移行ガイドに従い、ワークフローをAgents SDKコードへエクスポートするか、ビジネス・エンタープライズ・教育機関向けのChatGPT Workspace Agentとして再作成します。
- Evals: 既存評価は2026年10月31日に読み取り専用となり、ダッシュボードとAPIは11月30日にシャットダウン予定です。
- ChatKit: 組み込みチャットUIとして継続利用できます。
- Connector Registry: OpenAI製品全体でコネクタとMCPサーバーを管理するパネルです。
耐久性のあるコードファーストの移行先はAgents SDKです。詳細はAgentKitガイドを参照してください。
どれを基盤にするか
| 選択肢 | 選ぶ条件 |
|---|---|
| Agents API | タスクが数分間実行され、ファイル・コマンド・ブラウザを使う。ループ、サンドボックス、セッションストレージを運用したくない。米国レジデンシーとベータヘッダーを許容できる。 |
| Responses API | 単一呼び出しから始めたい。全ターンを制御したい。ZDRまたは米国外のデータレジデンシーが必要。すでに動作する独自ループがある。 |
| Agents SDK | 型付きアプリケーションコードでツール、ストレージ、承認、ハンドオフを所有したい。ループを自社インフラストラクチャで実行する必要がある。 |
| ChatKit | プロダクトへ組み込みチャットUIを追加したい。 |
| Agent Builder | 新規開発の開始点にはしない。既存ワークフローは2026年11月30日までにエクスポートする。 |
AWSでは、OpenAIを搭載したBedrock Managed Agentsにより、Agents APIのコア機能をAWSネイティブで実行できます。コードファーストのいずれの方式でもMCPを接続する場合は、OpenAIエージェントによるMCPサーバーを参照してください。
独自のResponsesループからAgents APIへの移行
Responses APIでループを実装済みで、実行をOpenAIへ委譲したい場合は次の順序で移行します。
要素をマッピングする
命令、モデル、ツールはagentへ移します。コンテナ設定はenvironmentへ移し、会話ストアはセッションIDに置き換えます。リモートMCPサーバーを
agent.toolsへ移す
トークンをプロンプトへ含めず、vault_idsでアタッチするボールトに格納します。-
関数ツール処理を書き換える
function_call_outputを送るResponses APIループを、次のハンドラへ置き換えます。- ストリーム利用時:
agent.session.requires_action - Webhook利用時:
agent.session.action_required
- ストリーム利用時:
ハンドラではagent.session.input.tool_resultを返します。サブエージェントは関数ツールを呼び出せないため、関数ツールはメインエージェントに残します。
独自の圧縮処理を削除する
Agents APIのハーネスがコンテキストを自動圧縮します。-
ポーリングではなくイベントを監視する
以下のターン結果イベントをストリームまたはWebhookで処理します。agent.session.turn.completedagent.session.turn.failedagent.session.turn.cancelled
セッションがアイドル状態であることは、成功を意味しません。
-
制約をデプロイ前に確認する
米国データレジデンシーのみ、ZDR非対応、
OpenAI-Beta: agents=v1ヘッダー必須という条件を確認します。
Apidogプロジェクトで両方を管理する
移行前に旧実装と新実装を並行してテストします。1つのApidogプロジェクト内で、次の構成を作成してください。
OpenAI Agent Migration/
├── Responses/
│ ├── Create response
│ └── Submit function_call_output
├── Agents API/
│ ├── Create session
│ ├── Send tool result
│ └── Stream turn events
└── Environments/
└── OPENAI_API_KEY, MODEL
実施手順は次のとおりです。
-
ResponsesとAgents APIのフォルダーを作成する。 -
{{OPENAI_API_KEY}}とモデル変数を持つ共通環境を作成する。 - 両方の実装に同一プロンプトを送信する。
- ステータスコードと必須出力フィールドをアサートする。
- Agents APIのストリームをSSEリクエストとして開き、ターンイベントを確認する。
- 実行をテストシナリオとして保存する。
- Apidog CLIでCI実行し、ベータ版の仕様変更を失敗したチェックとして検出する。
アサート対象の設計は本番AIエージェントの信頼性ガイドを参照してください。Apidogをダウンロードして、まず既存Responses APIリクエストをインポートするところから始めましょう。
よくある質問(FAQ)
Agents APIはResponses APIに置き換わるものですか?
いいえ。非推奨の発表はありません。OpenAIのエージェント概要では、Agents API、Agents SDK、Responses APIが異なるニーズに対応する選択肢として示されています。
OpenAI AgentKitは非推奨ですか?
部分的に非推奨です。Agent BuilderとEvalsは2026年11月30日にシャットダウン予定ですが、ChatKitは継続します。
Agents SDKはAgents APIを使用しますか?
いいえ。Agents SDKはあなたのアプリケーション内で動作し、Agents APIはOpenAIサービス内でマネージドハーネスを動作させます。
Assistants APIはどうなりましたか?
OpenAIの非推奨ページによると、2026年8月26日に削除予定です。開発者にはResponses APIとConversations APIの使用が推奨されています。
最も安価な選択肢はどれですか?
トークン価格は共通です。差が出るのは、Agents APIのホスト型コンテナ費用と、SDKまたはResponses APIで自己ホストする際のインフラ費用です。
今週中に1つのパスを選択する
まず、エージェントループを誰が実行すべきかを決めてください。その後、アプリケーション実装の前にHTTPリクエストで検証します。
新規プロジェクトでは、まず1つのAgents APIセッションを作成し、Apidogで既存のResponses API設定と同じプロンプトを実行して比較するのが実践的です。
Top comments (0)