客服人員行為的測試和故障診斷 - Amazon Bedrock

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

客服人員行為的測試和故障診斷

建立代理程式後,您會有一份工作草稿。工作草案是代理程式的版本,可以用來反覆組建代理程式。每次對客服人員進行變更時,工作草稿都會更新。當您對客服人員的組態感到滿意時,您可以建立版本,這是客服人員的快照,以及指向該版本的別名。然後,您可以透過呼叫別名,將代理程式部署到您的應用程式。如需詳細資訊,請參閱將 Amazon Bedrock 代理程式部署並整合到您的應用程式中

下列清單說明如何測試 代理程式:

  • 在 Amazon Bedrock 主控台中,您可以開啟側邊的測試視窗,並傳送輸入給客服人員回應。您可以選取工作草稿或已建立的版本。

  • 在 中API,工作草稿是 DRAFT版本。您可以使用 將輸入傳送到您的代理程式 InvokeAgent 測試別名、 TSTALIASID或指向靜態版本的不同別名。

為了協助疑難排解客服人員的行為,Amazon Bedrock 客服人員可讓您在客服人員的工作階段期間檢視追蹤。追蹤會顯示代理程式的 step-by-step推理程序。如需追蹤的詳細資訊,請參閱 使用追蹤追蹤追蹤代理程式step-by-step推理程序

以下是測試代理程式的步驟。選擇您偏好方法的索引標籤,然後遵循下列步驟:

Console
測試代理程式
  1. AWS Management Console 使用IAM具有 Amazon Bedrock 許可的角色登入 ,並在 開啟 Amazon Bedrock 主控台https://console.aws.amazon.com/bedrock/

  2. 從左側導覽窗格中選取客服人員。然後,在客服人員區段中選擇客服人員

  3. 客服人員區段中,從客服人員清單中選擇您要測試的客服人員連結。

  4. 測試視窗會出現在右側的窗格中。

    注意

    如果測試視窗已關閉,您可以選擇客服人員詳細資訊頁面頂部的測試或其中的任何頁面來重新開啟它。

  5. 建立代理程式後,您必須以下列其中一種方式準備工作草稿變更,將其封裝:

    • 測試視窗中,選取準備

    • 工作草稿頁面中,選取頁面頂端的準備

    注意

    每次更新工作草稿時,您必須準備客服人員,以將最新的變更封裝到客服人員。最佳實務是,建議您一律在工作草稿頁面的客服人員概觀區段中檢查客服人員的上次準備時間,以確認您使用最新的組態測試客服人員。

  6. 若要選擇要測試的別名和相關聯的版本,請使用測試視窗頂端的下拉式功能表。根據預設,會選取 TestAlias:工作草稿組合。

  7. (選用) 若要選取別名的佈建輸送量,您選擇的測試別名下方的文字會指出使用ODT或使用 PT。若要建立佈建輸送量模型,請選取變更。如需詳細資訊,請參閱使用 Amazon Bedrock 中的佈建輸送量增加模型調用容量

  8. (選用) 若要從提示管理使用提示,請在訊息方塊中選取選項圖示 ( Vertical ellipsis icon representing a menu or more options. ),然後選擇匯入提示。選取提示和版本。在測試變數值區段中輸入提示變數的值。如需提示管理中提示的詳細資訊,請參閱 在 Amazon Bedrock 中使用提示管理來建構和存放可重複使用的提示

  9. 若要測試代理程式,請輸入訊息,然後選擇執行。當您等待回應產生時,或在產生回應後,您有下列選項:

    • 若要檢視代理程式協調程序每個步驟的詳細資訊,包括提示、推論組態,以及代理程式每個步驟的推理程序,以及其動作群組和知識庫的使用方式,請選取顯示追蹤。追蹤會即時更新,因此您可以在傳回回應之前檢視它。若要展開或摺疊步驟的追蹤,請選取步驟旁的箭頭。如需追蹤視窗和出現的詳細資訊,請參閱 使用追蹤追蹤追蹤代理程式step-by-step推理程序

    • 如果客服人員叫用知識庫,回應會包含註腳。若要檢視包含回應特定部分引用資訊之 S3 物件的連結,請選取相關註腳。

    • 如果您將代理程式設定為傳回控制項,而不是使用 Lambda 函數來處理動作群組,回應會包含預測的動作及其參數。從 API或 函數提供動作的範例輸出值,然後選擇提交以產生客服人員回應。如需範例,請參閱下圖:

      測試時段請求,以提供動作的範例輸出。

    您可以在測試視窗中執行下列動作:

    • 若要開始與客服人員的新對話,請選取重新整理圖示。

    • 若要檢視追蹤視窗,請選取展開圖示。若要關閉追蹤視窗,請選取縮小圖示。

    • 若要關閉測試視窗,請選取向右箭頭圖示。

您可以啟用或停用動作群組和知識庫。使用此功能,透過使用不同的設定來評估代理程式的行為,來隔離哪些動作群組或知識庫需要更新。

啟用動作群組或知識庫
  1. AWS Management Console 使用IAM具有 Amazon Bedrock 許可的角色登入 ,並在 開啟 Amazon Bedrock 主控台https://console.aws.amazon.com/bedrock/

  2. 從左側導覽窗格中選取客服人員。然後,在客服人員區段中選擇客服人員

  3. 客服人員區段中,從客服人員清單中選擇您要測試的客服人員連結。

  4. 在客服人員的詳細資訊頁面上,在工作草稿區段中,選取工作草稿的連結。

  5. 動作群組知識庫區段中,將滑鼠游標移至您想要變更其狀態的動作群組或知識庫狀態。

  6. 顯示編輯按鈕。選取編輯圖示,然後從下拉式功能表中選擇動作群組或知識庫是啟用或停用

  7. 如果動作群組已停用,代理程式不會使用動作群組。如果知識庫已停用,代理程式不會使用知識庫。啟用或停用動作群組或知識庫,然後使用測試視窗來疑難排解您的代理程式。

  8. 選擇準備,在測試之前將您對客服人員所做的變更套用到客服人員。

API

第一次測試代理程式之前,您必須傳送 PrepareAgent Amazon Bedrock 建置時間端點的 代理程式請求。在請求agentId中包含 。這些變更適用於TSTALIASID別名指向的DRAFT版本。

請參閱程式碼範例

注意

每次更新工作草稿時,您必須準備客服人員,以將最新的變更封裝到客服人員。最佳實務是,建議您傳送 GetAgent 使用 Amazon Bedrock 建置時間端點的代理程式請求 (請參閱請求和回應格式和欄位詳細資訊的連結),並檢查代理程式preparedAt的時間,以確認您使用最新的組態測試代理程式。

若要測試您的代理程式,請傳送 InvokeAgent Amazon Bedrock 執行時間端點的 代理程式請求。

注意

AWS CLI 不支援 InvokeAgent.

請參閱程式碼範例

請求中存在下列欄位:

  • 至少,請提供下列必要欄位:

    欄位 簡短描述
    agentId 代理程式的 ID
    agentAliasId 別名的 ID。使用 TSTALIASID 叫用 DRAFT版本
    sessionId 工作階段的英數 ID (2–100 個字元)
    inputText 傳送給客服人員的使用者提示
  • 下列欄位為選用:

    欄位 簡短描述
    enableTrace 指定 TRUE以檢視追蹤
    endSession 在此請求之後,TRUE指定 以結束客服人員的工作階段。
    sessionState 包括影響代理程式行為或連接至代理程式之知識庫行為的內容。如需詳細資訊,請參閱控制代理程式工作階段內容

回應會在事件串流中傳回。每個事件都包含 chunk,其中包含 bytes 欄位中部分回應,必須解碼。如果客服人員查詢知識庫, chunk也包含 citations。也可能傳回下列物件:

  • 如果您啟用追蹤,也會傳回trace物件。如果發生錯誤,則會傳回包含錯誤訊息的欄位。如需如何讀取追蹤的詳細資訊,請參閱 使用追蹤追蹤追蹤代理程式step-by-step推理程序

  • 如果您將動作群組設定為使用 Lambda 函數略過,則會在 returnControl 欄位中傳回ReturnControlPayload物件。ReturnControlPayload 物件的一般結構如下所示:

    { "invocationId": "string", "invocationInputs": [ ApiInvocationInput or FunctionInvocationInput, ... ] }

    invocationInputs 清單的每個成員都是下列其中一項:

    • 包含代理程式預測API操作的ApiInvocationInput物件,除了從使用者取得的參數和其他資訊之外,還應根據使用者輸入呼叫 API。ApiInvocationInput 物件的結構如下所示:

      { "actionGroup": "string", "apiPath": "string", "httpMethod": "string", "parameters": [ { "name": "string", "type": "string", "value": "string" }, ... ], "requestBody": { <content-type>: { "properties": [ { "name": "string", "type": "string", "value": "string" } ] } } }
    • 包含代理程式預測之函數的FunctionInvocationInput物件,除了從使用者取得的該函數參數之外,還應根據使用者輸入呼叫。的結構FunctionInvocationInput如下:

      { "actionGroup": "string", "function": "string", "parameters": [ { "name": "string", "type": "string", "value": "string" } ] }