@@ -4,16 +4,16 @@ search:
44--- 
55# エージェント  
66
7- エージェントは、アプリの中核となるビルディングブロックです 。エージェントは、 instructions とツールで構成された大規模言語モデル LLM です 。
7+ エージェントはアプリの中心となる構成要素です 。エージェントは、大規模言語モデル ( LLM ) を instructions とツールで設定したものです 。
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 `   : developer メッセージまたは  system prompt とも呼ばれます。 
15+ -  ` model `   : 使用する LLM を指定します。また、 ` temperature `  、 ` top_p `  などのモデル調整パラメーターを設定する  ` model_settings `  をオプションで指定できます。 
16+ -  ` tools `  : エージェントがタスクを達成するために使用できるツールです。 
1717
1818``` python 
1919from  agents import  Agent, ModelSettings, function_tool
@@ -33,7 +33,7 @@ agent = Agent(
3333
3434## コンテキスト  
3535
36- エージェントは ` context `  型に対してジェネリックです。 context は依存性インジェクション用のツールで、あなたが作成して  ` Runner.run() `  に渡すオブジェクトです。このオブジェクトはすべてのエージェント、ツール、ハンドオフなどに渡され、エージェント実行時の依存関係と状態の入れ物として機能します。 context には任意の  Python オブジェクトを指定できます 。
36+ エージェントは ` context `  型についてジェネリックです。コンテキストは依存性注入用のツールで、 ` Runner.run() `  に渡すオブジェクトです。このオブジェクトはすべてのエージェント、ツール、ハンドオフなどに渡され、実行中の依存関係や状態をまとめて保持します。任意の  Python オブジェクトをコンテキストとして渡せます 。
3737
3838``` python 
3939@dataclass 
@@ -51,7 +51,7 @@ agent = Agent[UserContext](
5151
5252## 出力タイプ  
5353
54- デフォルトでは、エージェントはプレーンテキスト ( つまり ` str ` )  を出力します。特定の型の出力をエージェントに生成させたい場合は、  ` output_type `  パラメーターを使用します。一般的な選択肢は  [ Pydantic] ( https://docs.pydantic.dev/ )  オブジェクトですが、  Pydantic の  [ TypeAdapter] ( https://docs.pydantic.dev/latest/api/type_adapter/ )  でラップできる型 (dataclass、list 、TypedDict など) であればサポートされます 。
54+ デフォルトでは、エージェントはプレーンテキスト( つまり ` str ` ) を出力します。特定の型で出力を受け取りたい場合は、 ` output_type `  パラメーターを使用します。よく使われるのは  Pydantic オブジェクトですが、Pydantic TypeAdapter でラップできる型であれば何でも対応しています。たとえば dataclasses 、lists  、TypedDict などです 。
5555
5656``` python 
5757from  pydantic import  BaseModel
@@ -72,11 +72,11 @@ agent = Agent(
7272
7373!!! note
7474
75-  `output_type` を渡すと、モデルは通常のプレーンテキスト応答ではなく [ structured outputs](https://platform.openai.com/docs/guides/structured-outputs) を使用するよう指示されます 。 
75+  `output_type` を渡すと、モデルに通常のプレーンテキストではなく  structured outputs を使用するよう指示します 。 
7676
7777## ハンドオフ  
7878
79- ハンドオフは、エージェントが委任できるサブエージェントです。ハンドオフのリストを渡すことで、エージェントは関連がある場合にそれらへ委任を選択できます 。これは、単一タスクに特化したモジュール化されたエージェントをオーケストレーションできる強力なパターンです。詳しくは  [ ハンドオフ ] ( handoffs.md )  のドキュメントをご覧ください 。
79+ ハンドオフは、エージェントが委任できるサブエージェントです。ハンドオフのリストを渡すと、エージェントは必要に応じてそれらに処理を委任できます 。これは、単一のタスクに特化したモジュール化されたエージェントをオーケストレーションする強力なパターンです。詳細は  [ handoffs ] ( handoffs.md )  ドキュメントを参照してください 。
8080
8181``` python 
8282from  agents import  Agent
@@ -97,7 +97,7 @@ triage_agent = Agent(
9797
9898## 動的 instructions  
9999
100- 多くの場合 、エージェント作成時に instructions を指定できますが、関数を介して動的に  instructions を提供することも可能です。この関数はエージェントと context を受け取り 、プロンプトを返す必要があります。通常の関数と  ` async `  関数の両方を受け付けます 。
100+ ほとんどの場合 、エージェント作成時に instructions を指定できます。ただし、関数を通じて動的  instructions を提供することもできます。この関数はエージェントとコンテキストを受け取り 、プロンプトを返す必要があります。同期関数と  ` async `  関数の両方が使用可能です 。
101101
102102``` python 
103103def  dynamic_instructions (
@@ -112,17 +112,17 @@ agent = Agent[UserContext](
112112)
113113``` 
114114
115- ## ライフサイクル イベント  (hooks) 
115+ ## ライフサイクルイベント  (hooks) 
116116
117- エージェントのライフサイクルを観察したい場合があります 。たとえば、イベントをログに記録したり、特定のイベント発生時にデータを事前取得したりできます。  ` hooks `  プロパティを使ってエージェントのライフサイクルにフックできます 。[ ` AgentHooks ` ] [ agents.lifecycle.AgentHooks ]  クラスをサブクラス化し、関心のあるメソッドをオーバーライドしてください 。
117+ エージェントのライフサイクルを監視したい場合があります 。たとえば、イベントをログに記録したり、特定のイベント発生時にデータを事前取得したりしたい場合です。 ` hooks `  プロパティを使用してエージェントのライフサイクルにフックできます 。[ ` AgentHooks ` ] [ agents.lifecycle.AgentHooks ]  クラスをサブクラス化し、興味のあるメソッドをオーバーライドしてください 。
118118
119119## ガードレール  
120120
121- ガードレールを使用すると、エージェントの実行と並行してユーザー入力に対するチェックやバリデーションを行えます 。たとえば、ユーザー入力の関連性をチェックすることが可能です。詳しくは  [ ガードレール ] ( guardrails.md )  のドキュメントをご覧ください 。
121+ ガードレールを使用すると、エージェントの実行と並行してユーザー入力に対してチェックやバリデーションを実行できます 。たとえば、ユーザー入力の関連性をフィルタリングすることが可能です。詳細は  [ guardrails ] ( guardrails.md )  ドキュメントをご覧ください 。
122122
123- ## エージェントのクローン /  コピー  
123+ ## エージェントのクローン/ コピー  
124124
125- エージェントの  ` clone() `  メソッドを使用すると、エージェントを複製し、任意のプロパティを変更できます。
125+ ` clone() `  メソッドを使用すると、エージェントを複製し、任意のプロパティを変更できます。
126126
127127``` python 
128128pirate_agent =  Agent(
@@ -139,15 +139,15 @@ robot_agent = pirate_agent.clone(
139139
140140## ツール使用の強制  
141141
142- ツールのリストを渡しても、   LLM   が必ずツールを使用するとは限りません。[ ` ModelSettings.tool_choice ` ] [ agents.model_settings.ModelSettings.tool_choice ]  を設定することでツール使用を強制できます 。有効な値は次のとおりです。
142+ ツールのリストを渡しても、 LLM が必ずツールを使用するとは限りません。[ ` ModelSettings.tool_choice ` ] [ agents.model_settings.ModelSettings.tool_choice ]  を設定することでツールの使用を強制できます 。有効な値は次のとおりです。
143143
144- 1 .  ` auto `  :   LLM   がツールを使用するかどうかを判断します。 
145- 2 .  ` required `  :   LLM  にツール使用を必須にします (どのツールを使うかはインテリジェントに選択) 。 
146- 3 .  ` none `  :   LLM  にツールを使用しないことを要求します 。 
147- 4 .  具体的な文字列 (例:  ` my_tool ` ) を指定すると、その特定のツールを  LLM  に使用させます 。
144+ 1 .  ` auto `  : LLM がツールを使用するかどうかを判断します。 
145+ 2 .  ` required `  : LLM にツール使用を必須とします(どのツールを使うかは LLM が判断します) 。 
146+ 3 .  ` none `  : LLM にツールを使用しないよう要求します 。 
147+ 4 .  具体的な文字列を指定する( ` my_tool `  など):  LLM にそのツールを必ず使用させます 。
148148
149149!!! note
150150
151-  無限ループを防ぐため、フレームワークはツール呼び出し後に `tool_choice` を自動的に " auto"  にリセットします。この動作は  [`agent.reset_tool_choice`][agents.agent.Agent.reset_tool_choice] で設定可能です。無限ループの原因は 、ツールの結果が   LLM  に送信され、その結果  `tool_choice` により再度ツール呼び出しが生成される、という循環にあります 。 
151+  無限ループを防ぐため、フレームワークはツール呼び出し後に `tool_choice` を自動的に ` auto`  にリセットします。この挙動は  [`agent.reset_tool_choice`][agents.agent.Agent.reset_tool_choice] で設定できます。無限ループとは 、ツールの結果が LLM に送られ、その後  `tool_choice` により再びツール呼び出しが生成される、というサイクルが延々と続くことを指します 。 
152152
153-  ツール呼び出し後に ( auto モードで続行せず) エージェントを完全に停止させたい場合は、 [`Agent.tool_use_behavior="stop_on_first_tool"`] を設定してください。これにより、ツールの出力をそのまま最終応答として使用し、 追加の   LLM   処理を行いません。 
153+  ツール呼び出し後に auto モードで続行せず、完全に停止させたい場合は、 [`Agent.tool_use_behavior="stop_on_first_tool"`] を設定してください。ツール出力をそのまま最終応答として使用し、 追加の LLM 処理を行いません。 
0 commit comments