写点什么

Netflix 通过新的配置功能增强了 Metaflow

作者:Claudio Masolo

  • 2025-01-24
    北京
  • 本文字数:1771 字

    阅读完需:约 6 分钟

Netflix 通过新的配置功能增强了 Metaflow

Netflix 对其 Metaflow 机器学习基础设施做出了一项重大改进:一个新的 Config(配置)对象,为 ML 工作流带来了强大的配置管理能力。这一新增功能解决了 Netflix 团队面临的一个共同挑战,他们管理着跨不同 ML 和 AI 用例的数千个独特的 Metaflow 流程。


Netflix Metaflow 是一个开源数据科学框架,旨在简化构建和管理数据密集型工作流的过程。它允许用户将工作流定义为有向图,这样就能很方便地对其可视化和迭代了。Metaflow 自动处理工作流的扩展、版本控制和部署操作,这是机器学习和数据工程项目中的核心工作。它为数据存储、参数管理和计算执行等任务提供了内置支持,既可以在本地也可以在云端执行操作。



Metaflow 基础设施栈


新的 Config 特性代表了 Netflix 配置和管理 ML 工作流方式的根本性转变。虽然 Metaflow 一直擅长提供数据访问、计算资源和工作流编排的基础设施,但团队以前缺乏统一的方式来配置流程行为,尤其是对于装饰器和部署设置而言更是如此。


Config 对象加入了 Metaflow 现有的工件(artifact)和参数(parameter)的组合,但在时间执行上有一个关键的区别。虽然工件在每个任务结束时保留,参数在运行开始时解析,但 Config 会在流程部署期间解析。这种时间差异使 Config 在设置针对部署定制的配置方面特别好用。


可以使用人性化,容易看懂的 TOML 文件指定 Config,从而轻松管理流程的各个方面:


[schedule]cron = "0 * * * *"[model]optimizer = "adam"learning_rate = 0.5[resources]cpu = 1
复制代码


Netflix 的内部工具 Metaboost 展示了该配置系统的强大能力。Metaboost 是一个用于管理 ETL 工作流、ML 管道和数据仓库表的统一界面。新的 Config 功能允许团队在保持核心流程结构的同时创建不同的实验配置。


例如,ML 从业者只需交换配置文件即可轻松创建其模型的变体,从而快速试验不同的特性、超参数或目标指标。事实证明,此功能对于 Netflix 的内容 ML 团队特别有价值,该团队负责处理数百个数据列和多个指标。


新的配置系统提供了几个优点:


  • 灵活的运行时配置:可以混合使用参数和配置来平衡固定部署和运行时的可配置性。

  • 增强的验证:自定义解析器可以验证配置,还能与 Pydantic 等流行工具集成。

  • 高级配置管理:支持 OmegaConf 和 Hydra 等配置管理器,可实现复杂的配置层次结构。

  • 动态生成配置:用户可以从外部服务检索配置或分析执行环境(例如当前 GIT 分支),以在运行期间将其作为附加上下文包含在内。


这项增强功能代表了 Metaflow 作为机器学习基础设施平台发展的重要一步。通过提供更结构化的方式来管理配置,Netflix 让团队更容易维护和扩展他们的 ML 工作流程,同时遵循各自的开发实践和业务目标。


该功能现已在 Metaflow 2.13 中提供,用户可以立即开始在他们的工作流程中实现它。


一些类似 Netflix Metaflow 的工具也能帮助数据科学家和工程师管理工作流程、编排管道以及构建可扩展的机器学习或数据驱动系统。这些工具有着略微不同的需求和优先级,但它们都旨在简化复杂的工作流程和扩展数据操作。以下是一些值得一提的例子:


  • Apache Airflow:一个广泛使用的开源工作流编排平台。它允许用户将任务及其依赖关系定义为有向无环图(DAG)。Metaflow 专注于数据科学管道,而 Airflow 则更通用,擅长管理跨不同领域的工作流。

  • Luigi(Spotify):一个旨在构建复杂管道的开源 Python 框架。与 Metaflow 一样,Luigi 能处理依赖项、工作流编排和任务管理,但它不太关注机器学习方面的特定需求。

  • Kubeflow:Kubernetes 的机器学习工具包。它专门用于管理 ML 工作流并在生产中部署模型,使其成为基于 Kubernetes 的环境的不二之选。

  • MLflow:一个管理 ML 生命周期的开源平台,包括实验跟踪、可重复性、部署和监控等能力。MLflow 对模型版本控制和部署有强大的支持,但缺乏 Metaflow 的更广泛的工作流编排功能。

  • Argo Workflows:一个 Kubernetes 原生工作流引擎,旨在在容器化基础设施上运行复杂的工作流。对于已经在使用 Kubernetes 并正在寻找轻量级解决方案的团队来说,它是理想的选择。


虽然这些工具在某些功能上有重叠,但 Metaflow 凭借其简单性、可扩展性以及对机器学习工作流程的内置支持脱颖而出,这对数据科学团队来说特别有吸引力。


原文链接:


Netflix Enhances Metaflow with New Configuration Capabilities(https://www.infoq.com/news/2025/01/netflix-metaflow-configuration/)

2025-01-24 16:009604

评论

发布
暂无评论
发现更多内容

荣耀开发者服务平台越来越AI

荣耀开发者服务平台

开发者生态 大模型时代 AI智能客服 荣耀HONOR

一文了解LCD,LED和OLED屏幕的区别

Dylan

技术 LED display LED显示屏 OLED lcd

原生鸿蒙政务行业应用开发模板上线,近200个政务服务应用已上架

最新动态

全球司库|规划与创新创景:引领业务、高效运营、战略增值

用友智能财务

金融 科技 企业数智化 司库

PHP中哪个框架最适合做API?

科普小能手

php API PHP框架 PHP开发 API 接口

🥳重磅更新!Fluent Editor 开源富文本支持 LaTeX 可编辑公式啦~

OpenTiny社区

开源 OpenTiny 富文本组件

个推SDK:人民日报、新华社等数十万App的双十一运营神器

新消费日报

在指标平台市场中,企业的避 “坑” 选择秘籍

Aloudata

大数据 数据分析 指标管理 指标平台 指标开发

解析金融数据存储难题:多元量化如何通过 TDengine 实现高并发与低延时

TDengine

tdengine 时序数据库 数据库·

技术前沿|NeurIPS 2024 中稿快讯!两方密态推理框架 Nimbus,大模型隐私推理场景的重要技术

隐语SecretFlow

企业如何落地多因素认证?

芯盾时代

身份认证 身份安全 iam 身份和访问管理

永州等保测评机构有哪些?电话多少?

行云管家

等保 等级保护 等保测评 永州

《Django 5 By Example》阅读笔记:p54-p75

codists

Python django

NocoBase 本周更新汇总:提升工作流易用性

NocoBase

开源 低代码 零代码 无代码 版本更新

vLLM×Milvus:如何高效管理GPU内存,减少大模型幻觉

Zilliz

Milvus LLM vLLM PagedAttention

数据湖系列之四 | 数据湖存储加速方案的发展和对比分析

百度Geek说

百度 数据湖 存储

淘宝京东商品属性参数接口

tbapi

淘宝商品详情接口 京东商品详情接口

Netflix 通过新的配置功能增强了 Metaflow_云计算_InfoQ精选文章