View a markdown version of this page

自定义内置策略或创建自己的策略 - 亚马逊基岩 AgentCore

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

自定义内置策略或创建自己的策略

对于高级或特定领域的用例,您可以创建带有替代功能的内置策略,以获得对长期内存过程的精细控制。 Built-in 使用替代策略允许您通过提供自己的指令并为提取和合并步骤选择特定的基础模型来覆盖内置策略的默认行为。

何时使用带有替代功能的内置策略

当您需要根据您的特定要求定制内存逻辑时,请选择内置的重写策略。常见使用案例包括:

  • Domain-specific 提取:将策略限制为仅提取特定类型的信息。例如,捕捉用户的食物和饮食偏好,而忽略他们对服装的偏好。

  • 控制粒度:调整提取的内存中的细节级别。例如,指示摘要策略仅保存高级要点,而不是详细的叙述。

  • 模型选择:使用更适合您的特定领域或任务的特定基础模型,例如针对财务或法律文本进行微调的模型。

如何自定义策略

要使用自定义配置覆盖内置策略,请在使用该CreateMemory操作或操作时指定配置。 UpdateMemory 您可以覆盖以下内容:

下表显示了每种内存策略可以覆盖的步骤:

Strategy 可以改写的步骤

语义

提取整合

Summary

整合

用户偏好

提取整合

剧集

提取巩固反射

注意

您也可以使用自我管理的策略进行改写。有关更多信息,请参阅Self-managed 策略。

如何自定义策略

例如,您可以修改语义内存策略的提取指令,以便在自定义时添加新指令。

Built-in 语义记忆策略指令

以下显示了语义记忆策略的内置指令:

You are a long-term memory extraction agent supporting a lifelong learning system. Your task is to identify and extract meaningful information about the users from a given list of messages. Analyze the conversation and extract structured information about the user according to the schema below. Only include details that are explicitly stated or can be logically inferred from the conversation. - Extract information ONLY from the user messages. You should use assistant messages only as supporting context. - If the conversation contains no relevant or noteworthy information, return an empty list. - Do NOT extract anything from prior conversation history, even if provided. Use it solely for context. - Do NOT incorporate external knowledge. - Avoid duplicate extractions. IMPORTANT: Maintain the original language of the user's conversation. If the user communicates in a specific language, extract and format the extracted information in that same language.

你可以在这些指令后面添加一条新规则,例如:

- Focus exclusively on extracting facts related to travel and booking preferences.

或者编辑现有规则,例如:

IMPORTANT: Always extract memories in English irrespective of the original language of the user's conversation.

自定义最佳实践

  • 以现有指令为基础:我们强烈建议您使用内置策略指令作为起点。基本结构和指令对内存功能至关重要。你应该将特定任务的指导添加到现有说明中,而不是从头开始编写全新的指令。

  • 提供明确的说明:的内容appendToPrompt取代了系统提示符中的默认指令。确保您的指令合乎逻辑且完整,因为空白或格式不当的指令可能会导致不良结果。

重要注意事项

为了保持内存管道的可靠性,请遵守以下准则:

  • 不要修改提示符中的架构:您只应添加或修改指导如何提取或整合内存的指令。不要尝试在提示本身中更改对话或内存架构定义,因为这可能会导致意外故障。

  • 不要重命名合并操作:自定义合并提示时,不要更改操作名称(例如,AddMemory,UpdateMemory)。更改这些名称将导致长期内存管道失败。

  • 输出架构不可编辑:内置的替代策略不允许您更改提取或合并内存的最终输出架构。将添加到内置重写策略的系统提示符中的输出架构将与内置策略相同。有关输出架构的信息,请参阅以下内容:

要完全控制端到端内存进程,包括输出架构,请参阅Self-managed 策略。

执行角色

使用内置的重写策略时,您还需要在 CreateMemory API memoryExecutionRoleArn 中提供。Bedrock Amazon Bedrock AgentCore 将扮演这个角色,调用您 AWS 账户中的基岩模型进行提取和整合。

注意

使用内置的替代策略时,用于提取和合并的LLM将单独向您的 AWS 账户收费,并可能收取额外费用。