一个简单的方式来解释AI Agent的记忆机制。
通常来说,Agent的记忆是我们通过提示词中的上下文提供给LLM的内容,这些记忆可以帮助Agent基于过去的交互或非即时可用的数据来更好地规划和响应。
记忆可以分为以下四种类型:
情节记忆(Episodic) - 这种类型的记忆包含Agent过去的交互和执行的动作。当Agent执行一个动作后,控制系统会将该动作存储在某种持久化存储中,以便后续需要时可以检索。一个很好的例子是使用向量数据库来存储交互的语义含义。
语义记忆(Semantic) - 包括Agent可获取的任何外部信息以及Agent应该了解的关于自身的知识。你可以将其理解为类似RAG应用中使用的上下文。它可以是Agent专有的内部知识,也可以是用于获得更准确答案的互联网规模数据的部分内容。
程序记忆(Procedural) - 这是系统性信息,如系统提示词的结构、可用工具、安全护栏等。通常存储在Git、提示词和工具注册表中。
Agent应用程序会根据需要从长期记忆中提取信息并本地存储。
所有从长期记忆中提取或存储在本地的信息被称为短期记忆或工作记忆。将所有这些信息编译成提示词后,将传递给LLM,由LLM提供系统接下来要采取的行动。
我们通常将1-3点称为长期记忆,将第5点称为短期记忆。具体实现细节可以通过可视化方式更好理解。