大可的 AI Builder 手记
跟随系统
颜色主题
长沙小桌实战
大可 Dako
大可 Dako大可 DakoAI Builder · Agent 实践者用 AI 做真正能用的产品。专注探索 Agent 工程化落地、Vibe Coding 实践与商业化交付。
内容平台即将上线,敬请期待
两种工具交回来的东西不一样:位置和结论搜索引擎原文一直在,建索引、匹配、排序,返回「在哪一页」点开就能核对出处大模型语料被压成权重,回答时按统计规律重新组装会记串、有截止日、没出处先搜再答把几段真实原文塞进这一次的输入再生成有出处了,但仍然是在生成要事实和出处用搜索,要转换和重写用模型
搜索返回「东西在哪」,模型返回「东西是什么」。前者点开就能核对,后者只能你自己去查。

大模型与搜索

搜索交回一个能打开的位置,它交回一个生成出来的结论。差别不在谁更准,在结论没有出处。

它不是搜索引擎,但绝大多数人第一次用它,用的就是搜索的习惯。两者的差别不在谁更准,在交回来的东西根本不同:搜索给你一个能打开的位置,它给你一个从统计规律里生成出来的结论,而结论没有出处。

读完你能回答:

  • 为什么它给的事实查不到出处,语气却那么笃定?
  • 为什么它会把两个相似的东西说混?
  • 接上检索之后,哪些问题解决了,哪些还在?

位置和内容,是两种交付物

搜索引擎干活的时候,原始网页一直摆在那里。它的工作方式是建索引、做匹配、排顺序,最后交给你的是一句话的位置:这段话出自哪份文档、落在哪个位置。于是核对这件事变得很轻——点开链接,原句、作者、发布日期都在眼前,你不需要相信搜索框背后的任何判断。

模型这条路完全不同。训练一结束,语料就被丢开了,只剩下一堆权重。权重保存的不是「这句话出自哪篇」,而是「某种内容之后一般会接着什么」。统计规律被压进了参数里,语料本身并没有被存进硬盘。

所以说「它记得那篇论文」并不准确。它手上是那类论文常见的说法、结构和术语搭配,回答的时候把它们重新组装一遍。组装出来的句子在语法和行文上挑不出毛病,可它跟哪一份具体文件都不对应。

搜索那一侧当然也会失灵,搜不到,或者结果被排到很后面。但它失灵时你看得见,而模型这一侧失灵是无声的。这里的分野是「能不能核对」,不是「谁的分数更高」。

没有出处会连着带来三件事

第一件是内容互相串味。权重里没有任何地方标注一条信息的来源,所以长得像的东西会彼此污染。同一个库的两个大版本里,同名函数的参数顺序不一样;两家名字只差一两个字的厂商,各自公布的电池容量不一样;同一份材料里相邻的两章,各自的生效日期不一样——这类「像但有别」的配对最容易出事。更麻烦的是串完之后的样子:它的语气不会有任何变化,照样说得四平八稳。幻觉研究把这一类失败模式描述得很完整。hallucination-survey

第二件是它只知道训练结束之前的世界。权重在训练完成那一刻就定住了,之后发布的版本、改过的规则、调整过的费率,它一概不知。但面对提问它不会沉默,而是沿着截止日之前的那套模式继续往下推——推出来的错答案读起来依旧合理。它到底停在哪一天、这件事在哪些场景里最要命,它读过的世界停在哪一天 单独展开。

第三件最麻烦:它没有出处,却能造出处。 文件编号、卷期页码、法条序号、发布日期,这些东西的格式规律性极强,仿造起来毫无难度;它甚至会一次列出好几条,排版整齐,条条都像真的。只要引用是它主动给的,默认就得当成待核实。

三件事里,前两件会随着模型换代慢慢减轻,第三件不会——在它那里,编一个出处和给一个结论是同一个动作。

检索补上的是出处,不是生成

很多产品会先搜再答:先把几段真实原文放进这一次的输入,再让模型照着这几段写。这就是检索增强生成,也就是那篇把名字定下来的论文讲的同一套做法。rag-paper

它买到的是出处,没买到「不再生成」。 检索回来的段落一旦不完整,缺的那部分它照样靠记忆补上;几段内容彼此打架时,它会挑一个读起来更顺的说法圆过去。所以带引用的回答并不等于可以放心引用,仍然要按顺序做两件事:

  1. 点开那个链接,确认它确实存在、确实指向它声称的来源。
  2. 找到被引用的那句话,确认它真的写在这一页上。

第二件事最容易漏。链接本身没问题、页面也确实存在,可引述的措辞是它自己加工过的——这种错比一个打不开的链接隐蔽得多,因为它经得起第一眼检查。

检索的范围,得由你划定

这条判断在产品上很具体:只要答案需要给出处,检索这一层就必须握在你手里。「上哪儿找资料」不能也交给模型自由发挥,而要由你写明可用的库、可用的文档、可用的时间范围。范围收窄之后会发生两件事:它没有机会用记忆去填补,答案里能核对的成分立刻上一个台阶;同时你手上的数据源变了,更新资料只需要换一批文档,不必等下一次训练。

反过来,如果连「查哪一份文件」都由它自己拿主意,你等于在一条已经不确定的路上再叠一层不确定:它可能翻出一份三年前的条文,也可能压根没查,而这两种情况在你的日志里长得一模一样。如果资料是企业内部的东西,这一层还要更早动手——知识库要先对齐领域 说的是这件事。

事实和转换,分成两条路

把两者的分工摆出来,选择就没什么可犹豫的。要确定一件事是什么——事实、数字、出处、最新状态——去搜索,或者走你自己的检索,因为你要的是可核对。要处理一件已经确认过的事——改写、摘要、翻译、按格式重排、从一堆材料里提取结论——用模型,因为你要的是转换。

顺序不能颠倒:先用检索把事实定下来,再让模型在这些事实上做加工。反过来做,等于让一个没有出处的部件先去生产事实,事后再想办法给它补出处。这两件事常常出现在同一个功能里,但前后脚的关系不等于可以互相替代。

它编造的时候具体长什么样、怎么防,幻觉不是故障,是机制的产物 讲得更细;检索这一层怎么搭,先检索再回答:四步 从建库讲到拼上下文。

参考资料

  1. Survey of Hallucination in Natural Language Generation — arXiv
  2. Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks — arXiv