# 构建完整的记忆增强型智能体 在这一最后步骤中,我们将把我们探讨的所有记忆功能整合在一起,创建一个完整的记忆增强型智能体。我们还将创建一个实际示例,展示这些功能如何协同工作。 ## 整合所有记忆功能 让我们创建一个利用对话历史记录、语义回忆和工作记忆的综合智能体: ```typescript // src/mastra/agents/memory-agent.ts import { Agent } from "@mastra/core/agent"; import { Memory } from "@mastra/memory"; import { openai } from "@ai-sdk/openai"; import { LibSQLStore, LibSQLVector } from "@mastra/libsql"; // 创建全面的内存配置 const memory = new Memory({ storage: new LibSQLStore({ id: "learning-memory-storage", url: "file:../../memory.db", // 相对于 `.mastra/output` 目录的相对路径 }), vector: new LibSQLVector({ connectionUrl: "file:../../vector.db", // 相对于 `.mastra/output` 目录的相对路径 }), embedder: openai.embedding("text-embedding-3-small"), options: { // 对话历史记录配置 lastMessages: 20, // 在上下文中包含最后 20 条消息 // 语义回忆配置 semanticRecall: { topK: 3, // 检索 3 条最相似的消息 messageRange: { before: 2, // 包含每次匹配前的 2 条消息 after: 1, // 包含每次匹配后的 1 条消息 }, }, // 工作记忆配置 workingMemory: { enabled: true, template: ` # 用户档案 ## 个人信息 - 姓名: - 位置: - 时区: - 职业: ## 偏好 - 沟通风格: - 感兴趣的话题: - 学习目标: ## 项目信息 - 当前项目: - [项目 1]: - 截止日期: - 状态: - [项目 2]: - 截止日期: - 状态: ## 会话状态 - 当前主题: - 未解决问题: - 行动项: `, }, }, }); ``` 这个全面的内存配置整合了我们探讨的所有三种记忆功能: 1. **对话历史记录**,使用 `lastMessages` 选项 2. **语义回忆**,使用 `semanticRecall` 选项 3. **工作记忆**,使用 `workingMemory` 选项 每种功能在增强智能体的记忆能力方面都有不同的目的,它们共同创建了一个强大的记忆系统,可以在跨对话中保持上下文并提供个性化响应。