

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用知识库为推理模型配置响应生成
<a name="kb-test-configure-reasoning"></a>

某些基础模型能够执行模型推理，因而可以执行较大型的复杂任务，并将其分解为较小型、较简单的步骤。此过程通常被称为思维链（CoT）推理，可以让模型有机会在做出反应之前进行思考，从而提高模型的准确性。模型推理对于多步分析、数学问题和复杂推理任务等任务最为有用。有关更多信息，请参阅[使用模型推理增强模型响应](inference-reasoning.md)。

**注意**  
本页介绍如何使用专门针对 Amazon Bedrock 知识库的推理配置。有关使用 `InvokeModel` API 为直接模型调用配置推理的信息，请参阅[使用模型推理增强模型响应](inference-reasoning.md)。

启用模型推理后，它可以提高准确性并获得更好的引文结果，但可能导致延迟增加。以下是您在将推理模型用于 Amazon Bedrock 知识库以查询数据来源和生成响应时的一些注意事项。

**Topics**
+ [推理模型](#kb-test-reasoning-models)
+ [对 Claude 3.7 Sonnet 使用模型推理](#kb-test-reasoning-using)
+ [一般注意事项](#kb-test-reasoning-general-considerations)
+ [检索和生成 API 的注意事项](#kb-test-reasoning-api-considerations)

## 推理模型
<a name="kb-test-reasoning-models"></a>

模型推理适用于以下模型。


| 基础模型 | 模型 ID | 词元数量 | 推理配置 | 
| --- | --- | --- | --- | 
| Anthropic Claude Opus 4 | anthropic.claude-opus-4-20250514-v1:0 | 此模型将有 32768 个词元，包括输出词元和推理词元。 | 可使用可配置的词元预算，为此模型启用或禁用推理。默认情况下，禁用推理。 | 
| Anthropic Claude Sonnet 4 | anthropic.claude-sonnet-4-20250514-v1:0 | 此模型将有 65536 个词元，包括输出词元和推理词元。 | 可使用可配置的词元预算，为此模型启用或禁用推理。默认情况下，禁用推理。 | 
| Anthropic Claude 3.7 Sonnet | anthropic.claude-3-7-sonnet-20250219-v1:0 | 此模型将有 65536 个词元，包括输出词元和推理词元。 | 可使用可配置的词元预算，为此模型启用或禁用推理。默认情况下，禁用推理。 | 
| DeepSeek DeepSeek-R1 | deepseek.r1-v1:0 | 此模型将有 8192 个词元，包括输出词元和推理词元。无法配置思考词元的数量，并且输出词元的最大数量不得超过 8192。 | 此模型始终启用推理。此模型不支持开启和关闭推理功能的切换。 | 

## 对 Claude 3.7 Sonnet 使用模型推理
<a name="kb-test-reasoning-using"></a>

**注意**  
DeepSeek-R1 模型始终启用模型推理。此模型不支持开启和关闭推理功能的切换。

使用 Claude 3.7 Sonnet 模型时，可以使用 [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html) API 的 `additionalModelRequestFields` 参数启用或禁用模型推理。此参数接受任何键值对。例如，您可以添加 `reasoningConfig` 字段，并使用 `type` 键来启用或禁用推理，如下所示。

```
{
   "input": { 
      "text": "string",
      "retrieveAndGenerateConfiguration": { 
      "knowledgeBaseConfiguration": { 
         "generationConfiguration": { 
            "additionalModelRequestFields": {
                "reasoningConfig" : {
                    "type": "enabled",
                    "budget_tokens": INT_VAL, #required when enabled
                }
            }
         },
         "knowledgeBaseId": "string",
      },
      "type": "string"
   },
   "sessionId": "string"
}
```

## 一般注意事项
<a name="kb-test-reasoning-general-considerations"></a>

以下是将推理模型用于知识库的一些一般注意事项。
+ 推理模型最多有五分钟的时间来响应查询。如果模型响应查询的时间超过五分钟，则会导致超时。
+ 为了避免超过超时时间（五分钟），请仅在配置查询和响应生成时，在生成步骤中启用模型推理。编排步骤不能包含模型推理。
+ 推理模型最多可以使用 8192 个词元来响应查询，其中包括输出和思考词元。在任何请求中，如果输出词元的最大数量超过此限制，都将导致错误。

## 检索和生成 API 的注意事项
<a name="kb-test-reasoning-api-considerations"></a>

以下是将 [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html) API 用于推理模型时的一些注意事项。
+ 默认情况下，当包括 Claude 3.7 Sonnet 在内的所有模型都禁用推理时，temperature 将设置为 0。启用推理后，必须将 temperature 设置为 1。

  ```
  "inferenceConfig": {
      "textInferenceConfig": {
          "maxTokens": 8192,
          "temperature": 1
      }
  }
  ```
+ 为 Claude 3.7 Sonnet 模型启用推理功能时，必须禁用参数 Top P。Top P 是一个附加的模型请求字段，用于确定生成期间可供选择的可能词元的百分位数。默认情况下，其他 Anthropic Claude 模型的 Top P 值为 1。对于 Claude 3.7 Sonnet 模型，默认情况下将禁用此值。
+ 使用模型推理时，可能会导致延迟增加。在使用此 API 操作和 [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerateStream.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerateStream.html) API 操作时，您可能会注意到接收来自 API 的响应有延迟。