检索增强生成 (RAG)
了解检索增强生成 (RAG) 如何通过集成实时、可靠的外部数据来增强 AI 模型,从而获得准确、最新的响应。
检索增强生成 (RAG) 是一种先进的 AI 框架,旨在提高大型语言模型 (LLM)生成的响应的质量、准确性和相关性。它的工作原理是将生成模型连接到外部的、最新的知识库。这使得模型能够在生成答案之前“检索”相关信息,从而有效地将其输出建立在可验证的事实基础上,并降低幻觉或过时响应的可能性。RAG 通过让 LLM 访问未经训练的专业或专有信息,使其在知识密集型任务中更加可靠。
检索增强生成 (Retrieval-Augmented Generation) 如何工作
RAG 流程可以分解为两个主要阶段:检索和生成。这种双阶段方法结合了信息检索系统和生成模型的优势。
- 检索:当用户提供提示或提出问题时,RAG 系统首先使用提示在知识源中搜索相关信息。此源通常是一个向量数据库,其中包含文档、文章或其他数据的嵌入。检索器组件根据用户的查询识别并提取最相关的文本或数据片段。一个可选但强大的步骤是使用重新排序器来优化这些检索到的结果,确保仅传递上下文最重要的信息。
- 增强生成: 然后,检索到的信息与原始用户提示相结合。 这个新的、丰富的提示被输入到生成式 AI模型(LLM)中。 该模型使用此添加的上下文来制定全面、准确和相关的响应。 诸如LangChain和LlamaIndex之类的框架通常用于构建和管理这些复杂的 RAG 管道。
应用和示例
RAG 在需要事实准确性以及访问动态或专门数据的场景中特别有用。
- 高级问答系统: 客户支持聊天机器人可以使用 RAG 访问公司完整的产品手册、故障排除指南和政策文件知识库。 当客户问“我的产品的保修政策是什么?”时,系统会检索最新的保修文档,并使用它来提供精确、最新的答案,与通用回复相比有了显着改进。
- 内容创作与研究: 金融分析师可以使用RAG驱动的工具来撰写市场总结。该工具可以从彭博或路透社等可信来源检索最新的财务报告、市场新闻和股票表现数据。然后,LLM将这些信息综合成一份连贯的报告,并附有引文,从而大大加快研究过程。
RAG 与相关概念
区分 RAG 和用于增强 LLM 性能的其他方法是有帮助的:
- 微调: 微调通过在较小的、专门的数据集上继续训练来调整预训练模型,从而修改模型的内部 权重。与 RAG 不同,它在推理期间不查询外部数据。微调非常适合教授模型新的风格或技能,而 RAG 更适合整合事实知识。这些方法也可以是互补的。
- Prompt 工程(Prompt Engineering):这是手动设计 prompt 以从 LLM 获得所需输出的过程。RAG 通过以编程方式添加(“增强”)从检索到的数据中获得的 prompt 来自动执行此过程的一部分,而不是依赖于人工手动提供所有上下文。
- Prompt Enrichment(提示丰富): 虽然与 RAG 相似,但提示丰富是一个更广泛的术语。它可能涉及从用户历史记录或对话流程中添加上下文。RAG 是一种特殊的提示丰富,侧重于从外部知识库检索事实信息,以支持模型的响应。
计算机视觉中的 RAG
虽然 RAG 主要用于自然语言处理 (NLP),但其核心概念正在被探索用于计算机视觉 (CV)任务。例如,系统可以检索相关的视觉信息来指导图像生成或分析。这可能涉及从大型数据集中查找相似的图像,以提高目标检测模型(如Ultralytics YOLO)的性能。使用诸如Ultralytics HUB之类的平台简化了这些复杂模型和数据集的管理,该平台可以作为未来使用 RAG 的多模态模型应用的基础。您可以在我们的关于使用 RAG 和计算机视觉增强 AI 的博客中探索相关的实现。