

# ツールの選択方法の制御
<a name="speech-tools-choice"></a>

**注記**  
このドキュメントは Amazon Nova バージョン 1 を対象としています。Amazon Nova 2 Sonic ガイドについては、「[ツールの設定](https://docs.aws.amazon.com/nova/latest/nova2-userguide/sonic-tool-configuration.html)」を参照してください。

Amazon Nova Sonic は、ツール実行の管理に役立つ 3 つのツール選択パラメータをサポートしています。`toolChoice` パラメータを指定することで、モデルが使用するツールを制御できます。
+ **ツール** – `tool` オプションにより、特定の名前付きツールがレスポンス生成の開始時に 1 回だけ呼び出されます。例えば、ナレッジベースツールを指定すると、モデルはツールが必要と考えるかどうかにかかわらず、応答する前にこのナレッジベースをクエリします。
+ **任意** – `any` オプションにより、利用可能なツールの少なくとも 1 つがレスポンス生成の開始時に呼び出され、モデルが最適なツールを選択できるようになります。これは、複数のナレッジベースまたはツールがあり、どのナレッジベースまたはツールかを指定することなく、少なくとも 1 つをモデルが活用するようにさせたい場合に役立ちます。
+ **自動** – `auto` では、モデルにはレスポンス生成の開始時にツールが必要かどうかを判断するための完全な柔軟性があり、必要に応じて複数のツールを呼び出すことができます。これがデフォルトの動作です。

詳細については、「[Amazon Nova でのツールの使用](https://docs.aws.amazon.com/nova/latest/userguide/tool-choice.html)」を参照してください。

**マルチツールシーケンスの動作**  
Amazon Nova Sonic は、各レスポンスサイクル内でツールの実行をインテリジェントに処理します。`tool` オプションを使用すると、モデルは指定されたツールを最初に実行し、最終的なレスポンスを生成する前に追加のツールが必要かどうかを評価します。同様に、`any` オプションでは、モデルは使用可能なオプションからまず 1 つのツールを選択して呼び出し、回答の生成に進む前に追加のツール呼び出しが必要かどうかを判断します。

いずれの場合も、モデルは単一のレスポンス生成サイクル内でツール実行シーケンス全体を管理し、適切なレスポンスを生成するのに十分な情報がいつ収集されたかを判断します。

例えば、次のシナリオ例を考えてみます。

------
#### [ Knowledge base example ]
+ `toolChoice: "knowledge_tool"` では、モデルは常に指定されたナレッジベースを最初にクエリし、必要に応じて応答する前に他のツールを使用する場合があります。
+ `toolChoice: "any"` で、かつ複数のナレッジベースが利用可能な場合、モデルは最も関連性の高いナレッジベースを選択し、クエリを実行し、必要に応じて追加のソースを参照します。
+ `toolChoice: "auto"` では、モデルは直接回答できる質問にはナレッジ検索を完全にスキップしたり、複雑な質問には複数のナレッジベースをクエリしたりできます。

------
#### [ Multi-functional assistant example ]
+ 気象、カレンダー、ナレッジツールを備えた仮想アシスタントは、`toolChoice: "auto"` を使用してさまざまなクエリに柔軟に対応し、必要なツールのみを呼び出すことができます。
+ `toolChoice: "any"` では、モデルが直接回答する可能性があるクエリであっても、少なくとも 1 つのツールが常に使用されるようになります。

------

詳細については、「[ツールの選択](https://docs.aws.amazon.com/nova/latest/userguide/tool-choice.html)」を参照してください。