

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

# 回應結構重點
<a name="complete-request-schema-response"></a>

以下顯示非串流 `Converse`和 `InvokeModel`函數傳回之回應結構的關鍵元素。如需完整回應結構以及串流函數的請求和回應結構的詳細資訊，請參閱 API 文件。

```
{
    "ResponseMetadata": {
        "RequestId": {{string}},
        "HTTPStatusCode": {{int}},
        "HTTPHeaders": {
            "date": {{string}},
            "content-type": "application/json",
            "content-length": {{string}},
            "connection": "keep-alive",
            "x-amzn-requestid": {{string}}
        },
        "RetryAttempts": 0
    },
    "output": {
        "message": {
            "role": "assistant",
            "content": [
                { // Optional
                    "reasoningContent": {
                        "reasoningText": {
                            "text": {{string}}
                        }
                    }
                },
                { // Optional
                    "toolUse": {
                        "toolUseId": {{string}},
                        "name": {{string}},
                        "input": {{object}}
                    }
                },
                { // Optional
                    "text": {{string}}
                },
                { // Optional
                    "image": {
                        "format": "png",
                        "source": {
                            "bytes": {
                                "bytes": {{image}} // Binary array (Converse API) or Base64-encoded string (Invoke API)
                            }
                        }
                    }
                }
            ]
        }
    },
    "stopReason": {{string}}, // "end_turn" | "content_filtered" | "max_tokens" | "malformed_model_output" | "malformed_tool_use" | etc.
    "usage": {
        "inputTokens": {{int}},
        "outputTokens": {{int}},
        "totalTokens": {{int}}
    },
    "metrics": {
        "latencyMs": {{int}}
    }
}
```

以下是關鍵回應元素：
+ `output` – （必要） 包含模型的回應訊息。
  + `message` – （必要） 助理的回應訊息。
    + `content` – （必要） 一或多個內容區塊的陣列，可包含：
      + `reasoningContent` – （選用） 如果已啟用推理，則傳回。包含推理文字，一律會在回應`[REDACTED]`中。
      + `toolUse` – （選用） 如果呼叫工具，則傳回。包含工具使用 ID、名稱和輸入引數。
      + `text` – （選用） 如果模型以文字內容回應，則傳回。
      + `image` – （選用，僅限） 如果模型產生映像，則傳回。對於 產生的映像，格式一律為 PNG。
+ `stopReason` – （必要） 列舉值，指出模型停止產生輸出的原因。支援的值包括：
  + `end_turn` – 已達到轉彎的邏輯結尾。
  + `max_tokens` – 輸出達到使用者設定`maxTokens`的限制，或模型自己的最大輸出字符限制。
  + `content_filtered` – 模型的輸出違反了 AWS 負責任的 AI 政策。
  + `malformed_model_output` – 模型產生無效的輸出。
  + `malformed_tool_use` – 模型產生無效的`toolUse`輸出。
  + `service_unavailable` – 無法連線其中一個內建工具服務。
  + `invalid_query` – 模型傳送至內建 Web Grounding 工具的查詢無效。
  + `max_tool_invocations` – 表示已呼叫內建工具，但即使多次重試也未產生有效的結果。
+ `usage` – （必要） 字符使用資訊，包括輸入字符、輸出字符和總字符。
+ `metrics` – （必要） 效能指標，包括以毫秒為單位的總推論延遲。