GenAIOps实用指南:释放生成式AI的真正潜力 ( 中 )

GenAIOps实用指南:释放生成式AI的真正潜力 ( 中 )

生成式 AI 的新时代使企业组织的结构进一步复杂化。新增加的 GenAI 应用层 由即时工程师(Prompt Engineers)、AI 工程师和 DevOps/应用开发人员组成,他们专注于构建下一代 AI 解决方案和应用程序。GenAI 应用层的引入,突显了对有效应用和部署 GenAI 模型所需专业技能日益增长的需求。

生成式人工智能的快速发展催生了许多新的术语和操作范式。对于从事这一领域的人来说,理解这些“操作”之间的区别至关重要。与许多软件开发实践一样,其根基在于 DevOps。DevOps 强调通过自动化和持续集成/持续交付(CI/CD)管道来简化代码的部署和测试,这为后续更专业化的实践提供了坚实的基础。

在DevOps原则之上,我们迎来了MLOps。MLOps专注于解决部署机器学习模型的独特挑战,这些挑战源于模型的不确定性特性。与传统软件不同,机器学习模型的性能很大程度上取决于训练数据。因此,为了维持生产环境中的质量,必须对模型进行持续的监控和再训练,这为操作流程增添了更多复杂性。

随着模型的规模和复杂性的不断增长,我们进入了 基础模型(Foundation Models, FMs) 和大型语言模型(Large Language Models, LLMs)的领域。相应地,也引入了专门的操作框架,如FMOps 或其子集 LLMOps。这些框架关注部署和管理强大模型的独特需求,包括基础设施管理、微调和性能优化。

最终,生成式 AI 应用程序的崛起推动了GenAIOps 的发展。GenAIOps 处理的是构建和部署生成模型应用程序的操作需求。在GenAIOps 生态中,进一步衍生出了一些专门化领域:

  • PromptOps:管理和优化模型提示(Prompt)的操作。
  • AgentOps:管理自主代理(Agent)的操作。
  • RAGOps:管理检索增强生成(Retrieval-Augmented Generation),包括外部知识的检索与集成。

虽然这些术语可能显得晦涩难懂,但理解它们的作用和相互关系有助于更清晰地认识生成式人工智能的发展方向。

在了解了 GenAI 环境中的不同角色和操作框架后,让我们进一步探讨 GenAI 用户的典型旅程,特别是聚焦消费者的视角。

围绕 GenAI 的热潮显而易见,但要有效地应用这些强大的模型,需要对整个流程有清晰的理解。许多希望利用 GenAI 的组织往往被各种各样的可用模型及其集成到工作流程中的复杂步骤所淹没。这种情况常常让人有种迷失在功能海洋中的感觉,缺乏明确的路线图。成功实现 GenAI 的关键在于深入理解相关流程,并注重谨慎的模型选择。通常,这一过程包括以下步骤:

这个流程中的第一个关键步骤是 模型选择。组织通常首先面临的问题是:“我该如何选择合适的模型?” 这是一个核心问题,而答案不仅仅是选择最强大的模型。相反,这需要对几个关键因素进行战略性评估。当新的用例出现时,第一步是筛选出两个或三个候选模型。这些模型可能来自同一系列(例如Gemini的不同版本),也可能分别来自不同供应商。随后,应结合你的特定数据对这些模型进行严格测试,并专注于特定用例的实际需求。

虽然准确性显然是重要因素,但它并非唯一决定性标准。成本 和 延迟 等业务指标在确定哪个模型最符合需求方面同样起着至关重要的作用。例如,对于实时应用程序,即使某模型的准确性极高,但若其成本过于昂贵或响应速度太慢,则可能不适用于特定用例。通过这一评估流程,组织能够在性能与实际业务需求之间找到最佳平衡点。

理解模型特性需要从多个角度进行考量,例如:

  • 模型是专有的还是开源的。
  • 模型的许可协议。
  • 模型的微调功能、速度、成本,以及所需资源。
  • 模型的参数规模(如参数数量)。
  • 上下文窗口大小(特别是对于处理长文本序列的应用,例如文档摘要或 RAG)。
  • 模型的训练数据及其局限性。

此外,还需要考虑模型是否支持多模态(如文本、图像、视频等),以及团队现有的技能和对不同模型的熟悉程度。通过系统地评估这些因素,你可以有效地导航 GenAI 模型的复杂生态系统,选择最符合你需求的模型,并为成功的 GenAI 实现奠定坚实基础。

开发高效的 GenAI 应用程序不仅仅是简单地选择一个模型并期待最好的结果。这是一个循序渐进的旅程,始于对具体用例的理解,包括精心的提示工程、模型选择和持续评估。此过程是面向消费者的 GenAI Ops 的核心部分,它确保所选模型能够在目标应用中实现最佳性能。

这个流程通常从产品所有者向 AI 工程师描述其期望的用例开始。AI 工程师可能也精通提示工程,并将这些用例转化为技术实现。在这个过程中,AI 工程师会参考预训练基础模型(FMs)的特性表,同时提示工程师着手设计初始提示集。通常,初始提示集包含大约五条提示,用于在多个表现优异的候选模型中(通常为四个)进行测试,以评估它们的效果。初步测试有助于将候选模型范围缩小到两到三个竞争者。

提示目录在这一过程中扮演了核心角色。提示目录起初规模较小,可能只有十条提示及其对应的模型响应,但随着时间的推移,它会发展成一个强大的工具。提示目录记录了输入提示及其相应的模型响应,是产品化和评估流程的重要基石。当目录扩展到数百甚至上千条记录时,它对自动化评估变得极为宝贵。

这是提示模板发挥作用的地方。许多模型(如Llama 2)依赖特定的提示模板。这些模板相当于结构化蓝图,定义了模型输入的格式和参数。通过将这些模板与包含指令、上下文和期望响应的结构化表格结合,可以系统地构建全面的提示目录。利用表中的不同数据填充模板,相当于生成了提示目录的“物化视图”,形成一个强大而定制化的评估数据集。

越来越多的企业正在采用 提示模板目录 来加速人工智能的发展。这些目录充当了集中存储库,用于存储、管理和优化预构建的提示模板。这种方法具有以下几个显著的优点:

  • 提高效率:快速工程师可以快速利用经过验证的模板完成常见任务,避免从头开始设计提示的时间浪费。
  • 改进性能:存储在目录中的模板通常针对特定的用例和数据集进行了测试和优化,能够带来更高质量的结果。
  • 精简协作:目录为版本控制、所有权细节以及相关元数据提供了一个共享空间,从而促进团队间的协作与知识共享。
  • 简化模型迁移:通过包含针对不同基础模型(FM)量身定制的提示变体,目录大大简化了从一种模型迁移到另一种模型的过程,而无需进行广泛的重新工程。这种跨模型兼容性通常依赖于人类专业知识,或通过其他大型语言模型(LLM)的提示翻译来实现。

为了进一步完善提示开发,基于历史最佳提示的 提示优化 正成为市场的新趋势。关于这一领域的更多细节,可参考博客文章“自动提示工程:权威的实践指南”。

在使用生成式人工智能时,拥有量身定制的评估数据集至关重要,因为通用排行榜可能会产生误导。虽然排行榜通常基于一般基准对模型进行排名,但这些排名往往无法反映特定用例和业务数据中的实际性能。通过基于自定义数据集进行评估(这些数据集通常源于提示目录并与目标应用相关),可以更可靠地了解模型的真实功能,并确保所选模型能够有效泛化以实现预期目标。这种数据驱动的方法为 GenAI 解决方案的自信部署奠定了基础,并为消费者提供了真正的价值。

评估生成式人工智能模型性能需要仔细选择适当的指标,而这一过程会受到多个因素的影响。其中一个关键因素是标记数据的可用性,例如问题-答案对或文档-摘要对。然而,这类标记数据通常是稀缺的,尤其是在生成式人工智能项目的早期阶段。

假设标记数据可用,指标的选择会在很大程度上取决于具体任务。例如:

  • 在具有单一确定答案的问答场景中,传统的机器学习指标(如准确率、召回率和F1分数)可能较为有效。
  • 在生成式人工智能更常见的任务中(例如文本生成、图像生成),输出可能与标记数据相似但不完全一致,这时需要特定任务的指标。

以下是一些常见的特定任务指标:

  • 相似度度量:余弦相似度、ROUGE(用于文本摘要)、BLEU(用于机器翻译)等,评估生成输出与参考数据的相似程度。
  • 事实准确性:像 HELM 这样的指标用于评估生成文本的事实基础是否准确。
  • 安全性与偏见检测:Toxigen 用于衡量生成内容的毒性,而其他指标则检测生成文本中的潜在偏见或刻板印象。

语义健壮性(如通过单词错误率衡量)确保生成输出的连贯性和意义。

当标记数据不可用时,可以采取以下两种主要方法:

  • 人工评估(Human-in-the-Loop,HIL):人工评估人员会审查模型的输入与输出,依据预定义指导提供分数或定性反馈。这种方法虽然准确,但资源消耗大,成本较高。
  • LLM 作为法官:使用 LLM 作为评估员提供了一种更快速且可扩展的替代方案。尽管其精度可能不如人工评估,但对于精度要求不高的应用,这种方法足够有效。

在企业环境中,评估过程通常会随着时间推移而不断发展:

  • 初期依赖高精度的 HIL。
  • 随着标记数据集的积累,逐渐过渡到使用 LLM 进行部分自动化评估。
  • 最终,使用特定任务的自动化评估指标,形成完整的自动化评估流程。

这种渐进式的评估方式能够确保模型在早期阶段得到严格把控,并在后期实现更高效的规模化运作。

人工智能工程师利用包含必要评估数据的提示目录,结合适当的评估指标与前三个候选基础模型(FM),来自动化大规模评估。如果有可用的标记数据,系统会为目录中的每条记录生成自动化的评估分数;如果没有标记数据,则由人工评估人员逐条手动评估。这一过程不仅为每条记录生成单独的分数,还会为每个选择的FM生成汇总结果,从而表明模型在特定数据集上的表现精度。最终,系统将评估结果存储下来,并记录每个执行步骤,以维护提示目录的沿袭和历史记录。

虽然模型的精度非常重要,但在选择适用于特定生成式人工智能(GenAI)用例的最佳基础模型(FM)时,考虑的因素远不止于准确性。还必须综合应用程序的性能需求和业务优先级,例如速度/延迟和成本(如每次交互成本、托管费用等)。例如,为低延迟聊天机器人选择一个体积大且运行缓慢的模型,或者在预算有限的情况下选择一个成本高昂的模型,都是不现实的。

因此,首先我们设置优先级来优化三个类别中的两个,例如优先级为0的成本和优先级为1的精度,而我们可以忽略速度。然后,我们可以选择性能良好(并不总是最好的)但成本最低的模型。此过程确保所选模型在满足业务需求的同时提供准确的解决方案。

本文较长,分为三部分发布,此为中篇。

感谢阅读!你还可以订阅我们的YouTube频道,观看大量大数据行业相关公开课:https://www.youtube.com/channel/UCa8NLpvi70mHVsW4J_x9OeQ;在LinkedIn上关注我们,扩展你的人际网络!https://www.linkedin.com/company/dataapplab/

原文作者:Dr Sokratis Kartakis
翻译作者:过儿
美工编辑:过儿
校对审稿:Jason
原文链接:https://medium.com/@sokratis.kartakis/genaiops-operationalize-generative-ai-a-practical-guide-d5bedaa59d78