Novita AI が OpenAI Agents SDK をサポートしました!

Novita AI が OpenAI Agents SDK をサポートしました!

OpenAI Agents SDK のトレーシングシステムは、AIワークフローへの可視性を提供し、重要なイベントをキャプチャして、開発者がアプリケーションを効果的に監視・デバッグできるようにします。

OpenAI Agents SDKとは?

OpenAI Agents SDK は、AIエージェント開発を簡素化するPythonツールキットです。OpenAI の SWARM プロジェクトを本番環境対応に進化させたもので、インテリジェントで協調的かつ安全なAIシステムを構築するための機能を提供します。その中核となるのは、特定の指示やツールで設定可能なLLMベースのエージェントであり、カスタムロールをサポートし、OpenAIモデル(o1、o3-mini、gpt-4o)およびOpenAI互換APIを持つサードパーティモデルの両方と互換性があります。

OpenAI Agents SDKの主要機能

ツールと機能拡張

  • 関数呼び出し: @function_tool デコレータを使用してPython関数をツールに変換し、スキーマを自動生成してPydantic検証を行います。
  • 組み込みエージェントループ: ツール呼び出し、結果のフィードバック、タスクループを処理し、エージェントとLLM間のシームレスな対話を実現します。
  • タスクハンドオフ: エージェントが他の専門エージェントにタスクを委任できるようにし、マルチエージェントコラボレーションを可能にします。

セキュリティと監視メカニズム

  • ガードレール: 入力スクリーニングで有害なコンテンツを防ぎ、出力検証で応答の品質と適切性を保証します。
  • トレーシングツール: 組み込みのトレーシング機能により、エージェントフロー全体を視覚化・監視し、デバッグと最適化を支援します。

開発者に優しい機能

  • Pythonネイティブなメソッド: Pythonの言語機能を活用してエージェントのオーケストレーションとチェーン化を行い、新しい抽象概念を学ぶ必要性を減らします。
  • 高いカスタマイズ性: カスタムツール、構造化された出力タイプ、外部LLMプロバイダー統合機能を提供します。
  • 軽量設計: シンプルでありながら強力なプリミティブセットで、学習コストを最小限に抑えます。

OpenAI Agents SDKの利点

開発効率

  • セットアッププロセスを簡素化し、エージェントアプリケーションの開発を効率化し、AIエージェント開発への参入障壁を低くします。

拡張されたシステム機能

  • 複雑なタスク実行と効率的なマルチエージェントコラボレーションをサポート
  • 複雑な問題を解決するための専門的な協調システムを構築
  • 外部LLMモデルを統合して柔軟性を向上

セキュリティと信頼性

  • ガードレールにより安全なAIインタラクションを保証
  • AIエージェントシステムの信頼性と適切な動作を強化
  • AIエージェントアプリケーションの本番環境向け準備を簡素化

分析と最適化

  • トレーシングシステムがエージェントの動作に関する洞察を提供
  • ユーザーパターンの分析とボトルネックの特定を改善
  • デバッグとワークフロー最適化の機能を強化

OpenAI Agents SDKの使用例

ステップ1: エージェントをセットアップ

AccountingAssistant という名前の仮想アシスタントを、その機能に関する明確な指示とともに作成して、エージェントを初期化します。

ステップ2: ツールを統合

以下の必須ツールを統合します。

  • Web検索ツール: 税務最新情報を取得。
  • API呼び出し: 財務諸表を分析。
  • ファイル検索ツール: 関連ドキュメントを検索。

ステップ3: タスクを定義

ワークフローを具体的なタスクに分解します。

  • タスク1: 最新の税務情報を取得。
  • タスク2: APIを使用して財務データを分析。
  • タスク3: 最新のデータに基づいてレポートを生成。

ステップ4: タスクを実行

タスクを順次または並列に実行します。例:

Runner.run_sync(agent, "Generate a report based on the latest tax laws and financial data.")

ステップ5: 監視とデバッグ

トレーシングツールを使用してタスクの実行を監視し、デバッグのための潜在的な問題を特定します。

Novita AIをOpenAI Agents SDKと統合する方法

1. Python環境をセットアップしてAgents SDKをインストールします。

python -m venv env
source env/bin/activate
pip install openai-agents

2. Novita APIキーをセットアップします。

APIキーを取得

コンソールで無料クレジットを取得

3. ハンドオフの例

import os
from openai import AsyncOpenAI
from agents import (
    Agent,
    Runner,
    set_default_openai_api,
    set_default_openai_client,
    set_tracing_disabled,
)

BASE_URL = "https://api.novita.ai/v3/openai"
API_KEY = os.getenv("NOVITA_API_KEY")
MODEL_NAME = os.getenv("MODEL_NAME")

# Because Novita not support the responses API so we use the chat completions API instead.
set_default_openai_api("chat_completions")
set_default_openai_client(AsyncOpenAI(base_url=BASE_URL, api_key=API_KEY))
# Disable tracing for this example
# Refer to https://openai.github.io/openai-agents-python/tracing/#external-tracing-processors-list to use the custom spans.
set_tracing_disabled(disabled=True)

agent = Agent(name="Assistant",
              instructions="You are a helpful assistant", model=MODEL_NAME)

result = Runner.run_sync(
    agent, "Write a haiku about recursion in programming.")
print(result.final_output)

# Code within the code,
# Functions calling themselves,
# Infinite loop's dance.

柔軟なトレーシング機能により、開発者は組み込み機能とサードパーティ統合の両方を通じてエージェントの動作を追跡し、パフォーマンスと信頼性を確保できます。

よくある質問

OpenAI Agents SDKではどのLLMモデルを使用できますか?

OpenAIモデル(o1、o3-mini、gpt-4o)およびNovita AIのようなOpenAI互換APIを持つサードパーティモデルと互換性があります。

OpenAI Agents SDKはツール統合をどのように処理しますか?

@function_tool デコレータを使用してPython関数をツールに変換し、スキーマを自動生成してPydantic検証を行います。

OpenAI Agents SDKは本番環境に適していますか?

はい。ガードレールなどのセキュリティ機能、包括的なトレーシング、監視機能を備えています。

Novita AI は、シンプルなAPIを使用してAIモデルを簡単にデプロイできる方法を開発者に提供し、さらに構築とスケーリングのための手頃で信頼性の高いGPUクラウドも提供するAIクラウドプラットフォームです。

関連記事