Skip to content

Commit 68c725f

Browse files
authored
Improve translation pipeline details (#475)
This pull request improves the translation pipeline, which was introduced by #460. Now the document generation works pretty well with gpt-4o model.
1 parent 8ded8a9 commit 68c725f

24 files changed

+624
-505
lines changed

docs/agents.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,11 @@ Agents are generic on their `context` type. Context is a dependency-injection to
3232
```python
3333
@dataclass
3434
class UserContext:
35-
uid: str
36-
is_pro_user: bool
35+
uid: str
36+
is_pro_user: bool
3737

38-
async def fetch_purchases() -> list[Purchase]:
39-
return ...
38+
async def fetch_purchases() -> list[Purchase]:
39+
return ...
4040

4141
agent = Agent[UserContext](
4242
...,

docs/config.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ Alternatively, you can customize the logs by adding handlers, filters, formatter
6363
```python
6464
import logging
6565

66-
logger = logging.getLogger("openai.agents") # or openai.agents.tracing for the Tracing logger
66+
logger = logging.getLogger("openai.agents") # or openai.agents.tracing for the Tracing logger
6767

6868
# To make all logs show up
6969
logger.setLevel(logging.DEBUG)

docs/ja/agents.md

+26-26
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
# エージェント
22

3-
エージェント はアプリケーションの基本的な構成要素です。エージェント は、大規模言語モデル(LLM)であり、 instructions と tools を用いて設定されます
3+
エージェントはアプリのコア構成要素です。エージェントは、指示とツールで構成された大規模言語モデル (LLM) です
44

55
## 基本設定
66

7-
エージェント の設定でよく使われるプロパティは以下の通りです。
7+
エージェントで設定する最も一般的なプロパティは次のとおりです:
88

9-
- `instructions` : 開発者メッセージまたはシステムプロンプトとも呼ばれます。
10-
- `model` : 使用する LLM を指定します。オプションで `model_settings` を指定し、temperature や top_p などのモデル調整パラメータを設定できます
11-
- `tools` : エージェント がタスクを達成するために使用できるツールです
9+
- `instructions`: 開発者メッセージまたはシステムプロンプトとも呼ばれます。
10+
- `model`: 使用する LLM 、temperature や top_p などのモデル調整パラメーターを設定するためのオプションの `model_settings`
11+
- `tools`: エージェントがタスクを達成するために使用できるツール
1212

1313
```python
1414
from agents import Agent, ModelSettings, function_tool
@@ -27,16 +27,16 @@ agent = Agent(
2727

2828
## コンテキスト
2929

30-
エージェント は、 `context` 型に対してジェネリックです。コンテキストは依存性注入のためのツールであり、作成したオブジェクトを `Runner.run()` に渡すことで、各エージェント、ツール、ハンドオフなどに渡されます。これはエージェントの実行に必要な依存関係や状態をまとめて保持するためのものです。任意の Python オブジェクトをコンテキストとして提供できます。
30+
エージェントは `context` タイプに対して汎用的です。コンテキストは依存性注入ツールであり、`Runner.run()` に渡すために作成するオブジェクトです。これはすべてのエージェント、ツール、ハンドオフなどに渡され、エージェントの実行に必要な依存関係や状態をまとめたものとして機能します。任意の Python オブジェクトをコンテキストとして提供できます。
3131

3232
```python
3333
@dataclass
3434
class UserContext:
35-
uid: str
36-
is_pro_user: bool
35+
uid: str
36+
is_pro_user: bool
3737

38-
async def fetch_purchases() -> list[Purchase]:
39-
return ...
38+
async def fetch_purchases() -> list[Purchase]:
39+
return ...
4040

4141
agent = Agent[UserContext](
4242
...,
@@ -45,7 +45,7 @@ agent = Agent[UserContext](
4545

4646
## 出力タイプ
4747

48-
デフォルトでは、エージェント はプレーンテキスト(つまり `str` )を出力します。特定の型の出力を生成させたい場合は、 `output_type` パラメータを使用します。一般的には [Pydantic](https://docs.pydantic.dev/) オブジェクトを使用しますが、Pydantic の [TypeAdapter](https://docs.pydantic.dev/latest/api/type_adapter/) でラップ可能な型(データクラス、リスト、TypedDict など)であればどのような型でもサポートしています
48+
デフォルトでは、エージェントはプレーンテキスト(つまり `str`)の出力を生成します。特定のタイプの出力をエージェントに生成させたい場合は、`output_type` パラメーターを使用できます。一般的な選択肢として [Pydantic](https://docs.pydantic.dev/) オブジェクトを使用しますが、Pydantic の [TypeAdapter](https://docs.pydantic.dev/latest/api/type_adapter/) でラップできる任意のタイプをサポートしています - データクラス、リスト、TypedDict など。
4949

5050
```python
5151
from pydantic import BaseModel
@@ -66,11 +66,11 @@ agent = Agent(
6666

6767
!!! note
6868

69-
`output_type` を指定すると、モデルは通常のプレーンテキストのレスポンスではなく、 [structured outputs](https://platform.openai.com/docs/guides/structured-outputs) を使用します
69+
`output_type` を渡すと、モデルに通常のプレーンテキスト応答の代わりに [structured outputs](https://platform.openai.com/docs/guides/structured-outputs) を使用するよう指示します
7070

7171
## ハンドオフ
7272

73-
ハンドオフ は、エージェント が処理を委譲できるサブエージェントです。ハンドオフのリストを提供すると、エージェント は必要に応じてそれらに処理を委譲できます。これは、特定のタスクに特化したモジュール型のエージェントを組み合わせて調整するための強力なパターンです。詳細は [ハンドオフ](handoffs.md) のドキュメントを参照してください
73+
ハンドオフは、エージェントが委任できるサブエージェントです。ハンドオフのリストを提供し、エージェントは関連する場合にそれらに委任することができます。これは、単一のタスクに優れたモジュール化された専門エージェントを編成する強力なパターンです。[handoffs](handoffs.md) ドキュメントで詳細をお読みください
7474

7575
```python
7676
from agents import Agent
@@ -89,9 +89,9 @@ triage_agent = Agent(
8989
)
9090
```
9191

92-
## 動的な instructions
92+
## 動的指示
9393

94-
多くの場合、エージェント 作成時に instructions を指定しますが、関数を通じて動的に instructions を提供することも可能です。この関数はエージェントとコンテキストを受け取り、プロンプトを返します。通常の関数と `async` 関数の両方が使用可能です
94+
ほとんどの場合、エージェントを作成する際に指示を提供できますが、関数を介して動的な指示を提供することもできます。この関数はエージェントとコンテキストを受け取り、プロンプトを返す必要があります。通常の関数と `async` 関数の両方が受け入れられます
9595

9696
```python
9797
def dynamic_instructions(
@@ -108,15 +108,15 @@ agent = Agent[UserContext](
108108

109109
## ライフサイクルイベント(フック)
110110

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

113113
## ガードレール
114114

115-
ガードレール を使用すると、エージェント の実行と並行してユーザー入力に対するチェックや検証を実行できます。例えば、ユーザー入力の関連性を検証できます。詳細は [ガードレール](guardrails.md) のドキュメントを参照してください
115+
ガードレールを使用すると、エージェントの実行と並行してユーザー入力のチェック/検証を行うことができます。たとえば、ユーザーの入力を関連性でスクリーニングすることができます。[guardrails](guardrails.md) ドキュメントで詳細をお読みください
116116

117-
## エージェント の複製(クローン)
117+
## エージェントのクローン/コピー
118118

119-
エージェント の `clone()` メソッドを使用すると、エージェント を複製し、必要に応じてプロパティを変更できます
119+
エージェントの `clone()` メソッドを使用すると、エージェントを複製し、任意のプロパティを変更することができます
120120

121121
```python
122122
pirate_agent = Agent(
@@ -133,15 +133,15 @@ robot_agent = pirate_agent.clone(
133133

134134
## ツール使用の強制
135135

136-
ツールのリストを提供しても、必ずしも LLM がツールを使用するとは限りません。ツールの使用を強制するには、 [`ModelSettings.tool_choice`][agents.model_settings.ModelSettings.tool_choice] を設定します。有効な値は以下の通りです。
136+
ツールのリストを提供しても、LLM がツールを使用するとは限りません。[`ModelSettings.tool_choice`][agents.model_settings.ModelSettings.tool_choice] を設定することでツール使用を強制できます。有効な値は次のとおりです:
137137

138-
1. `auto` : LLM がツールを使用するかどうかを決定します。
139-
2. `required` : LLM にツールの使用を強制します(ただし、どのツールを使用するかは LLM が判断します)。
140-
3. `none` : LLM にツールを使用しないことを強制します
141-
4. 特定の文字列(例: `my_tool` )を設定すると、LLM はその特定のツールを使用することを強制されます
138+
1. `auto`LLM がツールを使用するかどうかを決定します。
139+
2. `required`LLM がツールを使用する必要があります(ただし、どのツールを使用するかは賢く決定できます)。
140+
3. `none`LLM がツールを使用しないことを要求します
141+
4. 特定の文字列を設定する例:`my_tool`、特定のツールを使用することを要求します
142142

143143
!!! note
144144

145-
無限ループを防ぐため、フレームワークはツール呼び出し後に自動的に `tool_choice` "auto" にリセットします。この動作は [`agent.reset_tool_choice`][agents.agent.Agent.reset_tool_choice] で設定可能です。無限ループは、ツールの実行結果が LLM に送信され、再びツール呼び出しが生成されるために発生します
145+
無限ループを防ぐために、フレームワークはツール呼び出し後に `tool_choice` を自動的に "auto" にリセットします。この動作は [`agent.reset_tool_choice`][agents.agent.Agent.reset_tool_choice] で設定可能です。無限ループは、ツールの結果が LLM に送信され、その後 `tool_choice` によって別のツール呼び出しが生成されるために発生します
146146

147-
ツール呼び出し後に完全に停止させたい場合(自動モードで続行しない場合)は、 [`Agent.tool_use_behavior="stop_on_first_tool"`] を設定すると、ツールの出力を最終レスポンスとして直接使用し、それ以上の LLM 処理を行いません
147+
ツール呼び出し後にエージェントが完全に停止するようにしたい場合(自動モードで続行するのではなく)、[`Agent.tool_use_behavior="stop_on_first_tool"`] を設定することで、ツールの出力を最終応答として直接使用し、さらなる LLM 処理を行わないようにできます

docs/ja/config.md

+16-16
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22

33
## API キーとクライアント
44

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

77
```python
88
from agents import set_default_openai_key
99

1010
set_default_openai_key("sk-...")
1111
```
1212

13-
また、使用する OpenAI クライアントを設定することも可能です。デフォルトでは、SDK は環境変数または上記で設定したデフォルトキーを使用して `AsyncOpenAI` インスタンスを作成します。これを変更するには、[set_default_openai_client()][agents.set_default_openai_client] 関数を使用します。
13+
また、使用する OpenAI クライアントを設定することもできます。デフォルトでは、SDK は環境変数からの API キーまたは上記で設定したデフォルトキーを使用して `AsyncOpenAI` インスタンスを作成します。これを変更するには、[set_default_openai_client()][agents.set_default_openai_client] 関数を使用します。
1414

1515
```python
1616
from openai import AsyncOpenAI
@@ -20,7 +20,7 @@ custom_client = AsyncOpenAI(base_url="...", api_key="...")
2020
set_default_openai_client(custom_client)
2121
```
2222

23-
さらに、使用する OpenAI API をカスタマイズすることもできます。デフォルトでは OpenAI Responses API を使用しますが[set_default_openai_api()][agents.set_default_openai_api] 関数を使用して Chat Completions API に変更できます
23+
最後に、使用する OpenAI API をカスタマイズすることもできます。デフォルトではOpenAI Responses API を使用します。これを Chat Completions API に変更するには[set_default_openai_api()][agents.set_default_openai_api] 関数を使用します
2424

2525
```python
2626
from agents import set_default_openai_api
@@ -30,15 +30,15 @@ set_default_openai_api("chat_completions")
3030

3131
## トレーシング
3232

33-
トレーシングはデフォルトで有効になっています。デフォルトでは、前述のセクションで設定した OpenAI API キー(環境変数またはデフォルトキー)を使用します。トレーシング専用の API キーを設定するには[`set_tracing_export_api_key`][agents.set_tracing_export_api_key] 関数を使用します。
33+
トレーシングはデフォルトで有効になっています。デフォルトでは、上記のセクションから OpenAI API キー(環境変数または設定したデフォルトキー)を使用します。トレーシングに使用する API キーを特定に設定するには[`set_tracing_export_api_key`][agents.set_tracing_export_api_key] 関数を使用します。
3434

3535
```python
3636
from agents import set_tracing_export_api_key
3737

3838
set_tracing_export_api_key("sk-...")
3939
```
4040

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

4343
```python
4444
from agents import set_tracing_disabled
@@ -48,7 +48,7 @@ set_tracing_disabled(True)
4848

4949
## デバッグログ
5050

51-
SDK はデフォルトでハンドラーが設定されていない 2 つの Python ロガーを持っています。デフォルトでは、警告およびエラーが `stdout` に送信され、それ以外のログは抑制されます
51+
SDK にはハンドラーが設定されていない 2 つの Python ロガーがあります。デフォルトでは、警告とエラーが `stdout` に送信されますが、他のログは抑制されます
5252

5353
詳細なログを有効にするには、[`enable_verbose_stdout_logging()`][agents.enable_verbose_stdout_logging] 関数を使用します。
5454

@@ -58,36 +58,36 @@ from agents import enable_verbose_stdout_logging
5858
enable_verbose_stdout_logging()
5959
```
6060

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

6363
```python
6464
import logging
6565

66-
logger = logging.getLogger("openai.agents") # トレーシング用ロガーの場合は openai.agents.tracing
66+
logger = logging.getLogger("openai.agents") # or openai.agents.tracing for the Tracing logger
6767

68-
# すべてのログを表示する場合
68+
# To make all logs show up
6969
logger.setLevel(logging.DEBUG)
70-
# INFO 以上を表示する場合
70+
# To make info and above show up
7171
logger.setLevel(logging.INFO)
72-
# WARNING 以上を表示する場合
72+
# To make warning and above show up
7373
logger.setLevel(logging.WARNING)
74-
# その他、必要に応じて設定
74+
# etc
7575

76-
# 必要に応じてカスタマイズ可能ですが、デフォルトでは `stderr` に出力されます
76+
# You can customize this as needed, but this will output to `stderr` by default
7777
logger.addHandler(logging.StreamHandler())
7878
```
7979

8080
### ログ内の機密データ
8181

82-
一部のログには機密データ(ユーザーデータなど)が含まれる場合があります。このデータのログ記録を無効化したい場合は、以下の環境変数を設定してください
82+
特定のログには機密データ(たとえば、ユーザーデータ)が含まれる場合があります。このデータのログ記録を無効にしたい場合は、次の環境変数を設定します
8383

84-
LLM の入力および出力のログ記録を無効化する場合:
84+
LLM の入力と出力のログ記録を無効にするには:
8585

8686
```bash
8787
export OPENAI_AGENTS_DONT_LOG_MODEL_DATA=1
8888
```
8989

90-
ツールの入力および出力のログ記録を無効化する場合:
90+
ツールの入力と出力のログ記録を無効にするには:
9191

9292
```bash
9393
export OPENAI_AGENTS_DONT_LOG_TOOL_DATA=1

0 commit comments

Comments
 (0)