--- title: "RAG 从入门到精通系列1:基础 RAG 完全指南" type: source tags: ['RAG', 'LLM', '检索增强生成', 'Embedding', '向量数据库', 'LangChain', '教程'] date: 2025-01-16 source: https://mp.weixin.qq.com/s/ author: 南七无名式 --- ## Source File - [[raw/AI/RAG从入门到精通系列1:基础RAG.md]] ## Summary - 核心主题:RAG(检索增强生成)基础概念与三步流程(Indexing→Retrieval→Generation)详解 - 问题域:LLM 知识有截止日期且无法直接访问私有/最新数据,RAG 解决此信息缺失问题 - 方法/机制:外部文档→切分(Split)→向量化(Embedding)→存储向量数据库→用户提问→检索相关Chunk→输入LLM生成答案 - 结论/价值:RAG 是 LLM 连接私有知识的标准方案,基础 RAG 三步流程是所有高级 RAG 技巧的基础 ## Key Claims - **RAG 三步流程**: 1. **Indexing(索引)**:加载外部文档 → 切分为 chunks → 向量化 → 存入向量数据库 2. **Retrieval(检索)**:用户问题向量化 → 从向量库检索 top-k 相关 chunks 3. **Generation(生成)**:将问题+检索结果作为上下文输入 LLM → 生成最终答案 - **Embedding(向量化)**:将文本转为捕获语义的固定长度向量;余弦相似度计算相关性 - **Chunking(切分)**:Embedding 模型 context window 有限(512-8192 tokens),需将文档切分为满足窗口的 chunks - **LangChain**:RAG 主流开发框架,160+ 文档加载器,支持多种向量数据库 - Embedding 模型选择:开源(BAAI 系列)为主流方案 ## Key Concepts - [[RAG]](检索增强生成):解决 LLM 知识时效性和私有数据访问问题的标准方案 - [[Indexing]]:RAG 第一步,文档→chunk→vector→vectorDB - [[Embedding]]:文本→语义向量的转换过程,是 RAG 检索的核心 - [[Chunking]]:将长文档切分为适合 embedding 模型 context window 的小块 - [[向量数据库]]:存储 embedding vectors 的数据库,支持余弦相似度检索 ## Connections - [[RAG]] ← is_composed_of ← [[Indexing]] + [[Retrieval]] + [[Generation]] - [[Embedding]] ← is_step_in ← [[Indexing]] - [[Chunking]] ← is_step_in ← [[Indexing]] ## Contradictions - (无已知冲突)