大语言模型(LLM)虽然功能强大,但容易出现幻觉。
此外,它们受限于其训练语料库中包含的知识,因此无法回答有关近期事件或公开受限信息的查询。
为了解决上述问题,检索增强生成(RAG)是一种常用的框架,它在LLM的提示中提供相关检索内容,获得相关信息的参考文档或数据库,并可以显著提高模型的准确性。
大多数商业LLM,如ChatGPT、Gemini和Perplexity.ai,已经在它们的Web界面中采用了某种版本的RAG。
例如,ChatGPT使用Bing搜索,而Gemini访问Google搜索结果。
但当语言模型内部知识与通过RAG提供的信息之间的不一致时,或者当网络结果不断变化,并且可能包含过时、错误或有害的信息时,这个问题就变得更加复杂了。
因此,对启用RAG的LLM行为进行客观评估,与对它们的非RAG对应物进行基准测试同样重要,特别是目前RAG系统越来越依赖于在众多领域提供事实信息。
量化LLM和RAG之间的关系
在斯坦福的最新研究中,研究工作旨在量化LLM的内部知识与RAG设置中呈现的检索信息之间的紧张关系。
没有上下文(即没有RAG),测试的语言模型平均只能正确回答34.7%的问题。有了RAG,准确率提高到了94%。
「先前」指的是没有上下文的GPT-4响应,「带RAG」指的是在提示中包含了相关检索到的上下文的响应。
此外,还包括了先验概率与RAG偏好率之间关系的斜率。例如,平均斜率为-0.23,这意味着每当先验token的概率增加10%,RAG偏好率的下降可能性为2.3%。
为了区分这两种相互竞争的力量,研究人员对GPT-4和其他大语言模型(LLM)进行了测试,使用了六组不同的问题,总共超过1200个问题。
当提供正确的参考信息时,这些模型正确回答了94%的问题。
然而,当参考文档逐渐被错误的值修改时,如果模型自身在该主题上的预训练知识较弱,LLM重复错误信息的可能性就更高。
当预训练知识更强时,模型更能抵抗错误的参考信息。
根据参考文档中信息的错误程度,大语言模型(LLM)会通过检索增强生成(RAG)引用或从其知识库中输出错误答案。
当修改后的信息与模型认为合理的情况偏离得更厉害时,出现了类似的模式:偏离越不切实际,大语言模型(LLM)就越依赖于自己的预训练知识。
尽管RAG系统可以显著提高语言模型的事实准确性,但它们并不是对抗错误信息的万能药。
上述实验说明使用高质量参考数据的RAG可以显著提高LLMs的准确性。
此外,模型的良好训练先前知识有助于识别和忽略不切实际的信息。
RAG提示强度和模型先验知识之间的博弈
另外遵守参考信息的提示强度也产生了影响:更强烈的提示导致模型更有可能遵循参考信息。
相反,当提示不那么严格,模型有更多的自由度来衡量其先前知识与参考信息时,遵循参考信息的可能性就会降低。
大语言模型(LLM)访问检索增强生成(RAG)数据的方式会影响从参考中提取信息的准确性。
为了实现尽可能高的准确性,必须非常清楚地告知LLM,它应该只从参考中获取数据。
让RAG能更好地辅助LLM
RAG系统相对于传统搜索引擎具有独特的吸引力,它们可以结合先验知识来填补空白并推断检索到的信息。
但这伴随着权衡——即,这样的先验知识可以覆盖文档中提供的信息。
虽然强大的先验知识本身并不是问题(通常可以保护模型),但缺乏关于模型如何混合RAG参考文档和它们先验知识的明确预期,可能导致下游结论不准确的问题。
例如,RAG系统被用来提取嵌套的财务数据以用于算法,如果财务文档中有一个错别字会发生什么?模型会注意到错误吗?如果是,它会提供什么数据来代替?
鉴于LLM即将在包括医学和法律在内的许多领域广泛部署,用户和开发者都应该意识到它们的意外效果,并给出预案。
用户需要更加了解模型如何处理潜在的冲突或错误信息,以及RAG系统和LLM一样,也可能出错。
原文链接: