智能体回答教材问题总编造?RAG技术如何让模型“开卷考试”而非瞎猜
某教育App的智能体小E因虚构课程分级与退费规则引发客户误解,暴露大模型在缺乏知识依据时的幻觉风险。文章解析RAG(检索增强生成)技术如何通过切片、向量化、召回与带片段回答四步流程,强制模型从自有资料...
一位教育科技公司的课程顾问在小E上线第三天就找上门来——语气并不友善。学员在App里向智能体提问:“启明英语的口语课一共有几级?”小E秒回:“一共六级,每级12课时,建议从一级开始逐级报读。”学员信以为真,直接咨询四级连报优惠。顾问不得不花十分钟澄清:公司实际只有四级,每级16课时,且并无“逐级报读”规定。
同一天下午,另一名学员询问退费规则,小E答道:“开课7天内可全额退,超过按剩余课时的80%退。”这条回答更危险——制度原文明确写的是“收取5%手续费”,80%纯属捏造。
问题并非出在提示词设计或人格模板上。开发者复盘确认,这两条回答所涉内容根本未出现在模型训练语料中,模型只能凭语言模式“合理编造”。而它编得语法流畅、细节饱满、语气笃定,反而比真实信息更具迷惑性。
这正是当前智能体落地中最隐蔽却高发的风险:当用户问及企业私有知识(如课程体系、制度条款、产品参数),模型若无法访问权威来源,便会启动“幻觉生成”机制,输出看似专业实则虚假的答案。
RAG:不是教模型记住,而是让它学会查资料
面对这一问题,行业通用解法是RAG(Retrieval-Augmented Generation,检索增强生成)。其核心逻辑很简单:不强求模型背下整本手册,而是在每次提问时,先从企业自有资料库中检索相关片段,再让模型基于这些片段生成回答。
有人第一反应是:把制度文档直接塞进系统提示词(system prompt)不就行了?实操中存在两大硬伤:
其一,容量限制。一份完整的课程说明与退费制度汇编常达十万字以上,而主流大模型上下文窗口多为32K–128K token(中文约等同字数),超长文本不仅无法加载,还会显著推高推理成本;
其二,效率低下。即使能塞入,模型仍需在十万字中定位关键句,既易误判,又浪费token——每次提问都重复支付整份文档的计算开销。
因此,RAG采用“按需调取”策略:仅将与当前问题最相关的2–3段内容注入提示词,实现精准、轻量、可控的知识调用。
RAG的四步工程实现
在具体工程落地中,RAG可拆解为四个明确阶段,每一步均有技术要点与常见陷阱:
① 切片(Chunking):这是影响效果最关键的环节。早期尝试“按200字一刀切”导致语义断裂——例如“单笔最低收取50元。示例:学员实付4800元报了口”与“语课一级(总课时16)”被强行割裂,召回后模型难以理解上下文。改进方案为“两步切分”:先按标题粗分章节,再在章节内按句号、分号等标点细切,确保每段语义完整,并保留出处信息(如文件名+小节编号)。
② 向量化(Embedding):将文本片段转换为数值向量。常用方法包括哈希嵌入(HashingEmbeddings)或调用厂商API(如OpenAI text-embedding-3-small)。关键在于保证“语义相近→向量相近”,以便后续相似度计算。文中项目为保障离线可复现,初期采用确定性哈希实现,待验证链路后再替换为商用服务。
③ 召回(Retrieval):将用户问题同样向量化,计算其与所有片段的余弦相似度,取Top-k(如k=3)结果。此处需设阈值过滤低相似度项(如<0.25即丢弃),避免引入噪声。值得注意的是,若召回为空,系统应拒绝回答,而非让模型自由发挥——这是堵住幻觉的第一道闸门。
④ 带片段回答(Generation with Context):将召回的片段拼入提示词,指令模型“仅依据以下资料作答,并标注每条结论出处编号”。例如:“口语课共四级,每级16课时[1]”,其中[1]指向《01-口语课分级说明.md》第一小节。
防编造的硬规则:出处校验与空召回拒答
RAG本身不能100%防止编造,但它提供了可干预的控制点。文中项目设定了两条硬性规则:
第一,召回为空时必须拒答。模型不得以“根据常识”“通常情况”等模糊表述搪塞,而应回复“暂未找到相关依据,请联系人工客服”。
第二,所有结论必须带可追溯编号,且该编号需经校验映射至真实文件与小节。系统后台会自动检查:若回答中出现[7],但本次仅提供3份资料,则[7]无效,整条回答标记为“编造”,不返回给用户,转入人工复核队列。
这一机制在测试中已覆盖40个用例,包括边界场景(如问题含错别字、跨文档关联查询),确保在离线环境下稳定运行。
为何企业级智能体必须引入RAG?
在ToB与ToG场景中,智能体常需处理高度定制化的业务知识:银行的产品条款、医院的诊疗规范、制造业的SOP手册。这些内容既不会出现在公有模型训练数据中,又容不得半点偏差。一旦模型“自信编造”,轻则引发客诉,重则导致法律纠纷。
RAG的价值正在于将“模型能力边界”与“企业知识边界”解耦:模型只需擅长语言生成,而知识准确性由企业自主掌控。正如文中比喻:“模型的脑子我们换不掉,但考卷旁边放哪几本书,是我们说了算的。”
目前主流框架如LangChain、LlamaIndex均提供RAG模块化支持,但真正决定效果的是工程细节——切片策略是否保全语义、向量质量是否可靠、召回阈值是否合理、溯源机制是否闭环。许多项目止步于“能跑通”,却忽略了对幻觉的主动防御设计。
随着智能体从演示走向真实业务流,RAG已非可选项,而是合规性底线。那些仍在依赖纯Prompt Engineering应对私有知识问答的产品,正站在客户信任的悬崖边缘。
