記憶體
繫帶會自動在 AgentCore 記憶體中保持對話狀態。每次調用時,對話都會儲存,範圍依工作階段 ID 而定 (如果提供,還會依演員 ID 而定)。在具有相同工作階段 ID 的後續調用中,代理程式的歷史記錄會在原因發生之前從記憶體載入 - 它會記住先前輪換中發生的情況,即使在基礎 microVM 工作階段過期之後也是如此。您不需要自行傳遞先前的訊息,只要傳送新訊息即可。
記憶體的運作方式
受管記憶體 (預設)
依預設, 機制會自動佈建 AgentCore 記憶體執行個體,其中包含合理的預設值 (語意 + 摘要策略、30 天事件到期)。您不需要建立或設定任何項目 - 記憶體只是有效的。
若要在建立時間自訂受管記憶體:
範例
受管記憶體完全由 集合管理:
-
策略組態是透過 控制
UpdateHarness。您仍然可以透過記憶體 APIs直接讀取/寫入事件和查詢記錄。 -
無法直接透過記憶體 APIs 刪除受管記憶體。若要將受管記憶體轉換為一般 AgentCore 記憶體資源,您可以透過兩種方式取消其與集合的關聯:
-
使用
UpdateHarness切換到 BYO (agentCoreMemoryConfiguration) 或停用。 -
在刪除
deleteManagedMemory=false時傳遞以取消關聯 -DeleteHarness依預設,層疊刪除受管記憶體。
-
可用的策略
| 策略 | 說明 |
|---|---|
|
|
從對話中擷取事實知識,可透過語意搜尋擷取。 |
|
|
建立對話的執行摘要,以演員和工作階段為範圍。 |
|
|
擷取對話期間所表達的使用者偏好設定和設定。 |
|
|
將重大事件和體驗記錄為離散事件。 |
新增現有記憶體 (BYO)
如果您需要超出受管記憶體提供的進階組態 - 自訂命名空間範本、KMS 加密,或跨多個機制的共用記憶體 - 請改為連接現有的 AgentCore 記憶體執行個體。
範例
停用記憶體
若要完全停用記憶體:
aws bedrock-agentcore-control update-harness \ --harness-id "MyHarness-UuFdkQoXSL" \ --memory '{"optionalValue": {"disabled": {}}}'
具有演員 ID 的每位使用者記憶體範圍
actorId 在調用時傳遞以將記憶體範圍限定給特定使用者。每個演員都會取得隔離的短期和長期記憶體:
response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, actorId="user-123", messages=[{"role": "user", "content": [{"text": "What do you remember about my preferences?"}]}], )
長期記憶體擷取
當繫帶具有作用中的記憶體策略 (受管或 BYO) 時,擷取會自動運作 - 繫帶會從記憶體執行個體的作用中策略衍生擷取組態。每次調用時,客服人員都會查詢相關的長期記憶,並在推理之前將其插入對話內容。
預設行為:
-
擷取是針對每個作用中策略命名空間自動設定預設參數 (
topK=10、relevanceScore=0.2)。 -
受管記憶體或 BYO 記憶體不需要手動設定。
覆寫預設值:如果您在 BYO 記憶體組態retrievalConfig中明確提供 ,您的值會優先,不會發生自動衍生。這可讓您自訂要查詢、調整topKrelevanceScore或停用特定策略擷取的命名空間。
aws bedrock-agentcore-control update-harness \ --harness-id "MyHarness-UuFdkQoXSL" \ --memory '{"optionalValue": {"agentCoreMemoryConfiguration": {"arn": "arn:aws:bedrock-agentcore:us-west-2:123456789012:memory/MyMemory-abc123", "retrievalConfig": {"/facts/{actorId}/": {"topK": 5, "relevanceScore": 0.5, "strategyId": "FactExtractor-abc123"}}}}}'
重要
如果您在將 BYO 記憶體執行個體連接到繫帶之後更新其策略 (新增或移除),請呼叫 UpdateHarness 以重新整理擷取組態。對於受管記憶體,策略會透過自動UpdateHarness重新整理組態而變更。
內容截斷
當對話歷史記錄超出模型的內容視窗時,該繫帶會套用截斷策略。在每次叫用時設定或在覆寫。
-
sliding_window(預設) - 保留最新的 N 則訊息。簡單且可預測。 -
summarization- 將較舊的訊息壓縮為摘要,以較少的字符保留更多內容。 -
none- 無截斷。只有在您自行管理內容大小時使用 。
aws bedrock-agentcore-control update-harness \ --harness-id "MyHarness-UuFdkQoXSL" \ --truncation '{"strategy": "sliding_window", "slidingWindowConfig": {"numMessages": 30}}'
進一步了解:AgentCore 記憶體、建立記憶體存放區、長期記憶體策略。