

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

# 在 Amazon Bedrock 中測試流程
<a name="flows-test"></a>

建立流程之後，您會有一份*工作草稿*。工作草稿是流程的版本，可以反覆組建及測試流程。每次變更流程時，都會更新工作草稿。

當您測試流程時，Amazon Bedrock 會先驗證下列項目，並在驗證失敗時擲回例外狀況：
+ 所有流程節點之間的連線。
+ 至少已設定一個流程輸出節點。
+ 輸入和輸出變數類型會視需要進行比對。
+ 條件表達式有效，並提供預設結果。

如果驗證失敗，則您需要先修正錯誤，才能測試及驗證流程的效能。以下是測試流程的步驟，選擇您偏好方法的索引標籤，然後遵循步驟：

------
#### [ Console ]

**測試您的流程**

1. 如果您尚未進入**流程建置器**，請執行下列動作：

   1. 使用具有 Amazon Bedrock 主控台使用許可的 IAM 身分登入AWS 管理主控台。接著，開啟位於 [https://console.aws.amazon.com/bedrock](https://console.aws.amazon.com/bedrock) 的 Amazon Bedrock 主控台。

   1. 從左側導覽窗格中選取 **Amazon Bedrock 流程**。然後，在 **Amazon Bedrock 流程**區段中，選取要測試的流程。

   1. 選擇**在流程建置器中編輯**。

1. 在**流程建置器頁面**的右窗格中，輸入要調用流程的輸入。檢查輸入資料類型是否符合您為流程輸入節點設定的輸出資料類型。

1. 選擇**執行**。

1. 流程組態中觸發錯誤的節點或連線會以紅色反白顯示，而觸發警告的節點或連線則會以黃色反白顯示。讀取錯誤訊息和警告、修正已識別的問題、儲存流程，然後再次執行測試。
**注意**  
您必須儲存流程，以便在測試流程時，套用您所做的變更。

1. (選用) 若要檢視每個節點的輸入、輸出和執行持續時間，請選擇在回應中**顯示追蹤**。如需詳細資訊，請參閱 [在 Amazon Bedrock 中檢視流程的追蹤，以追蹤流程中的每個步驟檢視流程的追蹤，以追蹤流程中的每個步驟](flows-trace.md)。若要返回視覺化建置器，請選擇**隱藏追蹤**，或選取摺疊圖示。

1. 滿意流程效能後，請選擇**儲存並結束**。

1. 您在建置流程時，可以繼續反覆運算。當您滿意並準備好將其部署到生產環境時，請建立流程的版本和別名以指向版本。如需詳細資訊，請參閱 [使用版本和別名將流程部署到應用程式](flows-deploy.md)。

------
#### [ API ]

若要測試流程，請使用 [Amazon Bedrock 代理人執行時期端點](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-rt)傳送 [InvokeFlow](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeFlow.html) 請求。在 `flowIdentifier` 欄位中包含流程的 ARN 或 ID，以及在 `flowAliasIdentifier` 欄位中使用之別名的 ARN 或 ID。

若要檢視每個節點的輸入和輸出，請將 `enableTrace` 欄位設定為 `TRUE`。如需詳細資訊，請參閱 [在 Amazon Bedrock 中檢視流程的追蹤，以追蹤流程中的每個步驟檢視流程的追蹤，以追蹤流程中的每個步驟](flows-trace.md)。

請求內文會指定流程的輸入，格式如下：

```
{
   "inputs": [ 
      { 
         "content": { 
            "document": "JSON-formatted string"
         },
         "nodeName": "string",
         "nodeOutputName": "string"
      }
   ],
   "enableTrace": TRUE | FALSE
}
```

在 `document` 欄位中提供輸入，在 `nodeName` 欄位中提供輸入的名稱，以及在 `nodeOutputName` 欄位中提供輸入的名稱。

回應會以串流的形式傳回。每個傳回的事件都包含來自 `document` 欄位中節點的輸出、在 `nodeName` 欄位中處理的節點，以及 `nodeType` 欄位中節點的類型。這些事件為下列格式：

```
{
    "flowOutputEvent": { 
        "content": { 
            "document": "JSON-formatted string"
        },
        "nodeName": "string",
        "nodeType": "string"
    }
}
```

如果流程完成，則也會傳回具有 `completionReason` 的 `flowCompletionEvent` 欄位。如果發生錯誤，則會傳回對應的錯誤欄位。

------