news 2026/8/7 3:57:06

RAG技术如何解决大模型的“幻觉”?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
RAG技术如何解决大模型的“幻觉”?

你有没有遇到过这种尴尬


你满怀期待地问大模型一个关于公司内部产品的问题,结果它一本正经地给你编了一个完全不存在的功能介绍。或者你让它帮你查最新的行业法规,它振振有词地引用了一条早已废止的旧条款——甚至连条款编号都是捏造的。

这不是大模型"太笨",恰恰相反,它太"聪明"了——当它不知道答案时,它会基于统计概率"创造"一个听起来极其合理的回答。学术界把这种现象叫做模型幻觉(Hallucination)

RAG(Retrieval-Augmented Generation,检索增强生成)就是为了解决这个问题而生的技术方案。它的核心思路简洁到一句话就能说清:

先去你指定的知识库里搜一遍真实资料,然后把搜到的内容和用户的问题打包在一起交给大模型,让它基于真实材料来回答。

这样做的结果是:大模型不再需要"凭记忆回答",而是"看着答案说话"——幻觉问题直接从根源上被消灭掉了。


RAG 的四大核心价值


在理解技术细节之前,先回答一个更本质的问题:为什么不直接把所有资料都塞给大模型?

问题纯大模型RAG 方案
知识过时只懂训练截止日期之前的事实时对接外部知识库,永远不过期
一本正经地瞎编不知道就编,而且编得特别像只说知识库里有的内容,找不到就坦承"不知道"
行业深度不足通用知识广但不够专接上你的行业文档库,秒变领域专家
无法溯源不知道它的结论从哪来的每个回答都能追溯到具体出处和页码
隐私风险你的数据可能要上传到第三方知识库可以完全部署在自己服务器上

一句话总结:RAG 的本质就是在给大模型"开卷考试",而不是让它"闭卷答题"。


拆解 RAG 的工作原理:三步流水线


RAG 三阶段流水线全景图

整个 RAG 系统的工作流程可以拆成三个阶段,像一条工业流水线一样环环相扣:

阶段一:把你的资料变成"可检索"的形态

在 RAG 能工作之前,你需要把原始的 PDF、Word、网页等非结构化文档,加工成向量数据库能理解的格式:

    1. 收集整理:把分散在各处的文档汇集到一起。
    1. 切块(Chunking):把长文档切分成适当大小的段落。这一步非常讲究——切太大了检索不精准,切太小了上下文丢失。典型参数是每块 1000 字符左右,前后重叠 200 字符确保语义不断裂。
    1. 向量化(Embedding):用专门的嵌入模型把每个文本块转换成一串数字(向量),然后存进向量数据库。这些向量本质上是文本的"语义指纹"——意思相近的文本,向量也会在数学空间里靠得很近。

阶段二:用户提问时 → 先搜库再答题

用户丢过来一个问题后,系统先把问题也转成向量,然后在向量数据库里做相似度搜索,找出和这个问题语义最匹配的 Top-K 个文本块。

这步还可以加一层重排序(Rerank):用更精确的模型对候选结果重新打分排名,把最相关的推到最前面。

阶段三:打包提问 → 大模型生成回答

把筛选出来的相关文档片段和用户原始问题拼在一起,组成一个增强版的 Prompt 交给大模型。此时大模型完全是在**“看着参考资料答题”**,回答的准确性和可信度会大幅提升。

💡 所以 RAG 的本质极其简单——它就是帮你重新组装了一个更好的 Prompt。


Embedding 模型怎么选:一张表搞清楚


向量化这一步用什么模型,直接决定了检索的质量。以下是当前主流 Embedding 模型的对比:

通用场景

模型来源特点最佳场景
BGE-M3智源研究院100+ 语言、8192 tokens、混合检索跨语言长文档
text-embedding-3-largeOpenAI3072 维、英文表现拔尖英文场景优先
jina-embedding-v2-smallJina AI仅 35M 参数、RT<50ms轻量级实时推理

中文专精

模型特点最佳场景
M3E-Base中文优化、轻量部署法律、医疗等细分领域
xiaobu-embedding-v2中文语义理解能力强分类、语义检索
gte-Qwen2-7B基于通义千问、支持代码跨模态复杂指令驱动、智能问答

选型建议:如果你的知识库主要是中文内容且对部署成本敏感,M3E-Base是性价比之王。如果需要处理多语言混合内容,直接上BGE-M3


实战:从零搭建 PDF 知识库问答系统


说了这么多理论,我们来写一个完整可运行的 RAG 系统。技术栈:

组件选型为什么选它
向量数据库FaissMeta 开源、小巧快速、纯本地运行
EmbeddingDashScope text-embedding-v1阿里云产品、中文质量优秀、有免费额度
大模型DeepSeek-V3性价比极高、中文推理能力一流
文档处理PyPDF2简单直接的 PDF 文本提取
编排框架LangChain生态完善、社区活跃

核心处理流程

整个系统分三步走:

第一步:PDF 文档预处理

PDF文件 → 逐页提取文本 → 按 1000 字符切块(重叠 200)→ 记录每个块对应的页码

第二步:构建向量索引

文本块 → DashScope Embedding 向量化 → 写入 Faiss 索引 → 持久化到磁盘

第三步:问答查询

用户提问 → 问题向量化 → Faiss 检索 Top-K 相似块 → 拼装 Prompt → DeepSeek 生成回答

关键代码片段

安装依赖

pip install pypdf2 dashscope langchain langchain-openai langchain-community faiss-cpu

PDF 文本提取(附页码追踪)

from PyPDF2 import PdfReaderdef extract_text_with_pages(pdf_path): reader = PdfReader(pdf_path) text, page_map = "", [] for i, page in enumerate(reader.pages, 1): content = page.extract_text() or "" text += content page_map.extend([i] * len(content)) return text, page_map

文本切块

from langchain.text_splitter import RecursiveCharacterTextSplittersplitter = RecursiveCharacterTextSplitter( chunk_size=1000, chunk_overlap=200, separators=["\n\n", "\n", " ", ""] # 优先在段落→句子边界切分)chunks = splitter.split_text(raw_text)

构建 Faiss 向量索引

from langchain_community.embeddings import DashScopeEmbeddingsfrom langchain_community.vectorstores import FAISSembeddings = DashScopeEmbeddings(model="text-embedding-v1")vectorstore = FAISS.from_texts(chunks, embeddings)vectorstore.save_local("./knowledge_base")

执行问答

from langchain.chains.question_answering import load_qa_chainfrom langchain_openai import ChatOpenAIllm = ChatOpenAI(model="deepseek-chat", temperature=0)chain = load_qa_chain(llm, chain_type="stuff")query = "这份文档的核心结论是什么?"docs = vectorstore.similarity_search(query, k=4)answer = chain.run(input_documents=docs, question=query)

四种问答链策略深度对比


四种问答链策略信息密集对比

LangChain 提供了四种不同的文档组合策略,选错了策略会直接影响回答质量和成本。这张对比表帮你一目了然:

策略工作方式LLM调用次数优势劣势最佳场景
stuff所有文档直接拼成一个大 Prompt1 次最简单、最快、成本最低文档太多会超 token 上限检索结果少且精,速度优先
map_reduce每个文档分别提问 → 汇总结果再生成N+1 次能处理海量文档,可并行成本高,丢失跨文档上下文多源信息归纳、报告生成
refine逐个文档递进式迭代优化答案N 次保留跨文档逻辑链必须串行,早期错误会累积文档间有递进关系
map_rerank每个文档独立评分 → 取最高分答案N 次精准度高,过滤噪声只取单一最佳,可能漏信息事实查询型问题

选型建议

  • • 90% 的场景直接用stuff就够了——因为 RAG 的检索步骤已经帮你筛选了最相关的少量文档。
  • • 只有在做长篇报告综合归纳时才考虑map_reduce
  • refine适合法律条款解读这类需要层层递进的场景。

一个灵魂拷问:上下文窗口无限大之后 RAG 还有用吗?


纯大模型 vs RAG 方案五维对比

随着 Gemini、Claude 等模型的上下文窗口越来越大(动辄百万 token),有人开始质疑 RAG 是否还有存在的必要。

答案是:依然有,而且不可替代。理由有五:

    1. 成本与速度:即使模型能吃下 100 万 token,处理一次的算力费用和响应延迟也会高得吓人。RAG 只喂精准的几千 token,又快又便宜。
    1. 实时更新:模型的知识永远停留在训练数据截止日。你昨天新发布的产品文档,只有 RAG 能让模型立刻"学会"。
    1. 可解释性:RAG 的检索过程是透明的,用户可以看到"这个回答基于文档第 X 页"。纯大模型生成的内容你无法追溯来源。
    1. 领域定制:通用大模型解决不了的垂直领域精度问题,RAG + 专业知识库可以。
    1. 数据主权:把敏感的企业文档全量喂给第三方 API?你的合规部门不会同意的。RAG 可以完全在你自己的服务器上跑。

动手试试吧


选一份你工作中经常需要翻阅的 PDF(比如产品手册、技术文档、合同范本),跟着上面的代码跑一遍。你会明显感受到:有了 RAG 加持的大模型,回答质量完全是另一个量级——它不再"创作",而是在"引用"。

这才是 AI 真正可靠的打开方式。

普通人如何抓住AI大模型的风口?

领取方式在文末

为什么要学习大模型?

目前AI大模型的技术岗位与能力培养随着人工智能技术的迅速发展和应用 , 大模型作为其中的重要组成部分 , 正逐渐成为推动人工智能发展的重要引擎 。大模型以其强大的数据处理和模式识别能力, 广泛应用于自然语言处理 、计算机视觉 、 智能推荐等领域 ,为各行各业带来了革命性的改变和机遇 。

目前,开源人工智能大模型已应用于医疗、政务、法律、汽车、娱乐、金融、互联网、教育、制造业、企业服务等多个场景,其中,应用于金融、企业服务、制造业和法律领域的大模型在本次调研中占比超过30%。

随着AI大模型技术的迅速发展,相关岗位的需求也日益增加。大模型产业链催生了一批高薪新职业:

人工智能大潮已来,不加入就可能被淘汰。如果你是技术人,尤其是互联网从业者,现在就开始学习AI大模型技术,真的是给你的人生一个重要建议!

最后

只要你真心想学习AI大模型技术,这份精心整理的学习资料我愿意无偿分享给你,但是想学技术去乱搞的人别来找我!

在当前这个人工智能高速发展的时代,AI大模型正在深刻改变各行各业。我国对高水平AI人才的需求也日益增长,真正懂技术、能落地的人才依旧紧缺。我也希望通过这份资料,能够帮助更多有志于AI领域的朋友入门并深入学习。

真诚无偿分享!!!
vx扫描下方二维码即可
加上后会一个个给大家发

【附赠一节免费的直播讲座,技术大佬带你学习大模型的相关知识、学习思路、就业前景以及怎么结合当前的工作发展方向等,欢迎大家~】

大模型全套学习资料展示

自我们与MoPaaS魔泊云合作以来,我们不断打磨课程体系与技术内容,在细节上精益求精,同时在技术层面也新增了许多前沿且实用的内容,力求为大家带来更系统、更实战、更落地的大模型学习体验。

希望这份系统、实用的大模型学习路径,能够帮助你从零入门,进阶到实战,真正掌握AI时代的核心技能!

01教学内容

  • 从零到精通完整闭环:【基础理论 →RAG开发 → Agent设计 → 模型微调与私有化部署调→热门技术】5大模块,内容比传统教材更贴近企业实战!

  • 大量真实项目案例:带你亲自上手搞数据清洗、模型调优这些硬核操作,把课本知识变成真本事‌!

02适学人群

应届毕业生‌:无工作经验但想要系统学习AI大模型技术,期待通过实战项目掌握核心技术。

零基础转型‌:非技术背景但关注AI应用场景,计划通过低代码工具实现“AI+行业”跨界‌。

业务赋能突破瓶颈:传统开发者(Java/前端等)学习Transformer架构与LangChain框架,向AI全栈工程师转型‌。

vx扫描下方二维码即可
【附赠一节免费的直播讲座,技术大佬带你学习大模型的相关知识、学习思路、就业前景以及怎么结合当前的工作发展方向等,欢迎大家~】

本教程比较珍贵,仅限大家自行学习,不要传播!更严禁商用!

03入门到进阶学习路线图

大模型学习路线图,整体分为5个大的阶段:

04视频和书籍PDF合集

从0到掌握主流大模型技术视频教程(涵盖模型训练、微调、RAG、LangChain、Agent开发等实战方向)

新手必备的大模型学习PDF书单来了!全是硬核知识,帮你少走弯路(不吹牛,真有用)

05行业报告+白皮书合集

收集70+报告与白皮书,了解行业最新动态!

0690+份面试题/经验

AI大模型岗位面试经验总结(谁学技术不是为了赚$呢,找个好的岗位很重要)

07 deepseek部署包+技巧大全

由于篇幅有限

只展示部分资料

并且还在持续更新中…

真诚无偿分享!!!
vx扫描下方二维码即可
加上后会一个个给大家发

【附赠一节免费的直播讲座,技术大佬带你学习大模型的相关知识、学习思路、就业前景以及怎么结合当前的工作发展方向等,欢迎大家~】

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/7 3:56:00

Linux 内核 Call Trace 完全解析指南

https://mp.weixin.qq.com/s/2pRbFwAVQEtllGWhwndQoQ &#x1f527;从原理到实战&#xff0c;掌握内核崩溃问题的诊断与解决 &#x1f4cb; 目录速览&#x1f3af; 什么是 Call Trace 定义 Call Trace&#xff08;调用栈跟踪&#xff09;是 Linux 内核在发生错误、警告或崩溃时…

作者头像 李华
网站建设 2026/8/7 3:56:51

Spring_couplet_generation 源码解析与定制:Python项目结构深入解读

Spring_couplet_generation 源码解析与定制&#xff1a;Python项目结构深入解读 1. 开篇&#xff1a;从使用到理解 如果你之前用过一些AI写对联的工具&#xff0c;可能会觉得挺神奇&#xff0c;输入几个字就能得到一副工整的对联。但如果你是个开发者&#xff0c;或者对技术实…

作者头像 李华
网站建设 2026/8/7 3:56:50

会计必看!T+资产负债表重分类的5个易错点及正确设置方法

会计必看&#xff01;T资产负债表重分类的5个易错点及正确设置方法 在财务工作中&#xff0c;资产负债表重分类是一个看似简单却暗藏玄机的操作环节。许多有经验的财务人员也常常在这个环节栽跟头&#xff0c;导致报表数据失真&#xff0c;甚至引发审计风险。特别是使用畅捷通T…

作者头像 李华
网站建设 2026/8/7 3:55:28

金航标(kinghelm)产品链布局

经过近二十年的沉淀&#xff0c;金航标kinghelm&#xff08;www.kinghelm.com.cn&#xff09;的产品线形成了信号传输的全链条布局,如屏蔽夹KH-PBJ-440808、以太网连接器&#xff08;网口&#xff09;KH-RJ45-58-8P8C与KH-RCH56-8P8C-D、TYPE/USB连接器KH-TYPE-C-16P与KH-TYPE-…

作者头像 李华