

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

# 調用 Amazon Nova 理解模型
<a name="invoke"></a>

**注意**  
本文件適用於 Amazon Nova 第 1 版。如需如何將請求傳送至 Amazon Nova 2 的資訊，請造訪 [Core 推論](https://docs.aws.amazon.com/nova/latest/nova2-userguide/core-inference.html)。

Amazon Nova 多模態理解模型可用於透過 Invoke API ([InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html)、[InvokeModelWithResponseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModelWithResponseStream.html)) 和 Converse API ([Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) 和 [ConverseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_ConverseStream.html)) 進行推論。若要建立對話式應用程式，請參閱[執行與 Converse API 操作的對話](https://docs.aws.amazon.com/bedrock/latest/userguide/conversation-inference.html)。這兩種 API 方法 (Invoke 和 Converse) 都遵循非常相似的請求模式，如下所述

Invoke API 和 Converse API 之間的主要差異如下：
+ Converse 不支援類似 topK 的推論參數，且需要在 `additionalModelRequestFields` 中傳遞，而在 Invoke API 中，則可以直接在推論參數中傳遞。
+ 文件支援僅限於 Converse API，在 Invoke API 中不受支援。
+ Invoke API 與 Convserse API 建構的回應解析格式不同。
+ `ConverseStream` 和 `InvokeModelWithStreaming` 之間的回應串流不同。

若要調用 Amazon Nova 模型，您必須在打算使用模型的每個區域中[請求存取 Amazon Bedrock 基礎模型](https://docs.aws.amazon.com/bedrock/latest/userguide/getting-started.html#getting-started-model-access)。

**Topics**
+ [訊息 API 概觀](#messages-api-overview)
+ [使用系統提示詞](#utilizing-system-prompt)
+ [使用 Converse API](using-converse-api.md)
+ [使用 Invoke API](using-invoke-api.md)
+ [完成請求結構描述](complete-request-schema.md)

## 訊息 API 概觀
<a name="messages-api-overview"></a>

Amazon Nova 理解模型利用訊息 API，可提交包含文字、影像、影片和文件的結構化輸入訊息清單。模型接著會在對話中產生下一個訊息。訊息 API 支援單一查詢和無狀態多回合對話，允許建立聊天機器人和虛擬助理應用程式。API 會管理使用者與 Amazon Nova 模型 (助手) 之間的對話交流。

Amazon Nova 模型經過訓練，在交替式使用者和助理對話回合上運作。建立新訊息時，您可以使用訊息參數指定先前的對話回合。模型接著會在對話中產生接下來的訊息。

每個輸入訊息必須是包含角色和內容的物件。使用者可以指定具有使用者角色的單一訊息，或包含具有使用者和助理角色的多個訊息。不過，第一個訊息必須一律使用使用者角色。如果採用從 Amazon Nova 預先填入回應的技術 (透過包含具有助理角色的最終訊息)，模型將繼續根據提供的內容進行回應。此方法仍會產生具有助理角色的回應。

下列代表單一使用者訊息：

```
[{
  "role": "user",
  "content": [{"text":"Hello, Nova"}]
}]
```

 以下是具有多個對話回合的範例：

```
[
  {"role": "user", "content": [{"text": "Hello there."}]},
  {"role": "assistant", "content": [{"text": "Hi, I'm Chatbot trained to answer your questions. How can I help you?"}]},
  {"role": "user", "content": [{"text": "Can you explain LLMs in plain English?"}]}
]
```

以下是來自 Amazon Nova 的部分填入回應的範例：

```
[
  {"role": "user", "content": [{"text":"Please describe yourself using only JSON"}]},
  {"role": "assistant", "content": [{"text":"Here is my JSON description:\n{"}]}
]
```

如需建立 Amazon Nova 模型提示詞的資訊，請參閱 [文字理解提示最佳實務](prompting-text-understanding.md)。

## 使用系統提示詞
<a name="utilizing-system-prompt"></a>

您可以在請求中包含系統提示詞。系統提示詞可讓您提供上下文和指示給 Amazon Nova，例如指定特定目標或角色。在 `system` 欄位中指定系統提示詞，如下列範例所示：

```
[
   {"text": "You are an expert SaS analyst......"}
]
```

如需如何包含系統提示詞的範例，請參閱下列各節：
+ [使用 Converse API](https://docs.aws.amazon.com/nova/latest/userguide/using-converse-api.html)
+ [使用 Invoke API](https://docs.aws.amazon.com/nova/latest/userguide/using-invoke-api.html)
+ [完成請求結構描述](https://docs.aws.amazon.com/nova/latest/userguide/complete-request-schema.html)