

# ツール呼び出しのトラブルシューティング
<a name="prompting-tool-troubleshooting"></a>

ツールや Amazon Nova モデルを操作すると、さまざまなエラーが表示されることがあります。トラブルシューティングに役立つ例とヒントをいくつか示します。

## モデルエラーの例外
<a name="troubleshooting-model-error"></a>

`An error occurred (ModelErrorException) when calling the Converse operation: The model produced an invalid sequence as part of ToolUse. Please refer to the model tool use troubleshooting guide.`

**推論パラメータを有効にする** – Amazon Nova モデルでは、Greedy デコードを使用するときの呼び出しツールの成功率が高くなります。Greedy デコードを有効にするには、temperature パラメータを 0 に設定します。

```
inferenceConfig={
    "temperature": 0
}

additionalModelRequestFields={"inferenceConfig": {"topK": 1}}
```

**最大トークン数を増やす** – ツール出力が大きなトークン出力を要求するのが一般的です。最大トークンセットが、予想される戻りスキーマに対応するのに十分な大きさであることを確認してください。モデルレスポンスが最大トークン数より大きい場合、例外がトリガーされます。`inferenceConfig` パラメータで最大トークンを設定できます。

```
inferenceConfig={
    "maxTokens": 3000
}
```

**システムプロンプトを確認する** – ツール呼び出しの精度を向上させるために、Amazon Nova はツールを呼び出すときに一連の思考連鎖の推論を使用します。この出力は、<thinking> タグのレスポンスに表示されます。この機能を削除することはお勧めしません。代わりに、アプリケーションで不要な出力を削除することをお勧めします。

## Validation Exception
<a name="troubleshooting-validation-exception"></a>

`An error occurred (ValidationException) when calling the Converse operation`

渡されたツール設定は、必要な規則に準拠していません。すべてのパラメータの仕様については、「[Converse API 仕様](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/bedrock-runtime/client/converse.html)」を参照してください。

## ツールは想定どおりに返されません
<a name="troubleshooting-tool-not-returned"></a>

モデルがツールを無視しているように見える場合は、次のようにツール設定の正しい JSON スキーマに従っていることを確認してください。
+ 最上位スキーマは[オブジェクト](https://json-schema.org/understanding-json-schema/reference/object)タイプである必要がある
+ 最上位オブジェクトでは、`type` (「オブジェクト」に設定する必要がある)、`properties`、および `required` の 3 つのフィールドのみがサポートされている
+ トップレベルでサポートされていない一般的なフィールド: `$schema`、`description`、`title`、`additionalProperties`

ツールが期待通りに返されない場合は、`tool_choice` API パラメータを活用することをお勧めします。
+ **Tool**: 指定されたツールは 1 回呼び出されます。

  ```
  {
     "toolChoice": {
          "tool": {
              "name": "name_of_tool"
          }
      }
  }
  ```
+ **Any**: 指定されたツールのいずれかが少なくとも 1 回呼び出されます。

  ```
  {
     "toolChoice": {
          "any": {}
      }
  }
  ```