LLMOps 与MLOps
如果说 LLM 是 ML 模型的一个子集,那么 LLMOps 同样也是机器学习运维(MLOps)中适用于大语言模型的一个子集。作为一组工作流实践,MLOps 旨在简化 ML 模型的部署和维护过程。MLOps 的目标是建立一个不断发展演进的过程,以便将 ML 模型无缝融入到软件开发流程中。同样,LLMOps 也要不断地试验、迭代、部署和改进 LLM 的开发和部署生命周期。
LLMOps 和 MLOps 既有相似之处,也有不同之处。具体来说:
学习:传统的 ML 模型都是从头开始创建或训练,但 LLM 是从一个基础模型开始,然后使用新数据进行微调,以提高其完成任务的性能。
调优:对于 LLM,微调可以改进模型的性能并提高准确性,使其更加深入地理解某个特定主题的知识。而提示词调优(Prompt Tuning)可以使 LLM 更好地执行特定任务。超参数调优是另一个不同之处。在传统 ML 中,调优侧重于提高准确性。对于 LLM,调优不仅关乎准确性,还有助于减少成本和训练过程中所需的能源消耗。无论是传统 ML 模型还是 LLM,调优过程都有好处,但侧重点各不相同。最后,值得一提的是检索增强生成(RAG),这是指利用外部知识来确保 LLM 能够收集到准确和具体的事实,以生成更好的回答。
反馈:人类反馈强化学习(RLHF)是一种改进 LLM 训练的方法。人类的反馈对模型的性能至关重要。LLM 会使用人类反馈来评估准确性,而传统 ML 模型使用特定的指标来评估准确性。
性能指标:ML 模型具有明确的性能指标,但 LLM 有一套不同的评价指标,例如双语评估辅助(BLEU)和面向会议的摘要评估辅助(ROUGE),这些指标需要更为复杂的评估方法。
LLMOps 的优势
随着时间的推移,LLMOps 已逐渐成为监控和增强 LLM 性能的首选方式,它有三大突出优势:
效率:LLMOps 使得团队能够更快地开发模型,提升模型质量,并实现快速部署。通过一种更简化的管理方式,团队可以在一个促进沟通、开发和部署的平台上进行更有效的协作。
可扩展性:LLMOps 有助于可扩展性和管理,因为它能够对多个模型进行管理和监控,以实现持续集成和持续交付/部署(CI/CD)。此外,LLMOps 通过改善数据通信和响应,为用户提供了更加迅捷的体验。
风险降低:LLMOps 提高了透明度,并帮助更好地遵守企业和行业的政策。通过保护敏感信息和防止风险暴露,LLMOps 能够增强安全性并加强隐私保护。
LLMOps 用例
下方列出了 LLMOps 的几个用例。
持续集成和交付(CI/CD):CI/CD 旨在简化、加速和自动执行模型开发生命周期。通过减少获取新代码所需的人工干预,它降低了系统停机时间并加快了代码的发布速度。像 Tekton(红帽 OpenShift Pipelines 就是在它的基础上构建的)这样的工具,通过在多个平台上实现自动化部署,帮助开发人员提高了工作效率。
数据收集、标注与存储:数据收集过程从多种来源获取准确的信息。数据标注对收集的数据进行分类,而数据存储负责收集和保存与网络关联的数字化信息。
模型调优、推理、监控:模型调优可以优化模型,以执行特定领域的任务。模型推理可以基于现有知识来管理生产的内容,并基于推理的信息来执行操作。模型监控(包括人类反馈)可以收集和存储有关模型行为的数据,以了解模型如何使用真实的生产数据。
LLMOps 的阶段
LLMOps 分为几个阶段,各自都有相应的最佳实践:
探索性数据分析(EDA):通过创建数据集来评估数据,准备机器学习生命周期所需的数据。
- 数据收集:训练 LLM 的第一步,从不同来源(例如代码库和社交媒体网络)收集数据。
- 数据清理:收集到数据后,就需要对数据进行检查并为训练做好准备,包括剔除错误、纠正不一致和删除重复数据。
- 数据探索:接着是探索数据,以更好地了解数据特征,包括识别异常值和发现特定模式。
数据准备和提示词工程:使数据在团队之间可见和可共享,并为 LLM 开发提示词。
- 数据准备:以各种方式准备用于 LLM 训练的数据,包括综合和总结收集的数据。
- 提示词工程:创建用于生成文本的提示词,以帮助确保 LLM 能够生成符合预期的输出。
模型调优:使用主流的开源库(例如 Hugging Face Transformers)来调优和改进模型性能。
- 模型训练:在准备好数据后,通过使用机器学习算法来学习数据中的模式,从而训练或调优 LLM。
- 模型评估:完成训练后,需要使用未曾用于 LLM 训练的测试数据集来评估 LLM 的性能。
- 模型调优:如果 LLM 表现不佳,可以对其进行微调,包括修改 LLM 的参数来提高其性能。
模型审查和治理:在开源 MLOps 平台(例如 Kubeflow)的帮助下,来发现、共享和在不同 ML 模型之间进行协作。
- 模型审查:完成了调优后,就需要对 LLM 进行审查来确保其安全可靠,包括检查偏差和安全风险。
- 模型治理:模型治理是指在 LLM 的整个生命周期中管理 LLM 的过程,包括跟踪其性能,根据需要进行更改,以及在不再需要时将其停用。
模型推理和服务:管理生产环境中的细节,例如模型刷新频率或请求时间。
- 模型服务:LLM 经过审查并获得批准后,就可以部署到生产环境中,以便用户通过应用编程接口(API)使用 LLM。
- 模型推理:相关的应用可以查询 API 来生成文本或回答问题。这可以通过多种方式实现,例如表述性状态传递应用编程接口(REST API)或 Web 应用。
模型监控与人类反馈:创建模型和数据以监控异常或负面用户行为。
- 模型监控:完成部署后,需要对 LLM 进行监控,以确保其按预期执行,包括跟踪其性能、识别存在的问题以及根据需要进行更改。
- 人类反馈:人类用户对 LLM 生成的文本进行反馈,或者识别出 LLM 性能中的任何问题,从而提升 LLM 的性能。
什么是 LLMOps 平台?
LLMOps 平台为开发人员和团队提供了一个促进协作的环境,它涵盖数据分析、实验跟踪、提示词工程和 LLM 管理。它还可为 LLM 提供受控的模型转换、部署和监控。通过更好的库管理,这个平台能帮助降低运维成本,并在完成数据预处理、模型监控和部署等任务时减少对高技能人才的依赖。
为什么选择红帽?
作为筑基于 Kubernetes 之上的混合云应用平台,红帽® OpenShift® 可加速 AI 应用在混合云环境中的部署,包括数据中心、网络边缘乃至多云等诸多环境。
借助红帽 OpenShift,企业可以自动化并简化大量运维工作(例如将模型集成到软件开发流程、生产部署、监控、重新训练和重新部署等重复性流程),以保持预测的准确性。
红帽 OpenShift AI 是一个灵活且可扩展的 MLOps 平台,可用于构建、部署和管理 AI 应用。它使数据科学家和应用开发人员能够安全、一致、大规模地简化人工智能(AI)与应用的集成。OpenShift AI 可以为本地环境和公共云中的 AI/ML 实验和模型提供覆盖整个生命周期的支持。
通过将红帽 OpenShift AI 和红帽 OpenShift 的功能结合到企业级 AI 应用平台中,团队可以在一个利于协作的环境中协同工作,从而提高一致性、安全性和可扩展性。