暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

基于 prompt flow 的 LLMOps:加速 LLM 应用程序的生产化进程

Azure云科技 2023-12-06
838


Azure Machine Learning prompt flow 正式上线,这是 Azure AI 进一步赋能工程师与数据科学家构建高质量生成式 AI 应用的标志。


Prompt flow 原先是 Azure 机器学习的一项功能,旨在简化 prompt 工程流程。后来我们在预览阶段根据客户反馈将其充分改进,面向企业进行了调整,将评估功能纳入开发工具集,规范资产管理与代码先行体验,以便充分利用其现有的应用程序 CICD 路径。经过 prompt 调整、评估、测试、编排,加上用于自动化的 LLMOps,prompt flow 显著加速了从开发到生产的过程,成为 LLM 应用程序开发和部署的可信平台。


在预览版中,我们深入探讨了 prompt flow 的核心功能,这些功能简化了 prompt 迭代流程,提供了 AI 应用程序从构思到微调再到部署的结构化工作流程。Prompt flow 的本质始终不变——为开发者提供一个坚实的基础,面向特定业务场景发挥 LLM 的所有潜力


随着 prompt flow 正式发布,我们进一步扩展了旨在通过 LLMOps 操作 LLM 应用程序的增强功能,提升企业就绪度,并培养一个开放、协作的生态系统。

 prompt flow 的重点发布


构建大型语言模型(LLM)应用的过程,显著地受益于一个强大的开发环境。


Prompt flow 引领了一种代码先行方法,将流程资产视为文件,这种方式促进了通过任何源代码管理工具进行版本控制和协作。这个基础至关重要,因为它使得我们能够无缝地融入到 LLMOps 领域,并与 DevOps 原则相契合,简化了从开发到部署的整个流程。LLMOps 的本质在于自动化、持续监控、评估,并在开发、数据科学和运维团队之间建立协作环境。这种结构化的方法显著缩短了从开发到部署的时间,同时确保 LLM 应用程序的质量和可靠性。


自9 月份开源的 prompt flow SDK 和 CLI 现已经在正式版本中迎来的新的里程碑,标志着其v1.0版本具备了更强的稳定性和向后兼容性。这些工具在以下方面发挥了重要作用:


01

版本控制

通过代码仓库,管理你的 flow 资产(如提示、代码、配置和环境)的多个版本,具有跟踪更改和在必要时回滚到先前版本的能力,提升团队协作氛围。


02

打包和部署

利用 SDK/CLI 对 flow 进行打包和构建,为 Azure 上或本地的无缝部署做好准备。


03

工作流自动化

利用 SDK/CLI 实现多方面自动化,如连接设置、prompt 调整、flow 评估、测试和 CICD,从而显著节省时间和工作量。


 用 LLMOps prompt flow 自动构建 LLM 应用


基于 prompt flow SDK/CLI 的 LLMOps 解决方案加速器模板已经完成,可以进一步加速 LLM 应用程序开发过程。模板提供了一个预定义且可定制的工作流蓝图,嵌入了最佳实践,使开发者能够迅速启动 LLM 应用程序项目。该模板包括:


🔵 预配置工作流:提供了预配置的工作流(Azure DevOps 流水线或 GitHub 操作),用于提示工程、评估和部署,大大减少设置时间。

🔵  定制:可根据您的特定要求、组织目标和工作流偏好定制模板。

🔵 无缝集成:该模板与 prompt flow SDK/CLI 完美集成,为 LLM 应用的高效开发与部署提供了全面的解决方案。


要在组织生态系统中无缝集成并运行 LLM 应用程序,企业就绪性至关重要,包括安全性、合规性、可扩展性和可管理性。


01

安全性

作为 Azure 机器学习的核心组件,prompt flow 支持全面的企业安全性和治理措施,包括访问控制、虚拟网络(VNet)和数据加密。


⇲ 请查阅 https://learn.microsoft.com/en-us/azure/machine-learning/concept-enterprise-security


02

可管理性

为管理员和运维团队提供了便于管理、维护流程开发部署环境的工具。


03

可扩展性

Prompt flow 提供了工具和基础设施,以满足企业不断发展的需求,从团队协作用于流程开发、评估和实验,到由 Azure 机器学习支持的大规模部署的 Flow endpoint。


这些功能创造了一个稳固的环境,极大地提升了 LLM 应用程序开发、测试、部署的信任度与信心。



构建高质量的 LLM 应用程序需要一个完善的评估策略,prompt flow 是帮助你简化这一流程的基石。Prompt flow 如何与关键评估指标对齐以确保开发出卓越的 LLM 应用:


评估数据管理:准备、生成、高效管理数据对提供有效的评估数据是至关重要的。

评估指标:采用一系列指标,如实用性、诚实性、无害性、性能和成本,来衡量 LLM 应用的各个方面。

评估方法和可视化:通过采用多样化的评估方法和可视化技术,可以更容易比较和分析评估过程中得到的结果。 

评估过程:参与开发过程中的评估、部署前(CI)或部署后(CE)的评估,以确保 LLM 应用程序在整个生命周期内的有益性和稳健性。

用户反馈循环:整合用户反馈以进行持续改进。

LLMOps 自动化:通过自动化简化评估流程,以提高效率和准确性。


Prompt flow 简化了评估过程,并与不断演进的评估成熟度模型保持一致,该模型源自广泛的客户参与和反馈。以下是 prompt flow 促进提升评估体验、构建高质量 LLM 应用的关键方面: 


预构建的评估流程:通过使用预配置的评估流程和指标,快速启动评估过程。 

可定制的评估流程:根据应用程序的特定需求定制评估流程,确保 LLM 应用符合所期望的质量、安全和成本标准。 

评估数据和实验管理:高效地管理评估数据和实验过程,保持评估方法的有序进行。 

多次评估运行比较:比较不同的评估运行,并深入分析单个实例,以确保 LLM 应用的进展和质量,并促进持续改进。 


 对比分析 flow 评估结果


Semantic Kernel——一种开源的软件开发工具包(SDK),实现了 AI 模型和插件的编排,为复杂的、知识驱动的 LLM 应用铺平了道路。其与 prompt flow 的集成将强大的基础设施与智能能力融为一体,使开发者能够轻松评估和部署规划器和插件,同时将已部署的 flow endpoint 作为插件无缝整合到 Semantic Kernel 中,实现高级编排。


01

自动评估和部署


利用 prompt flow 自动测试、评估 Semantic Kernel 构建的规划器和插件。创建新流程,运行批量测试,并定量地衡量规划器和插件的准确性。Prompt flow 还可以促进提示工程,以提高规划器质量,从而确保它们在复杂性增加的同时仍能按预期运行。


02

用于高级编排的端点部署


使用 prompt flow 开发、评估和部署流程,并将这些已部署的 flow endpoint 无缝整合到 Semantic Kernel 中作为插件。这样一来,充分利用 prompt flow 强大的评估和部署能力以及 Semantic Kernel 的编排能力,构建具有高级编排作用的 LLM 应用也成为可能。


用 prompt flow 评估 Semantic Kernel 智能能力


prompt flow 的可扩展设计鼓励开发者创建自定义工具来拓展其功能。定制集成丰富了工作流和数据流,而社区驱动的工具可以增强功能。Prompt flow 的设计天生具有可扩展性,开发者可以为特定用例创建自定义工具。这些由社区开发的工具遵循工具包创建与使用指南,拓展了 prompt flow 的功能。尽管这些工具并非由 prompt flow 团队正式维护或支持,但它们构成了生态系统的关键部分,增强了连接性和功能。


Prompt flow 的开源特性培育了一个协作的开发环境,高度重视社区贡献。这些贡献有代码增强、新功能提议或错误修复等多种形式,共同推动了 prompt flow 的持续改进。

随着 prompt flow 的正式发布,我们为 AI 开发者开启了一个全新的可能性领域,使其得以高效而自信地构建、评估和部署 LLM 应用。通过强大的 LLMOps、企业就绪度、全面的评估测试、灵活的工具开发,以及与 Semantic Kernel 等工具的无缝集成,我们邀请开发者与社区共同探索、贡献,将 LLM 应用开发的生态系统提升到创新协作新高度。



LLM 时代 · 构建、评估和部署 LLM 应用

👇🏻 点击阅读

[1] LLMOps 时代,更简化的方式释放无限价值

[2] 了解企业级 AI 应用程序构建的完整生命周期



文章转载自Azure云科技,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论