SDK の設定
このページでは、アプリ起動時に通常一度だけ設定する SDK 全体のデフォルト について説明します。たとえば、デフォルトの OpenAI クライアント、トランスポート、トレーシングのエクスポートキー、デバッグログの挙動などです。これらの設定はデフォルトでプロセス全体に適用されるため、エージェント単位や実行単位の調整ではなく、共通設定を行うのに適しています。
代わりに特定の Agent、Runner、または run() 呼び出しを設定したい場合は、以下を参照してください。
Runnerと実行単位オプションは エージェントの実行 を参照してください- エージェント単位および Runner 単位のモデル設定は モデル を参照してください
- 実行固有のトレーシング設定とエクスポーターの挙動は トレーシング を参照してください
OpenAI クライアントとトランスポート
Section titled “OpenAI クライアントとトランスポート”API キーとクライアント
Section titled “API キーとクライアント”デフォルトでは SDK は OpenAI クライアントの作成が必要になった時点で OPENAI_API_KEY を遅延解決します。環境変数を設定できない場合は、setDefaultOpenAIKey() を手動で呼び出してください。
import { setDefaultOpenAIKey } from '@openai/agents';
setDefaultOpenAIKey(process.env.OPENAI_API_KEY!); // sk-...独自の OpenAI クライアントインスタンスを渡すこともできます。指定しない場合、SDK はデフォルトキーを使って自動的に作成します。
import { OpenAI } from 'openai';import { setDefaultOpenAIClient } from '@openai/agents';
const customClient = new OpenAI({ baseURL: '...', apiKey: '...' });setDefaultOpenAIClient(customClient);API の選択
Section titled “API の選択”最後に、Responses API と Chat Completions API を切り替えることもできます。
import { setOpenAIAPI } from '@openai/agents';
setOpenAIAPI('chat_completions');Responses トランスポート
Section titled “Responses トランスポート”Responses API を使っている場合は、OpenAI プロバイダーのトランスポートも選択できます。デフォルトは HTTP です。
import { setOpenAIAPI, setOpenAIResponsesTransport } from '@openai/agents';
setOpenAIAPI('responses');setOpenAIResponsesTransport('websocket');setOpenAIResponsesTransport('websocket') を使うと WebSocket トランスポートを有効化でき、setOpenAIResponsesTransport('http') で戻せます。WebSocket トラフィックをプロキシやゲートウェイ経由でルーティングする場合は、OPENAI_WEBSOCKET_BASE_URL を設定してください(または OpenAIProvider の websocketBaseURL を設定してください)。
このプロセス全体のデフォルトは、後からデフォルトの OpenAI プロバイダー経由で解決されるモデルにのみ影響します。具体的な Model インスタンスやカスタム modelProvider を渡している場合は、そちらでトランスポートを設定してください。モデルガイド を参照してください。
可観測性とデバッグ
Section titled “可観測性とデバッグ”トレーシング
Section titled “トレーシング”トレーシングは、対応するサーバーランタイムではデフォルトで有効です。ブラウザーおよび NODE_ENV=test の場合はデフォルトで無効です。
デフォルトでは、トレースのエクスポートに上記セクションと同じ OpenAI キーを使用します。
別のキーは setTracingExportApiKey() で設定できます。
import { setTracingExportApiKey } from '@openai/agents';
setTracingExportApiKey('sk-...');トレーシングを完全に無効化することもできます。
import { setTracingDisabled } from '@openai/agents';
setTracingDisabled(true);トレーシング機能の詳細は、トレーシング を参照してください。
デバッグログ
Section titled “デバッグログ”SDK はデバッグログに debug パッケージを使用します。詳細ログを表示するには、DEBUG 環境変数を openai-agents* に設定してください。
export DEBUG=openai-agents*セッション永続化のアクティビティをログ出力するには、OPENAI_AGENTS__DEBUG_SAVE_SESSION=1 を設定してください。
@openai/agents の getLogger(namespace) を使うと、独自モジュール用に名前空間付きロガーを取得できます。
import { getLogger } from '@openai/agents';
const logger = getLogger('my-app');logger.debug('something happened');ログ内の機密データ
Section titled “ログ内の機密データ”一部のログにはユーザーデータが含まれる場合があります。以下の環境変数を設定して無効化してください。
LLM の入力と出力のログを無効化するには:
export OPENAI_AGENTS_DONT_LOG_MODEL_DATA=1ツールの入力と出力のログを無効化するには:
export OPENAI_AGENTS_DONT_LOG_TOOL_DATA=1