← 返回首页
一、RAG 核心原理
- 为什么需要 RAG:LLM 知识有截止日期、会产生幻觉、无法访问私有数据,RAG 通过检索外部知识增强生成
- 基本流程:文档加载 → 文本分块 → 向量化(Embedding)→ 存入向量数据库 → 用户查询向量化 → 相似度检索 → 拼接 Prompt → LLM 生成回答
- 文本分块策略:固定大小 / 按句子 / 按段落 / 递归分割(RecursiveCharacterTextSplitter),chunk_size 和 overlap 需调优
- Embedding 模型:OpenAI text-embedding / BGE / M3E / Jina Embedding,选择与场景匹配的模型
二、向量数据库
- 相似度度量:余弦相似度(方向)/ 欧氏距离(绝对距离)/ 内积(点积)
- 索引算法:HNSW(高召回率,内存占用大)/ IVF(倒排索引,速度快)/ PQ(乘积量化,压缩存储)
- 主流产品:Milvus(分布式,功能全)/ Qdrant(Rust 高性能)/ Chroma(轻量级)/ Pinecone(托管服务)/ FAISS(Meta 开源库)
- 混合检索:向量检索 + 关键词检索(BM25),RRF 融合排序,提升召回率
三、RAG 进阶优化
- 查询改写:HyDE(假设性文档嵌入)/ 多查询扩展 / Step-back Prompting
- 重排序(Rerank):检索后用交叉编码器(Cross-Encoder)精排,如 Cohere Rerank / BGE-Reranker
- 多路召回:语义检索 + 关键词检索 + 知识图谱检索,多路融合
- 上下文压缩:提取检索文档中与查询最相关的片段,减少噪声
- Self-RAG:模型自主判断是否需要检索、检索结果是否相关、生成是否有依据
- Graph RAG:结合知识图谱,实体关系增强检索,适合多跳推理问题
四、AI Agent 基础
- Agent 定义:LLM 作为大脑 + 规划能力 + 记忆系统 + 工具使用,自主完成复杂任务
- 核心组件:Planning(任务分解)+ Memory(短期/长期记忆)+ Tools(API/代码执行/搜索)+ Action(执行与反馈)
- 规划策略:ReAct(推理+行动交替)/ Plan-and-Execute(先规划后执行)/ Tree of Thoughts(树搜索)
- 记忆机制:短期记忆(上下文窗口)/ 长期记忆(向量数据库存储)/ 工作记忆(当前任务状态)
五、Agent 框架与实践
- LangChain:Chain / Agent / Tool / Memory 模块化组合,生态丰富
- LlamaIndex:专注数据索引和检索,RAG 场景首选
- AutoGPT / MetaGPT:自主 Agent,多角色协作完成复杂任务
- Function Calling:LLM 结构化输出工具调用参数,OpenAI / Claude 原生支持
- Multi-Agent:多个 Agent 协作,角色分工(产品经理/程序员/测试),CrewAI / AutoGen
六、工程落地要点
- 评估体系:RAGAS 框架(忠实度/答案相关性/上下文精确度/上下文召回率)
- 可观测性:LangSmith / Phoenix / Langfuse,追踪每步调用链路
- 成本控制:缓存(语义缓存)/ 小模型路由 / 批量处理 / Token 优化
- 安全防护:Prompt 注入防御 / 输出过滤 / 权限控制 / 敏感信息脱敏