RAG与知识系统
本目录说明 RAG(Retrieval-Augmented Generation,检索增强生成)和 Agent 知识系统。RAG 的核心是:在生成前或生成中,从外部知识源检索相关证据,把证据以可控方式提供给模型,并尽可能让回答可追溯。
RAG 不等于 Agent Memory。Memory 保存 Agent 与用户、任务互动后的状态;RAG 连接外部知识、文档、网页、代码库和数据库。两者可以共享检索基础设施,但必须分数据域、权限、写入流程和评测指标。
1. 文件导览
- Agent中的RAG:RAG 在 Agent Loop 中的位置和架构边界。
- Search-Fetch模式:先搜候选,再拉取原文和证据。
- 向量检索:embedding、ANN、过滤和索引治理。
- 混合检索:BM25、稀疏向量、稠密向量和 RRF。
- Rerank:用 cross-encoder 或重排模型提高上下文质量。
- Query-Rewriting:查询改写、HyDE、多查询和意图展开。
- Multi-hop-RAG:多步检索、推理链和证据组合。
- Graph-RAG:图谱、社区摘要、局部/全局检索。
- 文档切分策略:chunk、metadata、结构化解析。
- 引用与可追溯性:source attribution、证据链和审计。
- RAG评测:检索、生成、引用、安全和线上评测。
2. RAG 基础流程
离线索引流程:
3. 与记忆系统的边界
| 问题 | 应优先使用 |
|---|---|
| “用户偏好用中文简短回答” | Agent Memory |
| “公司报销政策最新版是什么” | RAG |
| “上次这个仓库测试失败的原因” | Agent Memory 的 episodic memory |
| “这个仓库 README 和源码怎么描述 API” | RAG / 代码检索 |
| “以后生成日报都用这个格式” | Agent Memory 的 procedural memory |
| “请引用产品手册第几节” | RAG |
4. 工程验收标准
一个生产 RAG 系统至少要回答:
- 数据从哪里来,谁有权索引和检索。
- chunk 如何生成,metadata 是否足够回溯。
- 检索质量如何评测,bad case 如何修复。
- prompt 中如何区分证据与指令,防止提示注入。
- 回答如何引用来源,无法找到证据时如何拒答。
- 索引如何更新、删除、回滚和监控。
权威资料
- Retrieval-Augmented Generation paper: https://arxiv.org/abs/2005.11401
- OpenAI File Search tool: https://platform.openai.com/docs/guides/tools-file-search (核对日期:2026-05-09)
- OpenAI Vector stores API: https://platform.openai.com/docs/api-reference/vector-stores (核对日期:2026-05-09)
- LlamaIndex RAG docs: https://docs.llamaindex.ai/en/stable/understanding/rag/ (核对日期:2026-05-09)
- Azure AI Search hybrid search: https://learn.microsoft.com/en-us/azure/search/hybrid-search-overview (核对日期:2026-05-09)
- OWASP Top 10 for LLM Applications: https://owasp.org/www-project-top-10-for-large-language-model-applications/ (核对日期:2026-05-09)