@@ -4,52 +4,52 @@ search:
44---
55# トレーシング
66
7- Agents SDK には組み込みのトレーシングが含まれており、エージェント実行中に発生するイベント、例えば LLM 生成 、ツール呼び出し、ハンドオフ、ガードレール、さらにはカスタムイベントまでを包括的に記録します。 [ Traces ダッシュボード] ( https://platform.openai.com/traces ) を使うと、開発中および本番環境でワークフローをデバッグ 、可視化、監視できます 。
7+ Agents SDK には組み込みのトレーシングが含まれており、エージェント実行中のイベント( LLM の生成 、ツール呼び出し、ハンドオフ、ガードレール、さらには発生したカスタムイベントまで)を包括的に記録します。 [ Traces ダッシュボード] ( https://platform.openai.com/traces ) を使用すると、開発中および本番環境でワークフローのデバッグ 、可視化、監視ができます 。
88
99!!!note
1010
11- トレーシングはデフォルトで有効です。トレーシングを無効にする方法は 2 つあります。
11+ トレーシングはデフォルトで有効です。トレーシングを無効化する方法は 2 つあります。
1212
13- 1. 環境変数 `OPENAI_AGENTS_DISABLE_TRACING=1` を設定して、トレーシングをグローバルに無効化できます
14- 2. 単一の実行に対しては、 [`agents.run.RunConfig.tracing_disabled`][] を `True` に設定して無効化できます
13+ 1. env var `OPENAI_AGENTS_DISABLE_TRACING=1` を設定して、グローバルにトレーシングを無効化できます
14+ 2. [`agents.run.RunConfig.tracing_disabled`][] を `True` に設定して、単一の実行に対してトレーシングを無効化できます
1515
16- *** OpenAI の API を使用し Zero Data Retention (ZDR) ポリシーで運用している組織では 、トレーシングは利用できません。***
16+ *** OpenAI の API を使用し、 Zero Data Retention (ZDR) ポリシーの下で運用している組織では 、トレーシングは利用できません。***
1717
1818## トレースとスパン
1919
20- - ** トレース ** は「ワークフロー」の単一のエンドツーエンド操作を表します。スパンで構成されます。トレースには以下のプロパティがあります。
21- - ` workflow_name ` : 論理的なワークフローまたはアプリです。例: " Code generation" や " Customer service" 。
22- - ` trace_id ` : トレースの一意の ID。未指定の場合は自動生成されます 。形式は ` trace_<32_alphanumeric> ` である必要があります。
23- - ` group_id ` : 同一会話からの複数トレースをリンクするためのオプションのグループ ID。たとえばチャットスレッド ID を使用できます 。
24- - ` disabled ` : True の場合、このトレースは記録されません 。
25- - ` metadata ` : トレースのオプションのメタデータ 。
26- - ** スパン ** は開始時刻と終了時刻を持つ操作を表します。スパンには以下があります。
27- - ` started_at ` と ` ended_at ` のタイムスタンプ
20+ - ** Traces ** は「ワークフロー」の 1 回のエンドツーエンドの操作を表します。これは Spans で構成されます。 Traces には次のプロパティがあります:
21+ - ` workflow_name ` : 論理的なワークフローまたはアプリです。たとえば「 Code generation」や「 Customer service」などです 。
22+ - ` trace_id ` : トレースの一意な ID です。渡さない場合は自動生成されます 。形式は ` trace_<32_alphanumeric> ` である必要があります。
23+ - ` group_id ` : オプションのグループ ID で、同じ会話からの複数のトレースを関連付けます。たとえば、チャットスレッド ID を使うことができます 。
24+ - ` disabled ` : ` True ` の場合、トレースは記録されません 。
25+ - ` metadata ` : トレース用のオプションのメタデータです 。
26+ - ** Spans ** は開始時刻と終了時刻を持つ操作を表します。 Spans には次が含まれます:
27+ - ` started_at ` と ` ended_at ` のタイムスタンプ。
2828 - 所属するトレースを表す ` trace_id `
29- - 親スパン(存在する場合) を指す ` parent_id `
30- - スパンに関する情報である ` span_data ` 。たとえば、 ` AgentSpanData ` はエージェントに関する情報、 ` GenerationSpanData ` は LLM 生成に関する情報を含みます 。
29+ - この Span の親 Span を指す ` parent_id ` (存在する場合)
30+ - Span に関する情報である ` span_data ` 。たとえば ` AgentSpanData ` には Agent に関する情報が含まれ、 ` GenerationSpanData ` には LLM 生成に関する情報が含まれます 。
3131
3232## デフォルトのトレーシング
3333
34- デフォルトでは、SDK は次のものをトレースします。
34+ デフォルトでは、 SDK は次をトレースします:
3535
36- - 全体の ` Runner.{run, run_sync, run_streamed}() ` は ` trace() ` でラップされています 。
36+ - ` Runner.{run, run_sync, run_streamed}() ` 全体は ` trace() ` でラップされます 。
3737- エージェントが実行されるたびに ` agent_span() ` でラップされます
38- - LLM 生成は ` generation_span() ` でラップされます
39- - 関数ツールの呼び出しはそれぞれ ` function_span() ` でラップされます
38+ - LLM の生成は ` generation_span() ` でラップされます
39+ - 関数ツール呼び出しはそれぞれ ` function_span() ` でラップされます
4040- ガードレールは ` guardrail_span() ` でラップされます
4141- ハンドオフは ` handoff_span() ` でラップされます
42- - 音声入力(音声認識 )は ` transcription_span() ` でラップされます
43- - 音声出力(音声合成 )は ` speech_span() ` でラップされます
44- - 関連する音声スパンは ` speech_group_span() ` の下に配置される場合があります
42+ - 音声入力( speech-to-text )は ` transcription_span() ` でラップされます
43+ - 音声出力( text-to-speech )は ` speech_span() ` でラップされます
44+ - 関連する音声スパンは ` speech_group_span() ` の配下(親子関係)になる場合があります
4545
46- デフォルトでは、トレース名は "エージェント ワークフロー" です。` trace ` を使う場合はこの名前を設定でき、または [ ` RunConfig ` ] [ agents.run.RunConfig ] で名前やその他のプロパティを設定できます。
46+ デフォルトでは、トレース名は「 Agent workflow」 です。 ` trace ` を使用する場合にこの名前を設定でき、また [ ` RunConfig ` ] [ agents.run.RunConfig ] で名前やその他のプロパティを設定できます。
4747
48- さらに、 [ カスタム トレース プロセッサー ] ( #custom-tracing-processors ) を設定して、トレースを別の宛先へ送信(置換またはセカンダリ宛先として)できます 。
48+ 加えて、(置き換え先、または二次送信先として)トレースを別の宛先へ送るために、 [ カスタムトレースプロセッサー ] ( #custom-tracing-processors ) を設定できます 。
4949
5050## 高レベルのトレース
5151
52- ` run() ` への複数回の呼び出しを 1 つのトレースにまとめたい場合があります 。これは、コード全体を ` trace() ` でラップすることで実現できます。
52+ 場合によっては、 ` run() ` の複数回の呼び出しを 1 つのトレースに含めたいことがあります 。これは、コード全体を ` trace() ` でラップすることで実現できます。
5353
5454``` python
5555from agents import Agent, Runner, trace
@@ -64,49 +64,48 @@ async def main():
6464 print (f " Rating: { second_result.final_output} " )
6565```
6666
67- 1 . ` Runner.run ` への 2 回の呼び出しが ` with trace() ` でラップされているため、個々の実行は 2 つのトレースを作成するのではなく 、全体のトレースの一部になります。
67+ 1 . ` Runner.run ` の 2 回の呼び出しが ` with trace() ` でラップされているため、個々の実行は 2 つのトレースを作るのではなく 、全体のトレースの一部になります。
6868
6969## トレースの作成
7070
71- [ ` trace() ` ] [ agents.tracing.trace ] 関数でトレースを作成できます 。トレースは開始と終了が必要です。方法は 2 つあります。
71+ [ ` trace() ` ] [ agents.tracing.trace ] 関数を使ってトレースを作成できます 。トレースは開始と終了が必要です。方法は 2 つあります:
7272
73- 1 . 【推奨】トレースをコンテキストマネージャとして使用します。つまり ` with trace(...) as my_trace ` 。これにより適切なタイミングで自動的に開始・終了されます 。
74- 2 . [ ` trace.start() ` ] [ agents.tracing.Trace.start ] と [ ` trace.finish() ` ] [ agents.tracing.Trace.finish ] を手動で呼び出すこともできます 。
73+ 1 . ** 推奨 ** : トレースをコンテキストマネージャーとして使用します。例: ` with trace(...) as my_trace ` 。これにより、適切なタイミングでトレースが自動的に開始・終了します 。
74+ 2 . [ ` trace.start() ` ] [ agents.tracing.Trace.start ] と [ ` trace.finish() ` ] [ agents.tracing.Trace.finish ] を手動で呼ぶこともできます 。
7575
76- 現在のトレースは Python の [ ` contextvar ` ] ( https://docs.python.org/3/library/contextvars.html ) を通じて追跡されます。これは自動的に並行実行で動作することを意味します。トレースを手動で開始・終了する場合は 、現在のトレースを更新するために ` start() ` / ` finish() ` に ` mark_as_current ` と ` reset_current ` を渡す必要があります。
76+ 現在のトレースは Python の [ ` contextvar ` ] ( https://docs.python.org/3/library/contextvars.html ) によって追跡されます。つまり、並行処理でも自動的に動作します。トレースの開始/終了を手動で行う場合 、現在のトレースを更新するために ` start() ` / ` finish() ` に ` mark_as_current ` と ` reset_current ` を渡す必要があります。
7777
7878## スパンの作成
7979
80- さまざまな [ ` *_span() ` ] [ agents.tracing.create ] メソッドでスパンを作成できます。一般的には 、スパンを手動で作成する必要はありません。カスタムスパン情報を追跡するための [ ` custom_span() ` ] [ agents.tracing.custom_span ] 関数も利用できます 。
80+ 各種 [ ` *_span() ` ] [ agents.tracing.create ] メソッドを使用してスパンを作成できます。一般に 、スパンを手動で作成する必要はありません。カスタムのスパン情報を追跡するために [ ` custom_span() ` ] [ agents.tracing.custom_span ] 関数が利用できます 。
8181
82- スパンは自動的に現在のトレースの一部となり、Python の [ ` contextvar ` ] ( https://docs.python.org/3/library/contextvars.html ) で追跡される最も近い現在のスパンの下にネストされます 。
82+ スパンは自動的に現在のトレースの一部となり、 Python の [ ` contextvar ` ] ( https://docs.python.org/3/library/contextvars.html ) によって追跡される、最も近い現在のスパンの配下(ネスト)になります 。
8383
8484## 機微データ
8585
86- 一部のスパンは機微データを取得する可能性があります 。
86+ 一部のスパンは、機微データとなり得る情報を取得する場合があります 。
8787
88- ` generation_span() ` は LLM 生成の入出力を、 ` function_span() ` は関数呼び出しの入出力を保存します。機微データを含む可能性があるため 、[ ` RunConfig.trace_include_sensitive_data ` ] [ agents.run.RunConfig.trace_include_sensitive_data ] によってそのデータの取得を無効化できます 。
88+ ` generation_span() ` は LLM 生成の入力/出力を保存し、 ` function_span() ` は関数呼び出しの入力/出力を保存します。これらには機微データが含まれる可能性があるため 、[ ` RunConfig.trace_include_sensitive_data ` ] [ agents.run.RunConfig.trace_include_sensitive_data ] により、それらのデータ取得を無効化できます 。
8989
90- 同様に、音声スパンはデフォルトで入力および出力音声の base64 エンコード済み PCM データを含みます 。[ ` VoicePipelineConfig.trace_include_sensitive_audio_data ` ] [ agents.voice.pipeline_config.VoicePipelineConfig.trace_include_sensitive_audio_data ] を設定して、この音声データの取得を無効化できます。
90+ 同様に、音声スパンにはデフォルトで入力および出力音声の base64 エンコードされた PCM データが含まれます 。[ ` VoicePipelineConfig.trace_include_sensitive_audio_data ` ] [ agents.voice.pipeline_config.VoicePipelineConfig.trace_include_sensitive_audio_data ] を設定して、この音声データの取得を無効化できます。
9191
92- デフォルトでは ` trace_include_sensitive_data ` は ` True ` です。アプリの実行前に環境変数 ` OPENAI_AGENTS_TRACE_INCLUDE_SENSITIVE_DATA ` を ` true/1 ` または ` false/0 ` に設定することで、コードなしでデフォルトを変更できます 。
92+ デフォルトでは、 ` trace_include_sensitive_data ` は ` True ` です。アプリを実行する前に環境変数 ` OPENAI_AGENTS_TRACE_INCLUDE_SENSITIVE_DATA ` を ` true/1 ` または ` false/0 ` にエクスポートすることで、コードなしでデフォルトを設定できます 。
9393
94- ## カスタム トレーシング プロセッサー
94+ ## カスタムトレースプロセッサー
9595
96- トレーシングの高レベルなアーキテクチャは次のとおりです。
96+ トレーシングの高レベルのアーキテクチャは次のとおりです:
9797
98- - 初期化時に、トレースを作成する責任を持つグローバルな [ ` TraceProvider ` ] [ agents.tracing.setup.TraceProvider ] を作成します。
99- - ` TraceProvider ` に [ ` BatchTraceProcessor ` ] [ agents.tracing.processors.BatchTraceProcessor ] を設定し 、トレース/ スパンをバッチで [ ` BackendSpanExporter ` ] [ agents.tracing.processors.BackendSpanExporter ] に送信します。これが OpenAI バックエンドへスパンとトレースをバッチでエクスポートします 。
98+ - 初期化時に、トレースを作成する責務を持つグローバルな [ ` TraceProvider ` ] [ agents.tracing.setup.TraceProvider ] を作成します。
99+ - ` TraceProvider ` を [ ` BatchTraceProcessor ` ] [ agents.tracing.processors.BatchTraceProcessor ] で設定し 、トレース/ スパンをバッチで [ ` BackendSpanExporter ` ] [ agents.tracing.processors.BackendSpanExporter ] に送信します。これにより、スパンとトレースがバッチで OpenAI バックエンドへエクスポートされます 。
100100
101- このデフォルト設定をカスタマイズして、別のバックエンドへの送信や追加のバックエンドへの送信、エクスポーターの動作変更を行う方法は 2 つあります。
101+ このデフォルト設定をカスタマイズして、別のバックエンドへの送信(代替または追加)や、 exporter の挙動を変更するには 2 つの方法があります:
102102
103- 1 . [ ` add_trace_processor() ` ] [ agents.tracing.add_trace_processor ] は、トレースやスパンが準備できたタイミングで受け取る ** 追加 ** のトレースプロセッサーを追加できます 。これにより、OpenAI のバックエンドへの送信に加えて独自の処理を実行できます 。
104- 2 . [ ` set_trace_processors() ` ] [ agents.tracing.set_trace_processors ] は、デフォルトのプロセッサーを独自のトレースプロセッサーに ** 置き換え** られます。これにより、OpenAI バックエンドに送信する ` TracingProcessor ` を含めない限り、トレースはバックエンドに送信されません 。
103+ 1 . [ ` add_trace_processor() ` ] [ agents.tracing.add_trace_processor ] では、準備ができたトレースとスパンを受け取る ** 追加の ** トレースプロセッサーを追加できます 。これにより、 OpenAI のバックエンドへ送ることに加えて、独自の処理を行えます 。
104+ 2 . [ ` set_trace_processors() ` ] [ agents.tracing.set_trace_processors ] では、デフォルトのプロセッサーを独自のトレースプロセッサーで ** 置き換え** できます。つまり、送信を行う ` TracingProcessor ` を含めない限り、トレースは OpenAI バックエンドへ送信されません 。
105105
106+ ## Non-OpenAI Models でのトレーシング
106107
107- ## Non-OpenAI モデルでのトレーシング
108-
109- OpenAI の API キーを非 OpenAI モデルで使用して、トレーシングを無効化することなく OpenAI Traces ダッシュボードで無料のトレーシングを有効化できます。
108+ OpenAI の API キーを Non-OpenAI Models とともに使用することで、トレーシングを無効化することなく、 OpenAI Traces ダッシュボードで無料のトレーシングを有効化できます。
110109
111110``` python
112111import os
@@ -127,7 +126,7 @@ agent = Agent(
127126)
128127```
129128
130- 単一の実行に対してのみ別のトレーシングキーが必要な場合は、グローバルなエクスポーターを変更する代わりに ` RunConfig ` 経由で渡してください。
129+ 単一の実行に対してのみ別のトレーシングキーが必要な場合は、グローバルな exporter を変更する代わりに ` RunConfig ` 経由で渡してください。
131130
132131``` python
133132from agents import Runner, RunConfig
@@ -139,10 +138,10 @@ await Runner.run(
139138)
140139```
141140
142- ## 注意
143- - Openai Traces ダッシュボードで無料のトレースを表示します 。
141+ ## 注意事項
142+ - Openai Traces ダッシュボードで無料のトレースを表示できます 。
144143
145- ## 外部トレーシング プロセッサー一覧
144+ ## 外部トレースプロセッサー一覧
146145
147146- [ Weights & Biases] ( https://weave-docs.wandb.ai/guides/integrations/openai_agents )
148147- [ Arize-Phoenix] ( https://docs.arize.com/phoenix/tracing/integrations-tracing/openai-agents-sdk )
@@ -163,4 +162,5 @@ await Runner.run(
163162- [ Galileo] ( https://v2docs.galileo.ai/integrations/openai-agent-integration#openai-agent-integration )
164163- [ Portkey AI] ( https://portkey.ai/docs/integrations/agents/openai-agents )
165164- [ LangDB AI] ( https://docs.langdb.ai/getting-started/working-with-agent-frameworks/working-with-openai-agents-sdk )
166- - [ Agenta] ( https://docs.agenta.ai/observability/integrations/openai-agents )
165+ - [ Agenta] ( https://docs.agenta.ai/observability/integrations/openai-agents )
166+ - [ PostHog] ( https://posthog.com/docs/llm-analytics/installation/openai-agents )
0 commit comments