TL;DR

RAG(Retrieval-Augmented Generation,检索增强生成)是 2020 年 Lewis 等人提出的架构:先从一个外部知识库检索相关片段,再交给 LLM 生成答案,用于解决幻觉、知识过时和私有数据不可见的问题。标准流程:文档切块 → 向量化 → 存入向量库 → 查询时召回 Top-K → (可选重排)→ 拼进上下文 → 生成。

标准流程

步骤说明常见工具
1. 切块按语义/长度切成 chunkLangChain、LlamaIndex
2. 向量化用 Embedding 模型转成向量OpenAI、BGE、text-embedding 系
3. 存储向量数据库pgvector、Milvus、Qdrant、FAISS
4. 召回相似度检索 Top-K向量检索 + 关键词混合
5. 重排精排提高准确率(可选)Cohere Rerank、BGE-Reranker
6. 生成把片段拼进 prompt 交给 LLM任意 LLM

与纯 LLM、微调对比

方案更新成本幻觉风险私有数据适用场景
纯 LLM高(知识截止)不可用通用问答
RAG低(换文档即可)中(依赖检索质量)可用客服、企业知识库、实时数据
微调高(训练)可学但易过拟合风格/格式/领域术语

常见坑

常见问题

RAG 和微调怎么选?

要更新快、引用具体文档、处理私有数据:RAG;要改变模型语气/输出格式/领域术语:微调;生产上常两者结合。

chunk size 多大合适?

没有唯一答案,常见 300–800 token;以"一个 chunk 能独立回答一个问题"为目标,结合检索实验调整。

RAG 能完全消除幻觉吗?

不能。它能大幅降低幻觉,但检索本身可能召回错误文档;必须给答案带来源引用,并做评估(命中率、忠实度)。

来源

最后更新:2026-08-04