Google总监提出生成式AI应用架构和成熟度模型,一步步指导进阶
随着大模型技术的日渐成熟,应用已从原型演示向企业级落地过渡。之前,我们也多次介绍过有关诸如高级RAG等生产级技术,但缺少类似于MLOPS成熟度这样的评估体系,无法衡量一个应用在企业级层面达到了何种水平。
今天,笔者介绍Google AI/ML和GenAI总监Ali Arsanjani提出的端到端生成式AI应用架构以及其成熟度的分级。
如图可见,它将其分为UI/UX(自然语言对话交互)、Prompt Engineering(提示工程)、RAG 、Serve(服务)、Adapt(适配)、Prepare & Tune Data & Models(数据准备&模型微调)、Ground(闭环反馈、持续监控)、Multi-agent系统、Govern(伦理&合规)、MLOps、Secure、Run(计算平台)等部分。
同时,成熟度模型便是基于这些模块的有无和成熟程度展开。
生成式AI应用的成熟度是一个渐进的过程,如上图展示了生成式AI解决方案在基于复杂度及ROI层面从L0一直到L6的七个成熟度。涵盖了从基本数据准备和模型选择开始,到微调、评估,最终达到多智能体系统、高级推理和负责任的人工智能实践的高级阶段。
以下是各个阶段的详细解读。
L0: 数据准备
这个阶段主要集中于获取或创建所需要的高质量数据集,包括数据的收集、清理、预处理、获取使用授权、生成合成数据,以及进行数据工程和数据转换的相关活动。
L1: 选择模型与提示并部署模型
处于这个阶段的企业已经确定了合适的模型,并正在编写有效的提示与它们交互。他们还能够通过提示工程来引导模型执行特定任务,需要注意的是,相同的提示在不同的大语言模型上,可能不会产生相同的效果。
模型选择、提示工程和信息检索:
这一过程首先是根据特定任务选择合适的大语言模型,并用专有数据进行微调。有效的提示工程能够指导模型的行为,信息检索机制则从内部知识库中提取相关信息。这个检索步骤通常依靠企业搜索功能,使模型能够访问组织内部资源中的相关文档和数据。需要注意的是,上下文学习和多次学习可以为模型调优提供有益帮助。详见模型调优部分。
L2:检索增强:通过信息检索优化提示
在之前的基础上,本阶段通过生成式 AI (GenAI) 模型检索相关信息,从而提高交互的复杂性,以便提取特定的见解或数据。此阶段的重点是使用专有或特定领域的数据对生成式 AI 模型进行微调,以提高性能并更好地满足特定需求。检索增强生成 (Retrieval Augmented Generation, RAG) 框架结合了信息检索系统和大语言模型 (LLM),以生成更准确和信息量更大的响应。根据检索和集成机制的复杂性,RAG 可以分为不同级别。在初步从内部资源检索信息之后,RAG 会利用外部搜索功能,这包括查询外部知识库、网络和其他相关资源,以收集更多信息,增强生成输出的准确性和上下文。内部和外部搜索的结合确保了对主题的全面理解。需要指出的是,检索增强本身有不同层次的复杂性。
L2.1:简单检索和生成
在这个基本级别,检索增强生成(RAG)会根据用户的查询,从知识库或语料库中检索相关文档或段落。检索到的信息会直接传递给大语言模型(LLM),LLM 将这些内容作为上下文生成响应。这种方法比较简单,但由于完全依赖于 LLM 理解和综合信息的能力,因此结果可能不总是最准确或最相关。
L2.2:上下文检索和生成(Contextual Retrieval and Generation)
这个级别引入了更复杂的检索机制,能够考虑用户查询的上下文。它不仅依赖关键字匹配,还可能使用语义搜索或查询扩展等技术来找到更相关的信息。检索到的信息会在传递给 LLM 之前经过过滤和排名,以确保最佳相关性和重要性。这有助于提高生成响应的质量,使其更加集中和上下文相关。
L2.3:动态检索和生成(Dynamic Retrieval and Generation)
这一级别在生成过程中动态检索信息更进一步。LLM 不再一次性获取所有信息,而是可以在生成过程中根据需要反复请求更多信息,从而生成更加全面和准确的响应。这种方法允许对话更加互动和细致,LLM 可以主动寻找额外的信息,解决模糊点或填补知识空白。
L2.4:多源检索和生成(Multi-Source Retrieval and Generation)
这一高级别涉及从多个来源检索信息,例如不同的知识库、数据库,甚至实时数据流。挑战在于如何有效整合这些不同来源的信息,它们可能具有不同的格式、结构或可靠性。需要复杂的检索和融合技术,以确保生成的响应是连贯、准确且最新的。
L2.5:知识感知生成(Knowledge-Aware Generation)
在这个最高级别,RAG 结合了知识图谱或其他结构化知识表示,以增强 LLM 对检索信息的理解。这使得 LLM 能够推理检索到的知识,识别概念间的关系,并生成更加有见地的响应。这种方法特别适用于需要深入领域知识或复杂推理能力的任务。
L3:使用特定领域数据微调模型
在这一阶段,通过使用参数高效微调、人类反馈强化学习(RLHF)、监督微调(SFT)或完全微调(FFT)来进行模型调整。这些方法的复杂度和应用范围会随着成熟度的提高而变化。这使得模型可以基于特定行业或领域的数据进行训练。每个企业都有自己多年积累的私有领域数据,这些数据在该垂直领域内具有独特的价值。另一方面,也要通过训练模型,使其熟悉特定领域如零售、医疗保健、金融服务等行业所包含的术语及相关知识。
微调 AI 模型的方法多种多样,复杂性和应用范围各不相同,从简单的上下文调整到高级的强化学习。
以下是按照成熟度和复杂性排列的详细方法概述:
3.1. 上下文学习(In-Context Learning,ICL)
成熟度水平:基础
相对成本:低
所需数据量:最小(零样本或少样本例子)
描述:模型完全基于在提示中提供的上下文进行预测,而无需更新其参数。它依赖于在其预训练阶段获得的知识。
用例:基于给定例子或提示,快速高效地生成文本或其他输出。适合需要快速适应而无需重新训练整个模型的场景。
3.2. Multi-shot (使用大上下文窗口)
成熟度水平:中级
相对成本:适中
所需数据量:最小到适中(少样本到多样本的例子与广泛的上下文)
描述:这种方法通过利用非常大的上下文窗口来构建标准的在上下文中学习。它使模型能够处理来自提示和周围文本的大量信息。这不仅提高了对复杂任务的理解,还允许Multi-shot在上下文中学习,模型可以学习上下文窗口中提供的多个示例。
用例:适合需要深入上下文理解的任务,例如:
- 长篇本文生成
- 复杂的问题回答
- 文档摘要
- 多步骤推理任务
- 多个例子可以指导模型输出的任务
DeepMind 对“Many-Shot In-Context Learning”的研究表明,在上下文窗口中提供的示例数量增加时显示出显著的性能提升。这突出了利用大上下文窗口的潜力,不仅仅是为了提高理解,还为了使模型能够有效地从多个演示中学习。
3.3. 小型语言模型的预训练
成熟度水平:中级
相对成本:适中
所需数据量:适中到大(取决于模型大小和所需性能)
描述:这涉及从零开始训练较小的语言模型,或在有限数量的数据上训练。这些模型通常用于特定应用,其中大型通用模型不切实际,因为计算限制或领域特定要求。
用例:用于专门领域的任务,这些领域具有特定词汇或有限的计算资源。也可以用作进一步微调或适应的基础。
3.4. 适配器调整(Adaptor Tuning)
成熟度水平:中级
相对成本:低到适中
所需数据量:小到适中(特定于任务的数据)
描述:这种技术在预训练的语言模型中引入了小型、可训练的适配器模块。这些模块专门设计为在新任务上进行微调,同时保持大部分原始模型参数冻结。这导致了高效的特定于任务的改编,计算开销很小[4]。
用例:非常适合借助有限资源将大模型适应于特定任务。保持原始模型的效率和知识,同时允许快速和有针对性的微调。
3.5. 低秩适应(LoRA)
成熟度水平:中级到高级
相对成本:适中
所需数据量:小到适中(特定于任务的数据)
描述:LoRA 通过调整其权重矩阵的低秩逼近来微调模型。这大大减少了可训练参数的数量,使其比全部微调的效率要高得多。
用例:适用于各种任务,包括自然语言处理和计算机视觉,在这些任务中你需要将大模型适应于特定任务,而不会产生训练所有参数的全部计算成本。
3.6. 其他参数高效的微调方法
成熟度水平:中级到高级
相对成本:适中
所需数据量:小到适中(特定于任务的数据)
描述:这一类别包括了几种技术,如prefix-tuning, prompt-tuning, and bitfit。它们都旨在通过调整模型的一小部分参数或输入来微调模型,显著减少了计算负担。
用例:非常适合快速适应新任务或计算资源有限的场景。这些方法在高效性和调整模型行为能力之间提供了一个平衡。
3.7. 领域特定的预训练
成熟度水平:高级
相对成本:高
所需数据量:大(特定于领域的语料库)
描述:这涉及在特定领域(例如,法律、医疗或金融)的大型文本语料库上预训练模型。这有助于模型捕获该领域独特的细微差别、词汇和知识结构。
用例:在通用模型可能缺乏必要领域专业知识的专业领域极其宝贵。可以作为进一步微调或适应该领域内的起点。
3.8. 监督微调
成熟度水平:高级
相对成本:高
所需数据量:大(标记的特定于任务的数据)
描述:这是经典的微调方法,即整个模型在特定任务的标记数据集上进行训练。所有模型参数都更新以优化其在该任务上的性能。
用例:适用于有大量标记数据的任务,如文本分类、情感分析、命名实体识别和问题回答。
3.9. 全参数微微调
成熟度水平:高级
相对成本:非常高
所需数据量:大到非常大(标记的特定于任务的数据)
描述:这种方法是微调的最广泛形式,在新任务特定数据集上训练期间调整预训练模型的所有参数。
用例:通常保留给在特定任务上的最大性能至关重要的情况,并且你能够使用大量的计算资源和大型高质量数据集。
3.10. 指令微调
成熟度水平:高级
相对成本:高到非常高
所需数据量:大(多样化的基于指导的数据集)
描述:这种方法涉及对模型进行微调,以便遵循广泛的指导并完成各种任务。模型在包含指导及其相应期望输出的多样化数据集上进行训练。
用例:增强模型理解和执行复杂指导的能力,使其适合通用人工智能助手、聊天机器人和其他需要灵活任务执行的应用程序。
3.11. 结合人类反馈的强化学习(RLHF)
成熟度水平:前沿
相对成本:非常高
所需数据量:可变,但往往大(人类反馈数据)
描述:RLHF 结合了强化学习技术和人类用户的反馈。模型通过根据其行为和所收到的反馈接收奖励或惩罚来学习,旨在根据人类偏好优化其行为[10]。
用例:在人类偏好至关重要的情况下应用,如对话代理、推荐系统和其他直接与用户互动的应用程序。
3.12. 直接优先级优化(DPO)
成熟度水平:实验性
相对成本:非常高
所需数据量:可变(用户偏好数据)
描述:DPO 专注于根据用户的反馈和偏好直接优化模型。这通常涉及技术,如梯度下降来调整模型的参数,使其与观察到的用户偏好保持一致[10]。
用例:特别适合用户满意度至关重要的应用程序,偏好可以直接测量和优化。示例包括个性化内容推荐系统和用户界面设计。
3.13. 多任务微调
成熟度水平:高级
相对成本:高到非常高
所需数据量:大(多个任务的标记数据)
描述:在多任务微调中,模型同时在多个相关任务上进行训练。这允许模型在任务之间利用共享的知识和表示,可能导致性能和泛化能力的提高[11]。
用例:在场景中特别有益,模型需要在多种任务上表现良好,例如多领域客户服务机器人或需要理解语言的各个方面的模型(例如,情感分析、问题回答和文本摘要)。
3.14. 元学习(学会学习)
成熟度水平:前沿
相对成本:非常高
所需数据量:可变,通常大(元训练数据)
描述:元学习专注于培训模型,使其能够通过最少的数据快速适应新任务。它涉及在培训阶段对模型在各种任务上进行训练,使其学会高效学习。
用例:在模型需要快速适应少量示例的新任务或领域的情况下特别相关,例如少样本学习场景或个性化学习系统。
3.15. 主动学习
成熟度水平:高级
相对成本:高到非常高
所需数据量:可变,通常迭代(最初较小,随着模型查询更多数据而增长)
描述:主动学习涉及模型积极选择最具信息量的数据点进行标记,从而优化微调过程[13]。
用例:在标记数据昂贵或耗时的情况下极其宝贵。通过专注于最相关的示例,主动学习可以显著减少有效微调所需的标记数据量。
3.16 知识蒸馏(Knowledge Distillation)
成熟度等级:中高级
成本开销:中到高
数据需求量:中到大
描述:这是一种将从大型、预先训练的教师模型中的知识转移至一个体积更小、效率更高的学生模型(student model)的技术 [14]。
应用场景:特别适用于在存储和计算资源有限的设备上部署模型,如手机或边缘计算设备,同时保持较好的性能。
这些方法每一种都相较前一种在复杂性和资源需求上更进一步,涵盖了从简单的上下文调整到包含人类反馈及广泛参数调整的高级技巧。选择适合的方法主要基于任务的特定需求、可用的资源和预期达到的性能标准。
L4 :通过搜索和引用来实现模型输出的基础验证
除了模型微调,此级别还包含了生成式 AI (GenAI) 输出的基础验证和评估。也就是说,需要确保生成的内容在事实上是准确的、相关的,并符合伦理标准。
在生成式 AI 成熟度模型的第四级,融合了多项能力以确保通过一个坚固的基础验证和评估流程来提升生成输出的质量和可靠性,此过程得到了内部企业搜索及使用 Vertex AI 基础验证服务的外部类似 Google 的搜索的增强。
基础验证与评估:无论是来自内部还是外部的信息,都将经过彻底的基础验证和评估过程。这包括验证事实的准确性,识别潜在的偏误并评估信息对生成输出的相关性。Vertex AI 基础验证服务在这一步中扮演了重要角色,因为它为所用信息提供了引用和参考文献,增加了生成内容的信誉度和透明度。
基础验证后的优化:经过基础验证和评估过程后,大语言模型 (LLM) 可能会根据收到的反馈调整生成的输出。这一调整过程确保了最终的输出不仅准确、相关,而且有可信源头的支持。
模型服务化:最终,这些经过优化和验证的模型被提供给用户或集成到应用程序中,提供的是基于已验证信息的可靠且富有见解的回应。
内部企业搜索通过快速识别组织内部知识库的相关文件、数据和信息来辅助验证生成输出,提供了一个宝贵的出发点,从公司特定的知识和专业背景出发来确立生成输出的基础。例如 Vertex AI 基础验证服务这样的外部 Google 搜索模式则扩大了信息检索范围,通过访问大量外部资源来确保生成的输出不仅限于组织内部的知识,还融合了来自更广泛领域的最新信息和洞察。当结合了这两种搜索能力,生成式 AI 系统能够从内部和外部资源中寻找到引用和参考,增强了生成输出的信用度和可靠性。这一基础验证和评估流程保证了最终输出不仅具有内容价值,还是值得信赖和透明的。
L5:Agent系统
这个进阶阶段引入了多智能体系统,这里不单是一个生成式 AI (GenAI) 模型独自工作,而是多个 生成式AI模型在一位中央大语言模型 (LLM) 的指挥下协同合作,处理需要协调和综合多种能力的复杂任务。同时,还特别强调了如何有效监控和理解模型行为(可观察性),以及如何将生成式 AI 模型的整个生命周期运营化(LLM 运维)。
在生成式 AI 成熟度模型的第5级,多个关键能力结合,构建了一个复杂的系统,它为基于智能体和多智能体系统的发展奠定了基础。
模型选择、智能提示设计和信息检索:一切从选择一个适合特定任务的 LLM 开始,进而通过专有数据对其进行细致微调。高效的智能提示设计可以引导模型的行动,而信息检索机制则能从多种来源抽取相关的信息,丰富 LLM 的知识库。你可以运用包括上下文学习、链式思考、明确步骤的格式化,以及 XML 类结构的高级智能提示设计技术,甚至可以进一步使用思考框架,结合评估 LLM 结果和基于观察的输出进行推理再生成最终行动的 ReAct 框架,以此达到更高层次的复杂性。
通过 LLM 编排:5级重要的创新之一是引入中心 LLM 作为协调者。它像指挥家一样,编排其他模型或组件的行动,分配任务,管理沟通,并将来自不同模型的输出整合起来,构建一个统一连贯的工作流。这标志着迈向基于智能体系统的初步步骤,个别模型在这里扮演着专门的角色。
基础验证和评估:继上一级之后,继续使用基础验证来保障生成输出的质量和可靠性,运用不同的机制对信息进行验证并评估回应的可能影响。评估过程则持续监视系统性能,为不断的优化提供反馈。
评估、可观察性和 LLMOPS:在此级别,为生成式 AI 参考架构的每个部分引入了正式的和全面的可观察性和评估机制。
这种对系统性能的持续评估和监控对于生成式 AI 模型的不同部件至关重要,如提示、RAG输出、模型调整的偏差或偏漂、基础验证输出等。可观察性使我们能够洞察 LLM 的行为,并对此进行积极调整。LLMOPS则简化了整个生成式 AI 基础设施的部署、管理和监控过程。
Agent系统 vs MultiAgent系统
Agent系统 :涉及单个大型语言模型 (LLM) 作为代理,执行任务,做出决策并与其环境交互。LLM 可以被视为具有多种功能的单一实体。
multiAgent系统:从基于代理的系统发展而来,引入了多个专门的 LLM。每个 LLM 作为一个独立的代理,具有特定的角色或专业知识。这些代理协作、沟通和协调他们的行动来解决单个代理无法有效处理的复杂问题。
L5 作为迈向MultiAgent系统的基础,为编排多个模型奠定了基础架构。它使组织能够尝试将特定任务分配给不同的模型并评估其性能。这种实验为开发更复杂的MultiAgent系统铺平了道路,在这些系统中,具有互补技能的不同模型可以协同工作以实现共同目标。
L6:多智能体倍增器
在 AI 领域的最高成就之一,就是应用如“思维树 (Tree-of-Thought)”或“思维图 (Graph-of-Thought)”这样的尖端技术,来提升生成式 AI(GenAI)模型的推理和规划能力。这些方法为决策和解决问题提供了更为复杂且高级的途径。在此级别,大语言模型(LLM)不仅自我指挥,还能控制其他 LLM,显现出一个高度自主和能力强大的 GenAI 生态系统。此外,重点关注“负责任的 AI”,展现了对 AI 技术伦理和公平使用的坚定承诺。
L6反映了 GenAI 技术的显著成熟,它巧妙地融合了尖端技术和架构,达到了产出高价值能力的目标。
通过‘思维树(TOT)/思维图(GOT)’强化推理能力:第 6 级充分利用了“思维树 (ToT)”或“思维图 (GoT)”架构的力量。通过这些架构,LLM 能够将复杂问题拆解为小而易管理的步骤,有系统地探索可能的解决方案,从而做出明智的决定,极大地增强了 GenAI 系统的推理、规划和问题解决能力。
用DSPY和ReAct进行主动信息收集:L6 加入了像 DSPY(演示Demonstrate-搜索Search-预测Predict)和 ReAct(推理和行动)这样的技术。DSPY 指导 LLM 在何时寻找外部信息、预测相关查询以及如何将检索到的信息整合进推理过程中。ReAct 则赋予 LLM 主动与环境互动的能力,依据收集到的信息进行决策和行动。
信息的检索与融合:L6 采用先进的信息检索技术,从不同来源(包括内部知识库和外部数据库)获取相关数据,并将这些数据无缝融入到 LLM 的推理过程中,确保获得的知识既最新又与上下文高度相关。
通过自定义数据调优模型:通过专有或特定领域的数据对 LLM 进行精细调整,不仅优化了其性能,也使其更适合特定的任务和领域需求。这保证了模型生成的响应既准确且与上下文高度贴切。
多智能体的协调与控制:L6 通过部署多智能体系统,使得多个 LLM 在一个中心 LLM 的指挥下协同工作,有效处理了那些需要协调、专业化处理和广泛专业知识的复杂任务。
确保基础和评价的准确性:采用严格的验证和评价机制,确保产出的内容不仅事实准确、高度相关,还遵从伦理和安全准则。这包括针对可靠来源的信息进行核实,并评估产出可能带来的影响。
持续评估、可观测性和运维优化:L6 特别注重对 GenAI 系统性能的持续评估和监控,深入了解其行为,及时进行调整。采用了先进的运维实践,简化了 GenAI 基础设施的部署、管理和监控流程。
L6 通过将最前沿的技术手段和最佳实践完美结合,让 GenAI 系统在推理、决策与解决问题的能力上达到了前所未有的高度。这一全面的方法确保了系统的强大性、可靠性、伦理性,并能随着需求的变化而适应。
横向与纵向领域
企业通过提升效率、生产力、客户满意度以及创新能力,可以显著提高投资回报率(ROI)。为此,早期识别、测量、监控并调整这些指标和关键绩效指标(KPIs)至关重要。精细定义目标、有效测量 KPIs 并持续调整战略,对于在快速变化且不断重组的商业环境中充分利用 GenAI 的潜力至关重要。
在横向领域提高 ROI 的 GenAI 应用
所谓“横向领域”,指的是那些贯穿不同行业和组织内各业务单元的通用功能或流程。通过在这些领域应用 GenAI,可以提升工作效率、生产力和整体投资回报。
- 市场营销与销售:通过个性化客户体验、生成精准定向内容、优化营销活动,提升客户参与度、转化率和销售额。
- 客户服务:利用 GenAI 驱动的聊天机器人和虚拟助手,有效处理客户咨询、自动化应答并解决问题,提升客户满意度并降低支持成本。
- 人力资源管理:简化招聘流程、个性化员工入职体验、提供定制化学习和发展机会,增强员工的参与感和生产力。
- 财务与会计:自动化财务分析、识别异常和欺诈行为、优化财务流程,提高准确性、效率和风险控制水平。
- 运营与供应链管理:优化库存管理、预测需求、简化物流操作,从而降低成本、提高供应链效率。
在纵向领域提高 ROI 的 GenAI 应用
“纵向领域”特指那些特定于某一行业或子行业的领域,需要针对每个行业的特定需求和挑战定制解决方案。
在多个纵向领域部署 GenAI 同样能够有效推动 ROI。
- 医疗保健:在医学诊断、药物发现和个性化治疗计划方面提供辅助,改善患者治疗结果,降低医疗成本。
- 金融:分析财务数据、预测市场趋势、提出投资建议,改善决策制定和风险管理。
- 零售:个性化商品推荐、优化定价策略、增强购物体验,提升销售额和顾客忠诚度。
- 制造业:优化生产流程、预知设备故障、提升质量控制,降低成本、提高生产效率。
- 教育:提供个性化学习体验、自动化反馈和自适应评估,提高学生的学习成果和参与感。
结束语及行动呼吁
理解组织、团队或个人当前的成熟度和技术深度非常重要。接下来,确定目标成熟度并发展必要的技能,满足达到该成熟度所需的技术要求,实现定义好的商业影响和目标。
组织可以规划从当前状态到达目标成熟度的路径,通过构建技能和能力、利用如 Google Cloud AI 这样的工具和平台,推进商业目标,实现其所追求的成熟度级别的商业成果。
本文转载自AI工程化,作者: ully