你是否听说过 MLOps 或者 LLMOps 呢?

相信你对 DevOps 已经非常熟悉,但你是否听说过 MLOps 或者 LLMOps 呢?

MLOps 本质上仍然是 DevOps,只是现在关注的是与 AI 和大语言模型相关的产品。

首先回顾一下 DevOps 的概念。DevOps 是一种将开发(Development)和运维(Operations)紧密协作的工作方式,使得软件构建、测试和发布变得更加快速和可靠。

DevOps 的核心不仅在于 Dev 和 Ops 这两个概念,还在于其三个重要原则:

  1. 自动化:尽可能减少人工干预,降低交付成本,实现整个开发流程的自动化,包括线上部署、监控和报警。

  2. 信息透明和可衡量:确保整个开发过程中的数据以及产品运维的透明度,并使其可量化。例如,一个功能从需求到上线需要多长时间?故障回滚需要多长时间?当前 API 的性能如何,错误率如何,用户数量如何?

  3. 积极的跨职能协作文化:Dev 和 Ops 之间没有部门壁垒,甚至分工的界限也不必过于明确。他们需要紧密协作,解决问题,总结教训,不推诿责任,鼓励创新。 而在 MLOps/LLMOps 时代,与 Ops 协作的不仅有 Dev,还有 ML 工程师!

MLOps 时代所需的知识也更为丰富:

  • LLM 相关的专业知识,如 Transformer、Embedding、Fine-tuning、LoRa 等。
  • ML 所需的工具,如 PyTorch、Jupyter Notebook 等。
  • 硬件方面,除了 CPU 和内存外,还需考虑显卡 GPU,以及如何充分发挥多张显卡的并行运算能力。
  • 以及许多其他相关知识。

在 DevOps 时代,项目追求快速发布和迭代。即使是 Windows 和 Chrome 这样的产品,也会每隔几周发布一次更新。然而,在 MLOps 时代,大型模型相关产品的发布速度尚无法达到如此快速。以 OpenAI 为例,从 GPT-1 到 GPT-4,每个版本的开发都花费了一年以上的时间。除了模型训练费时费钱外,模型调优也需要大量时间投入,以避免安全和道德伦理问题。

那么,MLOps 时代的这些变化是否意味着 DevOps 的三个核心原则已过时呢?

我认为这三个核心原则并未过时,只是具体实施方式发生了一些变化。

  1. 自动化:在 MLOps 领域,自动化同样至关重要。以模型训练为例,要保证模型训练质量,就需要大量的高质量数据。纯粹依靠人工是无法完成这项任务的,需要大量的自动化脚本甚至 AI 参与,帮助生成和标注高质量数据。

业界普遍认为 OpenAI 的成功不仅在于技术上的突破,还在于工程上的成果。他们仅凭几百人的团队规模,便交付了 GPT-4 这样的产品,这背后离不开高度的自动化。

  1. 信息透明和可衡量:在 MLOps 时代,信息透明和可衡量仍然非常重要。例如,在模型训练和部署过程中,我们需要密切关注模型性能指标,如准确率、召回率和 F1 分数等。

此外,我们还需要关注硬件资源使用情况,如 CPU、GPU 和内存使用率。实时监控这些指标可以帮助我们识别问题,提高模型性能,降低成本。

因此,在 MLOps 时代,信息透明和可衡量仍然是关键。

  1. 积极的跨职能协作文化:MLOps 时代要求更紧密的跨职能协作。与 DevOps 相比,MLOps 涉及的角色更多样化,包括数据科学家、ML 工程师、数据工程师等。

这些角色需要共同努力,以确保模型在整个生命周期中的优秀表现。为此,团队成员需要保持开放的沟通,共同面对挑战,遵循最佳实践,并以创新和协作为核心价值观。

在 MLOps 时代,DevOps 的三个核心原则仍然具有指导意义。尽管具体实施细节有所不同,但自动化、信息透明可衡量以及积极的跨职能协作文化仍然是确保项目成功的关键要素。

宝玉老师,MLOps 就是 devops 在 Machine Learning 项目中的变种。要维护一个 ai 模型的生命周期,版本发布,测试,设计 api,上云,跟 data pipeline 对接等一些围绕模型的工程工作。 Openai 就是把所有 MLops 的工作都做好了,放给用户一个 api。 如果企业要做自己的 ai 服务,而不靠 openai 的 api,就需要在自己做 mlops 的时候全部工作了。link

—— Sverige_ Dong-seok🇸🇪(@realrenmin)

相关资源链接: