启发式方法 vs. RAG:作为政策驱动力的“缩水式通胀”
在大多数情况下,搜索网络能提高ChatGPT回答我们问题的事实准确性。那么,在人工智能正为获得公众接受而苦苦挣扎的当下,它为何默认选择“猜测”呢? 观点 认为像ChatGPT这样的大型语言模型(LLM)会揭露其宿主可能存在的可疑做法,这是一种误解。即使一次代价高昂且徒劳的会话足以激起你的怒火,让你真正深入探究系统的缺陷:大多数情况下——尤其是对于具有较晚知识截止日期的模型——人工智能只是在即兴发挥训练期间看到的Reddit和论坛帖子。即使此类“内部见解”有任何真正价值,也无法证明。然而,有时这些激烈的交流会导致发现一些“技巧”(或至少是“窍门”),这些技巧承诺能防止LLM上一些最糟糕的重复性习惯——例如,上周ChatGPT建议我可以通过加入恳求语“no heuristics”来让它更努力地工作并减少幻觉:自那以后,我大量使用了“no heuristics”,并且在我用这个命令结束查询后,模型一次也没有求助于其自身训练过的知识。相反,GPT会立即使用检索增强生成(RAG),在互联网上搜索有启发性或能佐证的文件。实际上,对于大多数请求,这与每次提交查询时告诉系统“搜索网络”差别不大。“no heuristics”这个短语真正能发挥作用的地方,是当你试图让ChatGPT真正阅读一个新上传的PDF文件,而不是使用该会话中先前PDF上传的元数据(或许多其他可能的来源)来生成一个“看似合理”但完全是幻觉的回复,而它并没有阅读甚至浏览你刚刚提供的文档。话虽如此,聊天会话持续的时间越长,这种方法有效的可能性就越小——并且认为任何此类“技巧”是可靠的或会随着系统发展而保持可用,将是一个错误。RAG的权衡在日益盛行的缩水式通胀文化背景下,以及像OpenAI的GPT基础设施这样的大型系统即使受到行为上最微小的普遍变化也会产生巨大影响的事实下,人们很容易相信像ChatGPT这样流行的大型语言模型所做的选择正在“缺斤少两”。这些选择包括:它是否会通过RAG访问网络;启动一个思维链(CoT)过程,这可能会获得更好的结果,但推理成本更高,并可能让不耐烦的用户感到厌倦;或者求助于其自身训练过的嵌入向量和本地可用知识——这是最便宜、最快的解决方案。像ChatGPT这样具有敏感公众形象的大型语言模型可能更倾向于限制其RAG调用,转而支持其自身的启发式方法,有几个实际原因。首先,从公关角度来看,频繁未经提示地使用网络支持了一种流行的观点,即LLM仅仅是代理谷歌搜索者,这削弱了它们与生俱来且经过昂贵训练的知识的价值——以及付费订阅的吸引力。其次,与本地推理(即参数生成)相对微不足道的成本相比,RAG基础设施的运行、维护和更新都需要成本,而本地推理既便宜又快速。第三,系统可能没有有效的方法来确定RAG是否能改进其自身的启发式结果——而且通常如果不先运行启发式方法,它就无法确定这一点。这使得最终用户需要承担评估有缺陷的启发式结果的任务,并在启发式结果似乎不足时请求RAG调用。从“AI缩水式通胀”的角度来看,ChatGPT因启发式方法出错和通过RAG成功的次数可以表明,正如它最近对我所做的那样,系统正在为成本而非结果进行优化。RAG随着时间的推移变得必要尽管ChatGPT最近向我“坦白”情况确实如此,但在这方面,“缩水式通胀”有更广泛的背景。尽管RAG无论从体验摩擦(通过延迟)还是运行成本来看都不便宜,但它比定期微调甚至重新训练基础模型要便宜得多。对于一个知识截止日期更早的旧AI模型,RAG可以维持系统的时效性,代价是网络调用和其他资源;对于一个较新的模型,RAG自身的检索更可能是冗余的,或者甚至损害结果质量,在某些情况下,使用启发式方法反而会更好。因此,AI似乎不仅需要具备判断是否应诉诸RAG的能力,还需要随着其内部权重变得越来越过时,不断演变其使用RAG的策略。同时,系统需要对知识中的“相对常量”进行隔离保护,例如月球轨道、经典文学、文化和历史;以及基本地理、物理学和其他不太可能随时间发生太大变化的科学原理(即,“突然变化”的风险并非不存在,但很低)。离群主题目前,至少就ChatGPT而言,RAG调用(即,对任何未明确或隐含要求网络研究的用户查询使用网络研究)似乎很少被系统自主选择,即使在处理“边缘”子领域时也是如此。边缘领域的一个例子是“冷门”软件的使用。在这种情况下,训练期间可用的极少源数据很难获得关注,并且数据的“离群”状态可能要么使其被标记为需要关注,要么被当作“边缘”或“无关紧要”而埋没——即使是AI知识截止日期之后发布的一个额外论坛帖子,也可能代表一个“小”主题的总可用数据和响应质量的实质性增加,从而使RAG调用变得有价值。然而,RAG的优势往往会随着基础模型变得更强大而缩小。虽然较小的模型从检索中获益显著,但像Qwen3-4B或GPT-4o-mini/-4o这样的大型系统通常从RAG中获得的改进微乎其微,甚至是负面的*。在许多基准测试中,检索带来的干扰多于益处,这表明需要在投资于具有更多内部覆盖范围的大型模型,或投资于与检索配对的小型模型之间进行权衡。因此,RAG似乎最适用于弥补中型模型的空白,这些模型仍然需要外部事实,但可以用不那么复杂的内部启发式方法来评估它们。仅在紧急情况下使用ChatGPT关于决定使用RAG的指导策略并未通过其据称的系统提示**公开披露,但已隐含地涉及(在接近结尾处):“使用网络工具访问网络上的最新信息,或者当响应用户需要关于其位置的信息时。一些使用网络工具的例子包括:本地信息:使用网络工具来回答需要用户位置信息的问题,例如天气、本地企业或活动。新鲜度:如果某个主题的最新信息可能改变或增强答案,请随时调用网络工具,尤其是在你原本会因为知识可能过时而拒绝回答问题的情况下。小众信息:如果答案会受益于并非广为人知或理解的详细信息(这些信息可能在互联网上找到),例如关于一个小社区、一家不太知名的公司或晦涩法规的细节,请直接使用网络来源,而不是依赖预训练中提炼的知识。准确性:如果一个小错误或过时信息的代价很高(例如,使用了软件库的过时版本,或者不知道运动队下一场比赛的日期),那么请使用网络工具。”我们尤其可以注意到,这些指示在原生训练数据稀缺的情况下提倡使用RAG。但系统是如何得出这种理解的呢?ChatGPT的普通用户和观察者可能会得出结论,在那些“搜索网络”小部件暂停后显示的情况下,模型的内部启发式方法刚刚被轮询用于该查询,并且一无所获。我们还可以注意到,根据暗示,RAG仅被推荐用于非常有限数量的用例。这使得GPT被建议轮询其自身权重,除了在“关键”应急情况(上述引文底部的“准确性”)下,对于大量基于事实的领域查询,AI固有的幻觉倾向可能是一个显著的责任。结论当前和近期的研究趋势表明,启发式生成快速且廉价,但出错的频率太高;而RAG速度较慢,成本更高,但正确的频率要高得多——模型规模越小,这一点越明显。根据我自己使用ChatGPT的经验,我认为OpenAI使用RAG的频率远远不够,将其作为一种精确工具而非日常驱动工具,特别是因为不断增长的上下文窗口带来的问题使得LLM在长对话发展过程中比以往任何时候都更容易产生幻觉。这种情况可以通过根据基于网络的权威来源检查启发式响应来显著缓解,无需等待最终用户怀疑输出或被其绊倒,也无需内部结果明显不令人满意以至于使用RAG的决定不可避免。相反,系统可以被训练得能够根据具体情况有选择地、智能地怀疑自己,从而通过一个筛选过程与网络互动,而这个筛选过程本身将是启发式的。据我所知,当前模型的架构并未为这种方法留出空间,这种方法反而必须添加到API过滤器的摩擦中。就目前而言,我甚至无法证明存在问题;即使有“坦白”†也不行: * 请参考本段顶部的链接。** 这是一个“自我暴露”的GPT-5系统提示,同样,它可能只是为GPT-5重新训练的提示论坛帖子的摘要,尽管有些人坚持认为该提示是真实的。† 我并不是在暗示ChatGPT的“有罪坦率”在这里有意义;我倾向于在OpenAI政策问题上反驳其官方立场,这意味着它最终会“同意”我的观点,并鹦鹉学舌般地重复我自己隐含的观点。这与在压力下脱口说出诺曼底登陆的细节相去甚远。首次发布于2025年12月10日,星期三