Skip to content

Commit d87f15f

Browse files
committed
Merge branch 'main' into bugfixed-unhandled-reasoning-content
2 parents 4605706 + 078eef2 commit d87f15f

36 files changed

+605
-609
lines changed

docs/agents.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ Agents are generic on their `context` type. Context is a dependency-injection to
3434
```python
3535
@dataclass
3636
class UserContext:
37+
name: str
3738
uid: str
3839
is_pro_user: bool
3940

docs/ja/agents.md

Lines changed: 24 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,16 @@ search:
44
---
55
# エージェント
66

7-
エージェントはアプリの中心となる構成要素です。エージェントは、大規模言語モデル ( LLM ) を instructions とツールで設定したものです
7+
エージェントは、アプリにおける中核的なビルディングブロックです。エージェントは、インストラクションとツールで構成された LLM です
88

99
## 基本設定
1010

11-
エージェントで最もよく設定するプロパティは以下のとおりです。
11+
エージェントで最もよく設定するプロパティは次のとおりです:
1212

13-
- `name` : エージェントを識別する必須の文字列です。
14-
- `instructions` : developer メッセージまたは system prompt とも呼ばれます。
15-
- `model` : 使用する LLM を指定します。また、`temperature``top_p` などのモデル調整パラメーターを設定する `model_settings` をオプションで指定できます
16-
- `tools` : エージェントがタスクを達成するために使用できるツールです
13+
- `name`: エージェントを識別する必須の文字列です。
14+
- `instructions`: 開発者メッセージ、または system prompt とも呼ばれます。
15+
- `model`: 使用する LLM を指定します。`model_settings` を併用すると temperature、top_p などのモデル調整パラメーターを設定できます
16+
- `tools`: エージェントがタスク達成のために使用できるツールです
1717

1818
```python
1919
from agents import Agent, ModelSettings, function_tool
@@ -33,11 +33,12 @@ agent = Agent(
3333

3434
## コンテキスト
3535

36-
エージェントは `context` 型についてジェネリックです。コンテキストは依存性注入用のツールで`Runner.run()` に渡すオブジェクトです。このオブジェクトはすべてのエージェント、ツール、ハンドオフなどに渡され、実行中の依存関係や状態をまとめて保持します。任意の Python オブジェクトをコンテキストとして渡せます
36+
エージェントは `context` 型に対してジェネリックです。コンテキストは依存性注入の仕組みで`Runner.run()` に渡すオブジェクトです。これはすべてのエージェント、ツール、ハンドオフなどに渡され、エージェント実行時の依存関係と状態を格納する入れ物として機能します。コンテキストには任意の Python オブジェクトを指定できます
3737

3838
```python
3939
@dataclass
4040
class UserContext:
41+
name: str
4142
uid: str
4243
is_pro_user: bool
4344

@@ -51,7 +52,7 @@ agent = Agent[UserContext](
5152

5253
## 出力タイプ
5354

54-
デフォルトでは、エージェントはプレーンテキストつまり `str`を出力します。特定の型で出力を受け取りたい場合は、`output_type` パラメーターを使用します。よく使われるのは Pydantic オブジェクトですが、Pydantic TypeAdapter でラップできる型であれば何でも対応しています。たとえば dataclasses 、lists 、TypedDict などです
55+
既定では、エージェントはプレーンテキスト (つまり `str`) を出力します。特定の型で出力させたい場合は `output_type` パラメーターを使用できます。よく使われるのは Pydantic オブジェクトですが、Pydantic TypeAdapter でラップできる型 — dataclass、list、TypedDict など — であれば何でもサポートしています
5556

5657
```python
5758
from pydantic import BaseModel
@@ -72,11 +73,11 @@ agent = Agent(
7273

7374
!!! note
7475

75-
`output_type` を渡すと、モデルに通常のプレーンテキストではなく structured outputs を使用するよう指示します
76+
`output_type` を渡すと、モデルは通常のプレーンテキスト応答の代わりに structured outputs を使用するよう指示されます
7677

7778
## ハンドオフ
7879

79-
ハンドオフは、エージェントが委任できるサブエージェントです。ハンドオフのリストを渡すと、エージェントは必要に応じてそれらに処理を委任できます。これは、単一のタスクに特化したモジュール化されたエージェントをオーケストレーションする強力なパターンです。詳細は [handoffs](handoffs.md) ドキュメントを参照してください
80+
ハンドオフは、エージェントが委譲できるサブエージェントです。ハンドオフのリストを渡すと、必要に応じてエージェントがそれらに処理を委譲できます。これは、単一タスクに特化したモジュール式のエージェントをオーケストレーションする強力なパターンです。詳細は [handoffs](handoffs.md) ドキュメントをご覧ください
8081

8182
```python
8283
from agents import Agent
@@ -95,9 +96,9 @@ triage_agent = Agent(
9596
)
9697
```
9798

98-
## 動的 instructions
99+
## 動的インストラクション
99100

100-
ほとんどの場合、エージェント作成時に instructions を指定できます。ただし、関数を通じて動的 instructions を提供することもできます。この関数はエージェントとコンテキストを受け取り、プロンプトを返す必要があります。同期関数と `async` 関数の両方が使用可能です
101+
通常はエージェント作成時にインストラクションを指定しますが、関数を介して動的に渡すこともできます。その関数はエージェントとコンテキストを受け取り、プロンプトを返す必要があります。通常の関数と `async` 関数の両方が利用可能です
101102

102103
```python
103104
def dynamic_instructions(
@@ -112,17 +113,17 @@ agent = Agent[UserContext](
112113
)
113114
```
114115

115-
## ライフサイクルイベント (hooks)
116+
## ライフサイクルイベント(フック)
116117

117-
エージェントのライフサイクルを監視したい場合があります。たとえば、イベントをログに記録したり、特定のイベント発生時にデータを事前取得したりしたい場合です。`hooks` プロパティを使用してエージェントのライフサイクルにフックできます[`AgentHooks`][agents.lifecycle.AgentHooks] クラスをサブクラス化し、興味のあるメソッドをオーバーライドしてください
118+
エージェントのライフサイクルを観察したい場合があります。たとえば、イベントをログに記録したり、特定のイベント発生時にデータをプリフェッチしたりするケースです。そのようなときは `hooks` プロパティを使ってライフサイクルにフックできます[`AgentHooks`][agents.lifecycle.AgentHooks] クラスを継承し、関心のあるメソッドをオーバーライドしてください
118119

119120
## ガードレール
120121

121-
ガードレールを使用すると、エージェントの実行と並行してユーザー入力に対してチェックやバリデーションを実行できます。たとえば、ユーザー入力の関連性をフィルタリングすることが可能です。詳細は [guardrails](guardrails.md) ドキュメントをご覧ください
122+
ガードレールを使用すると、エージェントの実行と並行してユーザー入力のチェックやバリデーションを行えます。たとえば、ユーザー入力の関連性をスクリーニングできます。詳細は [guardrails](guardrails.md) ドキュメントを参照してください
122123

123124
## エージェントのクローン/コピー
124125

125-
`clone()` メソッドを使用すると、エージェントを複製し、任意のプロパティを変更できます。
126+
エージェントの `clone()` メソッドを使用すると、エージェントを複製し、任意のプロパティを変更できます。
126127

127128
```python
128129
pirate_agent = Agent(
@@ -139,15 +140,15 @@ robot_agent = pirate_agent.clone(
139140

140141
## ツール使用の強制
141142

142-
ツールのリストを渡しても、 LLM が必ずツールを使用するとは限りません[`ModelSettings.tool_choice`][agents.model_settings.ModelSettings.tool_choice] を設定することでツールの使用を強制できます。有効な値は次のとおりです。
143+
ツールのリストを指定しても、 LLM が必ずしもツールを使用するとは限りません[`ModelSettings.tool_choice`][agents.model_settings.ModelSettings.tool_choice] を設定することでツール使用を強制できます。指定可能な値は次のとおりです:
143144

144-
1. `auto` : LLM がツールを使用するかどうかを判断します。
145-
2. `required` : LLM にツール使用を必須とします(どのツールを使うかは LLM が判断します)。
146-
3. `none` : LLM にツールを使用しないよう要求します。
147-
4. 具体的な文字列を指定する(`my_tool` など): LLM にそのツールを必ず使用させます
145+
1. `auto` LLM がツールを使うかどうかを判断します。
146+
2. `required` LLM にツールの使用を必須とします (ただしどのツールを使うかは自動で判断)。
147+
3. `none` LLM にツールを使用しないことを要求します。
148+
4. 具体的な文字列 (例: `my_tool`) — LLM にその特定のツールを使用させます
148149

149150
!!! note
150151

151-
無限ループを防ぐため、フレームワークはツール呼び出し後に `tool_choice` を自動的に `auto` にリセットします。この挙動は [`agent.reset_tool_choice`][agents.agent.Agent.reset_tool_choice] で設定できます。無限ループとは、ツールの結果が LLM に送られ、その後 `tool_choice` により再びツール呼び出しが生成される、というサイクルが延々と続くことを指します
152+
無限ループを防ぐため、フレームワークはツール呼び出し後に `tool_choice` を自動的に "auto" にリセットします。この挙動は [`agent.reset_tool_choice`][agents.agent.Agent.reset_tool_choice] で設定できます。無限ループは、ツール結果が LLM に送られ、それにより `tool_choice` の設定でさらにツール呼び出しが生成される、というサイクルが延々と続くために発生します
152153

153-
ツール呼び出し後に auto モードで続行せず、完全に停止させたい場合は、[`Agent.tool_use_behavior="stop_on_first_tool"`] を設定してください。ツール出力をそのまま最終応答として使用し、追加の LLM 処理を行いません。
154+
ツール呼び出し後に (auto モードで続行するのではなく) エージェントを完全に停止させたい場合は、[`Agent.tool_use_behavior="stop_on_first_tool"`] を設定してください。これにより、ツールの出力をそのまま最終レスポンスとして使用し、追加の LLM 処理を行いません。

docs/ja/config.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@ search:
66

77
## API キーとクライアント
88

9-
デフォルトでは、SDK はインポート直後に LLM リクエストとトレーシングのために `OPENAI_API_KEY` 環境変数を参照します。アプリ起動前にこの環境変数を設定できない場合は、[set_default_openai_key()][agents.set_default_openai_key] 関数を使用してキーを設定できます。
9+
デフォルトでは、 SDK はインポートされるとすぐに LLM リクエストとトレーシングのために `OPENAI_API_KEY` 環境変数を探します。アプリ起動前にその環境変数を設定できない場合は、 [set_default_openai_key()][agents.set_default_openai_key] 関数を使用してキーを設定できます。
1010

1111
```python
1212
from agents import set_default_openai_key
1313

1414
set_default_openai_key("sk-...")
1515
```
1616

17-
あるいは、使用する OpenAI クライアントを設定することもできます。デフォルトでは、SDK は環境変数または前述のデフォルトキーを用いて `AsyncOpenAI` インスタンスを生成します。これを変更したい場合は、[set_default_openai_client()][agents.set_default_openai_client] 関数を使用してください
17+
また、使用する OpenAI クライアントを設定することもできます。デフォルトでは、 SDK は環境変数で指定された API キーまたは上記で設定したデフォルトキーを使って `AsyncOpenAI` インスタンスを生成します。 [set_default_openai_client()][agents.set_default_openai_client] 関数を使うことでこれを変更できます
1818

1919
```python
2020
from openai import AsyncOpenAI
@@ -24,7 +24,7 @@ custom_client = AsyncOpenAI(base_url="...", api_key="...")
2424
set_default_openai_client(custom_client)
2525
```
2626

27-
最後に、利用する OpenAI API をカスタマイズすることも可能です。デフォルトでは OpenAI Responses API を使用しますが、[set_default_openai_api()][agents.set_default_openai_api] 関数を使って Chat Completions API に切り替えられます
27+
最後に、使用する OpenAI API をカスタマイズすることも可能です。デフォルトでは OpenAI Responses API を使用しますが、 [set_default_openai_api()][agents.set_default_openai_api] 関数を使って Chat Completions API に変更できます
2828

2929
```python
3030
from agents import set_default_openai_api
@@ -34,35 +34,35 @@ set_default_openai_api("chat_completions")
3434

3535
## トレーシング
3636

37-
トレーシングはデフォルトで有効になっています。使用される OpenAI API キーは前述の方法(環境変数または設定したデフォルトキー)と同じです。トレーシングで使用する API キーを個別に設定する場合は、[`set_tracing_export_api_key`][agents.set_tracing_export_api_key] 関数を利用してください
37+
トレーシングはデフォルトで有効になっています。デフォルトでは、上記セクションと同じ OpenAI API キー(環境変数または設定したデフォルトキー)を使用します。 [`set_tracing_export_api_key`][agents.set_tracing_export_api_key] 関数を使ってトレーシングに使用する API キーを個別に設定できます
3838

3939
```python
4040
from agents import set_tracing_export_api_key
4141

4242
set_tracing_export_api_key("sk-...")
4343
```
4444

45-
トレーシングを完全に無効化したい場合は、[`set_tracing_disabled()`][agents.set_tracing_disabled] 関数を使用します
45+
[`set_tracing_disabled()`][agents.set_tracing_disabled] 関数を使用してトレーシングを完全に無効化することもできます
4646

4747
```python
4848
from agents import set_tracing_disabled
4949

5050
set_tracing_disabled(True)
5151
```
5252

53-
## デバッグログ
53+
## デバッグロギング
5454

55-
SDK にはハンドラーが設定されていない 2 つの Python ロガーがあります。デフォルトでは、警告とエラーは `stdout` に出力されますが、それ以外のログは抑制されます
55+
SDK にはハンドラーが設定されていない Python ロガーが 2 つあります。デフォルトでは警告とエラーが `stdout` に出力され、その他のログは抑制されます
5656

57-
詳細なログを有効にするには、[`enable_verbose_stdout_logging()`][agents.enable_verbose_stdout_logging] 関数を使用してください。
57+
詳細なログを有効にするには、 [`enable_verbose_stdout_logging()`][agents.enable_verbose_stdout_logging] 関数を使用してください。
5858

5959
```python
6060
from agents import enable_verbose_stdout_logging
6161

6262
enable_verbose_stdout_logging()
6363
```
6464

65-
また、ハンドラーフィルターフォーマッターなどを追加してログをカスタマイズすることもできます。詳細は [Python logging ガイド](https://docs.python.org/3/howto/logging.html) を参照してください
65+
ハンドラーフィルターフォーマッターなどを追加してログをカスタマイズすることもできます。詳細は [Python logging ガイド](https://docs.python.org/3/howto/logging.html) をご覧ください
6666

6767
```python
6868
import logging
@@ -83,15 +83,15 @@ logger.addHandler(logging.StreamHandler())
8383

8484
### ログに含まれる機密データ
8585

86-
一部のログには機密データ(たとえばユーザーデータ)が含まれる場合があります。これらのデータのログ出力を無効にしたい場合は、以下の環境変数を設定してください
86+
一部のログには機密データ(例: ユーザー データ)が含まれる場合があります。これらのデータをログに残さないようにするには、次の環境変数を設定してください
8787

88-
LLM の入力と出力のロギングを無効にする:
88+
LLM の入力と出力をログに残さないようにするには:
8989

9090
```bash
9191
export OPENAI_AGENTS_DONT_LOG_MODEL_DATA=1
9292
```
9393

94-
ツールの入力と出力のロギングを無効にする:
94+
ツールの入力と出力をログに残さないようにするには:
9595

9696
```bash
9797
export OPENAI_AGENTS_DONT_LOG_TOOL_DATA=1

0 commit comments

Comments
 (0)