View a markdown version of this page

建立事件 - Amazon Bedrock AgentCore

建立事件

事件是短期的基本單位,從中將結構化資訊擷取到 AgentCore 記憶體中的長期記憶體。CreateEvent 操作可讓您將各種類型的資料存放在 AgentCore 記憶體中,由演員和工作階段組織。事件的範圍在記憶體內:

ActorId

識別與事件相關聯的實體,例如最終使用者或代理程式/使用者組合

SessionId

將相關事件分組在一起,例如對話工作階段

CreateEvent 操作會在指定的記憶體工作階段中存放新的不可變事件。事件代表客服人員想要記住的個別資訊片段,例如對話訊息、使用者動作或系統事件。

此操作適用於:

  • 記錄使用者、客服人員和工具之間的對話歷史記錄

  • 儲存使用者互動和行為

  • 擷取系統事件和狀態變更

  • 在工作階段中建立活動的時間記錄

如需範例程式碼,請參閱案例:客戶使用 AgentCore Memory 支援 AI 代理程式。

事件承載類型

payload 參數接受承載項目清單,可讓您在單一事件中存放不同類型的資料。常見的承載類型包括:

對話式

用於儲存具有角色 (例如「使用者」或「輔助」) 和內容的對話訊息。

Blob

用於儲存二進位格式資料,例如映像和文件,或代理程式獨有的資料,例如以 JSON 格式存放的資料。

注意

目前,只有對話式資料會流入長期記憶體。

事件分支

branch 參數可讓您透過進階分支組織事件。這適用於訊息編輯或替代對話路徑等案例。例如,假設您有一個長時間執行的對話,並且您意識到您有興趣探索從 5 則訊息開始的替代對話。您可以使用 branch 參數從該訊息開始新的對話,並存放在新的分支中,這可讓您返回原始對話。此外,如果您想要讓使用者編輯最近的訊息 (如果使用者提早按下 或輸入錯別字) 並繼續對話,這就很有用。

建立分支時,您可以指定:

name

分支的描述性名稱,例如 "edited-conversation"。

rootEventId

分支來源的事件 ID。

以下是建立分支事件以代表已編輯訊息的範例:

{ "memoryId": "mem-12345abcdef", "actorId": "/agent-support-123/customer-456", "sessionId": "session-789", "eventTimestamp": 1718806000000, "payload": [ { "Conversational": { "content": "I'm looking for a waterproof action camera for extreme sports.", "role": "user" } } ], "branch": { "name": "edited-conversation", "rootEventId": "evt-67890" } }