

# 도구 직접 호출 문제 해결
<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 모델은 그리디 디코딩을 사용할 때 더 많은 성공적인 직접 호출 도구를 제공합니다. 그리디 디코딩을 활성화하려면 온도 파라미터를 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`(‘object’로 설정해야 함), `properties`, `required`의 세 가지 필드만 지원됩니다.
+ 최상위 수준에서 지원되지 않는 일반적인 필드는 `$schema`, `description`, `title` 및 `additionalProperties`입니다.

도구가 예상대로 반환되지 않을 경우, `tool_choice` API 파라미터를 활용하는 것이 권장됩니다.
+ **도구**: 지정된 도구가 한 번 직접적으로 호출됩니다.

  ```
  {
     "toolChoice": {
          "tool": {
              "name": "name_of_tool"
          }
      }
  }
  ```
+ **모두**: 제공된 도구 중 하나가 한 번 이상 직접적으로 호출됩니다.

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