

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用知識庫設定推理模型的回應產生
<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 | 此模型會有 32,768 個字符，其中包括輸出和推理字符。 | 您可以使用可設定的字符預算來啟用或停用此模型的推理。預設會停用推理。 | 
| Anthropic Claude Sonnet 4 | anthropic.claude-sonnet-4-20250514-v1:0 | 此模型會有 65,536 個字符，其中包括輸出和推理字符。 | 您可以使用可設定的字符預算來啟用或停用此模型的推理。預設會停用推理。 | 
| Anthropic Claude 3.7 Sonnet | anthropic.claude-3-7-sonnet-20250219-v1:0 | 此模型會有 65,536 個字符，其中包括輸出和推理字符。 | 您可以使用可設定的字符預算來啟用或停用此模型的推理。預設會停用推理。 | 
| 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 在內的所有模型推理時，溫度會設為零。啟用推理時，溫度必須設定為 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 接收回應時發生延遲。