Zenn
Open2

OpenAIの「Agents SDK」を試す

kun432kun432

公式の記事。以前試したSwarmをベースにエージェント専用SDKとしてリリースされたという感じ。

https://openai.com/ja-JP/index/new-tools-for-building-agents/

公式ドキュメント

https://platform.openai.com/docs/guides/agents

Agents

OpenAI API を使用してエージェントを構築する方法を学びます。
エージェントとは、単純なワークフローの実行から複雑で幅広い目的の追求まで、知的にタスクを遂行するシステムを指します。

OpenAI は、エージェント構築を可能にする豊富なコンポーザブルプリミティブを提供しています。このガイドでは、それらのプリミティブと、それらがどのように結合して堅牢なエージェントプラットフォームを形成するかについて説明します。

概要

エージェントの構築は、モデル、ツール、知識とメモリ、オーディオとスピーチ、ガードレール、およびオーケストレーションなど、複数のドメインにまたがるコンポーネントの組み合わせを含みます。OpenAI は各ドメインに対してコンポーザブルプリミティブを提供しています。

ドメイン 説明 OpenAIの基本構成要素
モデル 推論、意思決定、およびさまざまなモダリティの処理が可能な中核的な知能。 o1, o3-mini, GPT-4.5, GPT-4o, GPT-4o-mini
ツール 世界とのインターフェース、環境との相互作用、関数呼び出し、内蔵ツールなど。 Function calling, Web検索, ファイル検索, Computer use
知識とメモリ エージェントに外部かつ永続的な知識を拡張します。 ベクトルストア, ファイル検索, Embeddings
音声とスピーチ オーディオを理解し、自然言語で応答できるエージェントを作成します。 オーディオ生成, リアルタイム, オーディオエージェント
ガードレール 不適切、有害、または望ましくない行動を防止します。 モデレーション, 指示のヒエラルキー
オーケストレーション エージェントの開発、展開、監視、および改善を行います。 Agents SDK, トレーシング, 評価, ファインチューニング
音声エージェント オーディオを理解し、自然言語で応答できるエージェントを作成します。 Realtime API, Agents SDKの音声サポート

モデル

モデル エージェントとしての強み
o1 and o3-mini 長期計画、困難なタスク、および推論に最適。
GPT-4.5 エージェント実行に最適。
GPT-4o エージェント能力と待機時間のバランスが良好。
GPT-4o-mini 低待機時間に最適。

大規模言語モデル(LLMs)は、多くのエージェントシステムの中核を担っており、意思決定や世界との相互作用を担当します。OpenAI のモデルは、以下の幅広い機能をサポートしています:

詳細なモデル比較については、モデルページをご覧ください。

ツール

ツールは、エージェントが世界と相互作用することを可能にします。OpenAI は、あなたのコードと接続するためのfunction callingと、ウェブ検索やデータ取得などの一般的なタスク向けのビルトイン・ツールをサポートしています。

Tool Description
Function calling 開発者が定義したコードと対話します。
Web検索 ウェブから最新の情報を取得します。
ファイル検索 ドキュメント全体で意味的検索を実行します。
Computer use コンピュータまたはブラウザを理解し、制御します。

知識とメモリ

知識とメモリは、エージェントが初期のトレーニングデータを超えた情報を保存、取得、および利用するのに役立ちます。Vector stores により、エージェントはドキュメントを意味的に検索し、実行時に関連情報を取得することができます。一方、embeddings は、迅速な取得を可能にするためにデータを効率的に表現し、動的な知識ソリューションおよび長期のエージェントメモリを強化します。OpenAI の ベクトルストア および Embeddings API を使用して、あなたのデータを統合することができます。

ガードレール

ガードレールは、エージェントが安全かつ一貫して、意図した範囲内で動作することを保証します。これは本番環境での展開において重要です。OpenAI の無料 モデレーションAPI を使用して、不安全なコンテンツを自動的にフィルタリングします。さらに、開発者が定義したプロンプトを優先して、望ましくないエージェントの行動を軽減する指示のヒエラルキー を活用することで、エージェントの行動を制御できます。

オーケストレーション

エージェントの構築はプロセスです。OpenAI は、エージェントシステムの構築、展開、監視、評価、および改善を効果的に行うためのツールを提供しています。


referred from https://platform.openai.com/docs/guides/agents

フェーズ 説明 OpenAIの基本構成要素
構築とデプロイ Agents SDK を使用してエージェントを迅速に構築し、ガードレールを適用し、対話フローを処理します。 Agents SDK
モニタリング エージェントの動作をリアルタイムで観察し、問題のデバッグとトレーシングによる洞察を得ます。 トレーシング
評価と改善 エージェントのパフォーマンスを測定し、改善すべき点を特定し、エージェントを洗練させます。 評価, ファインチューニング

始めよう

OpenAI Agents SDK for Pythonをインストールして開始してください:

pip install openai-agents

詳細については、リポジトリドキュメントを参照してください。

kun432kun432

GitHubレポジトリ

https://github.com/openai/openai-agents-python

OpenAI Agents SDK

OpenAI Agents SDK は、マルチエージェントのワークフローを構築するための、軽量かつ強力なフレームワークです。

コアコンセプト

  1. Agents: 指示、ツール、ガードレール、およびハンドオフで構成された LLM
  2. Handoffs: エージェント間で制御を移譲するために Agents SDK専用のツール呼び出し
  3. Guardrails: 入出力の検証のための設定可能な安全チェック
  4. Tracing: エージェントの実行を内蔵で追跡し、ワークフローの表示、デバッグ、最適化を可能にする

examples ディレクトリを参照して SDK の動作例を確認し、詳細は documentation をご覧ください。

特に、我々の SDK は OpenAI Chat Completions API 形式をサポートする任意のモデルプロバイダーと 互換性があります

基本的には以前やったSwarmと概念などは似ていると思う。

https://zenn.dev/kun432/scraps/30a5c55db75fb9

なのだが、SDKのドキュメントを見ると

https://openai.github.io/openai-agents-python/

  • Model context protocol (MCP)
  • トレーシング
  • ガードレール
  • 可視化
  • 音声エージェント

など以前にはなかった概念があるし、個人的には音声エージェントに非常に興味があるので、一通り進めようかと思う。

ログインするとコメントできます