检索增强生成(RAG)是人工智能(AI)领域的一项先进技术,旨在提高大型语言模型(LLM)生成的回复的质量和可靠性。它将 LLM 的生成能力与信息检索系统相结合。在生成回复之前,RAG 系统首先从预定义的知识源(如公司内部文档、特定数据库或网络)中检索相关信息片段。然后,将检索到的上下文与原始用户查询一起提供给 LLM,使模型能够生成更准确、更及时、更基于事实数据的答案,从而减少幻觉等问题。
检索增强一代如何工作
RAG 流程通常包括两个主要阶段:
- 检索:当用户提供提示或查询时,系统会首先使用该输入搜索大量文件语料库或矢量数据库。搜索的目的是找到包含与查询相关信息的文本片段或文档。这里通常采用语义搜索等技术来查找上下文相似的信息,而不仅仅是关键词匹配。
- 生成:然后将第一阶段检索到的相关信息与原始用户提示相结合。这个经过扩充的提示现在包含了丰富的具体背景信息,并被输入到 LLM 中。LLM 使用原始查询和提供的上下文来合成一个全面的、以事实为基础的回复。这一过程已在 "针对知识密集型 NLP 任务的检索-增强生成 "论文等研究中正式提出。
优势和应用
与单独使用标准 LLM 相比,RAG 具有若干优势:
- 提高准确性:通过将外部数据作为回答的基础,RAG 降低了 LLM 生成错误或捏造信息的可能性。
- 获取最新信息:RAG 系统可以访问知识库中存储的最新信息,克服了 LLM 的局限性,因为 LLM 的知识是在上次培训时冻结的。
- 特定领域知识:它允许法律硕士通过检索特定技术文档或数据库中的信息,提供专业领域的专家级答案。
- 透明度和信任:RAG 系统通常可以引用生成信息的来源,从而提高用户信任度,并允许进行事实核查,这对人工智能伦理至关重要。
真实世界的例子
- 企业知识管理:公司使用 RAG 构建内部聊天机器人,通过检索SharePoint等平台或专用知识库中存储的内部政策、技术手册和报告中的信息,准确回答员工的问题。
- 客户支持自动化:客户服务平台利用 RAG 为支持代理或聊天机器人提供常见问题解答、产品文档和过往支持单据中的相关信息,从而更快、更准确地解决客户问题。Zendesk等工具就集成了此类功能。
RAG 与相关概念
- RAG 与标准 LLMs 的比较:标准 LLM 仅根据训练过程中学到的模式生成反应。而 RAG 则通过在推理时动态地纳入外部信息来增强这一点,从而产生更符合事实和上下文相关的输出结果。
- RAG 与微调: 微调是通过在较小的专门数据集上继续进行训练,使预先训练好的模型适应特定任务或领域。这种方法虽然有效,但需要大量的计算资源和重新训练来更新知识。RAG 只需修改外部数据源,无需重新训练 LLM,就能实现知识更新,从而更灵活地应对快速变化的信息。RAG 和微调也可以同时使用。
- RAG 与提示工程: 提示工程包括精心制作输入提示,以指导 LLM 作出回应。RAG 通过从外部来源检索,自动在提示中提供相关上下文。LangChain和LlamaIndex等框架提供了构建 RAG 管道的工具。
RAG 是朝着创建知识更丰富、更可靠的人工智能系统迈出的重要一步,它弥补了 LLM 巨大的生成能力与事实准确性需求之间的差距。虽然这一概念通常与文本相关,但它有可能扩展到增强模型,如 Ultralytics YOLO这样的模型,尽管这仍是计算机视觉领域的新兴研究领域。Ultralytics HUB等平台便于管理模型和数据集,这些模型和数据集有可能成为未来多模态 RAG 应用程序的知识源。探索可用的数据集可以让我们深入了解可能有用的结构化信息类型。