AI大模型之RAG
RAGRetrieval-Augmented Generation检索增强生成是当前大模型落地中最核心的一种架构模式本质上是把“信息检索系统”和“生成式大模型”结合起来让模型不再只依赖参数记忆而是动态查资料再回答。一、RAG本质是什么一句话理解 RAG LLM 检索系统Search / Vector DB传统大模型只能回答训练数据里学过的东西容易 hallucination胡说RAG先查知识库再基于“真实数据”生成答案二、RAG核心流程标准Pipeline经典RAG流程分为 2 大阶段1️⃣ 离线阶段数据准备Step1数据采集来源文档PDF / Word / Markdown数据库MySQL / Hive日志 / API网页Step2数据切分Chunking把长文档拆成小块一篇文档 → 500~1000 tokens chunks关键点不能太大影响召回不能太小丢语义常见策略固定长度切分滑动窗口overlap语义切分更高级Step3向量化Embedding使用Embedding模型把文本转成向量text → vector (768 / 1024 / 1536维)常见模型OpenAI EmbeddingBGE / E5InstructorStep4存储向量数据库存入向量库MilvusWeaviatePineconeElasticsearch你这个很熟存储内容vector 原文 metadata2️⃣ 在线阶段查询Step1用户提问Q: “Flink checkpoint 原理是什么”Step2问题向量化query → embeddingStep3向量检索RecallTopK 最相似文本核心技术ANN近似最近邻HNSW / IVF / PQStep4上下文拼接Prompt构造Prompt 问题 检索结果示例根据以下资料回答 [chunk1] [chunk2] 问题xxxStep5大模型生成LLM如GPT生成最终答案三、RAG架构图工程视角┌────────────┐ │ 数据源 │ └─────┬──────┘ ↓ ┌──────────────┐ │ 数据处理ETL │Flink/Spark └─────┬────────┘ ↓ ┌──────────────┐ │ Embedding │ └─────┬────────┘ ↓ ┌──────────────┐ │ Vector DB │ └─────┬────────┘ ↓ User → Query → 检索 → Prompt → LLM → Answer四、RAG关键技术点面试高频1️⃣ Chunk优化非常关键直接决定效果优化方向overlap重叠按段落切按标题结构切最优2️⃣ 检索优化Recall基础TopK5~20进阶Hybrid Search关键词 向量Rerank重排常见Rerank模型cross-encoderbge-reranker3️⃣ Prompt工程核心问题 怎么让LLM“只用检索内容回答”技巧- If answer not in context, say I dont know - Use only provided context4️⃣ 多轮对话Conversation RAG问题上下文丢失解决历史对话拼接Query Rewrite问题改写5️⃣ 实时更新Streaming RAG难点数据延迟解决Kafka Flink 实时入库增量 embedding 这块你可以重点打大数据优势五、RAG进阶架构1️⃣ Agent RAGRAG只是“查知识”Agent可以自动拆问题多次检索调工具典型框架LangChainLlamaIndex2️⃣ Graph RAG2025很火 用图数据库增强检索实体关系建模路径推理适合金融知识图谱3️⃣ 多模态RAG不仅文本图片音频视频4️⃣ 企业级RAG重点完整体系权限控制RBAC数据血缘Atlas数据治理审计日志六、RAG vs Fine-tuning对比RAG微调数据更新✅ 实时❌ 需要重新训练成本低高幻觉低高可解释性高低 结论90%企业用RAG而不是微调七、RAG落地场景非常多1️⃣ 智能问答最常见企业知识库客服机器人2️⃣ 数据分析助手你强项 SQL生成 指标解释3️⃣ 文档助手PDF问答合同解析4️⃣ 代码助手内部代码库问答八、RAG系统难点你可以重点说这5个1️⃣ 检索不准 解决Hybrid Rerank2️⃣ 上下文长度限制 解决Chunk选择 压缩3️⃣ 幻觉问题 解决强Prompt引用来源4️⃣ 数据更新延迟 解决流式处理Flink5️⃣ 向量库性能 十亿级向量挑战九、一句话总结 RAG是“通过向量检索从外部知识库获取相关上下文再结合大模型生成答案的一种架构用于解决大模型知识过时和幻觉问题。”