4m read
Phase 7 工具集成 RAG 与记忆
Phase 7:工具集成、RAG 与记忆
AI 真正的能力,不在于它自己多聪明,而在于它能连接多少你已经使用的系统。
这个阶段让 AI 能调用工具、读取私有知识、记住重要信息。
一、工具集成
工具分类
| 类型 | 例子 | 风险 |
|---|---|---|
| 只读 | 查天气、搜索、读日历 | 低 |
| 写操作 | 创建日程、加待办 | 中 |
| 敏感操作 | 发邮件、删数据 | 高 |
| 禁止操作 | 转账、修改密码 | 不可执行 |
工具接口
每个工具实现统一接口:
hljs typescriptinterface Tool {
name: string;
description: string;
parameters: object;
execute(args: unknown, context: ToolContext): Promise<ToolResult>;
}
MCP 协议
MCP(Model Context Protocol)让 AI 统一接入外部工具。已有 Notion、Pinecone、Superbase、Firecrawl、Gmail、Slack 等官方 Server。
如果 MCP Store 里找不到,可以手动配置:
- 去工具官网找 MCP 配置
- 复制 JSON
- 替换 API Key
- 粘贴到 raw config
- refresh 验证
二、RAG 知识库
RAG 让 AI 基于你的私有资料回答问题。
基础流程
text文档 → 分块 → 向量化 → 存入向量库 │ 用户问题 → 向量化 → 检索相关块 → 送入模型 → 生成答案
进阶:混合搜索 + 重排序
只靠向量检索,遇到专有名词容易不准。更好的做法是:
text用户问题 │ ├─ 向量检索 → Top K ├─ 关键词检索 → Top K │ ▼ 融合排序 │ ▼ Re-rank(Cohere) │ ▼ 取最相关 N 块 → 送入模型
多模态 RAG
Gemini Embedding 2 支持文本、图片、视频、音频、PDF:
- 上传产品图片 → 找相似产品
- 上传 PDF → 文字+插图一起返回
- 上传视频 → 按内容检索
RAG 八模组
- 前端外壳 + 向量库 + 追踪
- 多模型切换
- 记录管理器
- 元数据提取
- 多格式 OCR
- 混合搜索 + 重排序
- 附加工具(Text-to-SQL、网页搜索)
- 子代理系统
三、记忆系统
分层
| 层级 | 时间 | 存储 | 用途 |
|---|---|---|---|
| 工作记忆 | 当前会话 | 上下文窗口 | 当前对话 |
| 短期记忆 | 最近几天 | 数据库 | 近期事件 |
| 长期记忆 | 永久 | 向量库 | 用户画像、偏好 |
记忆提取
每次对话后,让 AI 提取值得记住的事实:
hljs markdown请从对话中提取长期记忆:
- 只提取事实、偏好、计划
- 用第三人称
- 打标签:preference / fact / plan / person
记忆检索
用户提问时,把问题向量化,检索最相关记忆,注入 Prompt。
四、给 AI 的输入
hljs markdown## 需要接入的工具
1. [工具名]:用途、认证方式
2. ...
## 知识库需求
- 文档类型:PDF / 网页 / 笔记
- 是否需要图片/视频检索
- 是否需要网页搜索 fallback
## 记忆需求
- 需要记住哪些信息
- 记忆时效要求
五、AI 应该产出什么
INTEGRATIONS.md
hljs markdown## 已接入工具
| 工具 | 用途 | 风险等级 |
|------|------|---------|
| Gmail | 读取邮件 | 中 |
| Calendar | 创建事件 | 中 |
| Pinecone | 向量检索 | 低 |
## RAG 配置
- Embedding 模型:
- 向量库:
- Re-rank:
- OCR:
## 记忆策略
- 提取频率:
- 检索方式:
- 存储位置:
六、什么时候算做完了
- 核心工具已接入并测试
- RAG 能回答知识库内问题
- 混合搜索/Re-rank 已配置(如需要)
- 记忆能提取和检索
- 权限分级已明确
七、几个常见错误
工具描述不清
- 后果:AI 调用错工具
- 修正:加使用场景和参数说明
只依赖向量检索
- 后果:名词检索不准
- 修正:加关键词 + Re-rank
记忆越多越好
- 后果:Token 爆表
- 修正:分层、精选、加权
权限不控制
- 后果:误操作风险
- 修正:敏感操作人工确认
八、输出文件
text/src/tools/ ├── gmail.tool.ts ├── calendar.tool.ts └── search.tool.ts /src/rag/ ├── chunking.ts ├── embedding.ts ├── retrieval.ts └── rerank.ts /docs/ └── INTEGRATIONS.md
九、下一步
工具接好后,部署和测试。
→ Phase 8 部署 测试与自动化