任何领先的大型语言模型(LLM)都可以实现检索增强生成(RAG)。为了成功实现这一技术,关键在于优化检索模型并确保数据的高质量。
几十年来,企业在内部捕获、组织和应用集体知识的尝试多次失败,原因在于现有的软件工具无法理解构成企业知识库主体的非结构化数据。然而,LLM的出现为生成性人工智能工具提供了动力,它们擅长处理和理解非结构化数据,使其成为企业知识管理系统的理想选择。
为了向生成性人工智能转变,企业中出现了一种主导的架构模式:结合“AI代理”方法的RAG。RAG为生成AI引入了信息检索组件,使系统能够访问LLM训练集之外的外部数据,并将输出限制在这些特定信息中。通过部署一系列人工智能代理执行特定任务,团队现在可以利用RAG自动化整个复杂、多阶段的知识工作流程,这些任务以往只能由人类完成。
RAG的潜在用例非常广泛,包括信用风险分析、科学研究、法律分析和客户支持等,这些工作流程都依赖于专有或特定领域的数据,且准确性要求极高。
尽管RAG是新兴技术,但已经面临批评,有人过早地宣称它失败了。然而,了解RAG的核心功能——使LLM能够访问和总结外部数据——表明,这种全盘否定可能源于孤立的实施问题,而非概念本身的根本缺陷。将生成人工智能与外部、特定于领域的数据集成是企业人工智能应用程序的关键要求。事实上,Meta、谷歌、亚马逊和微软以及一些人工智能初创公司已经成功大规模实施了基于RAG的解决方案。OpenAI也在其ChatGPT产品中添加了RAG功能。
为何RAG实现会失败
然而,RAG并非一刀切的方法。不同的RAG实现方式各异,其部署可能失败或低于预期的原因有几个关键方面。
尽管LLM吸引了更多关注,但RAG的真正魔力在于检索模型及其上游组件。RAG部署的成功与否取决于源内容的质量和检索模型在将大型数据源过滤到有用的数据点之前提供给LLM的能力。因此,大部分开发工作应侧重于优化检索模型并确保数据的高质量。
LLM在RAG系统中的作用仅仅是总结检索模型搜索结果中的数据,并进行及时的工程和微调,以确保音调和风格适合特定的工作流程。市场上所有领先的LLM都支持这些功能,在RAG方面,它们之间的差异微乎其微。因此,可以快速选择一个LLM,并专注于数据和检索的优化。
RAG失败的主要原因通常是对数据访问、质量和检索过程的关注不足。例如,如果数据过于嘈杂或与特定任务无关,仅将大量数据输入到具有扩展上下文窗口的LLM中是不够的。不良结果可能由多种因素引起:源语料库中缺乏相关信息、噪音过大、数据处理无效或检索系统无法过滤掉无关信息。这些问题导致低质量数据被输入LLM进行总结,从而产生模糊或垃圾响应。
值得注意的是,这不是RAG概念本身的失败,而是构建适当的“R”——检索模型的失败。
成功部署RAG的三个关键
成功实施企业RAG系统的团队坚持以下核心原则:
识别数据密集型、具有战略影响的用例:最适合使用RAG代理实现自动化的候选者是那些涉及高度重复性的工作流,这些工作流需要筛选来自各种不同来源的大量非结构化数据,以及那些消耗大量内部带宽的工作流程。此类任务的特点是要么过于耗时,要么需要频繁执行,要么两者兼而有之。 关注数据质量和检索模型的有效性:分配约90%的精力来确保访问高质量数据,彻底清理和处理这些数据,严格评估其相关性,及时进行工程优化,并微调输出以精确地与特定工作流程保持一致。 衡量重要的事情:建立具体的投资回报率指标,重点关注与原始任务执行相比的产出质量和节省的时间。任何人工智能实施都无法提供100%的自动化。相反,应通过比较手动执行所需的资源与RAG AI提供初稿的新流程来衡量效率收益,该流程随后进行人工审查和定稿。