跳过主要内容

使用Metaflow进行开发

每个项目都是一次旅程。旅程的每个阶段都会呈现不同的挑战和要求。幸运的是,Metaflow 允许你轻松开始实验,而无需担心所有细节。请放心,当你的项目在规模和影响力上增长时,Metaflow 会相应地帮助你的代码成长。

一个典型的项目经历三个主要阶段,下面对此进行了说明。 本节重点介绍第一阶段 - 本地开发。如果您对接下来的两个阶段感兴趣,可以查看可扩展的流生产部署

在个人工作站上开发

作为数据科学家或工程师,您主要的生产力工具是您的个人工作站,如笔记本电脑或云工作站。个人电脑的一个好处是,它们允许您快速迭代和自由实验,而无需担心会意外干扰同事的工作。

Metaflow 将本地开发视为首要关注点。您可以像处理其他 Python 项目或笔记本一样在本地开发和测试 Metaflow 代码。以下是在项目早期阶段常常发生的事情:

  1. 许多数据科学家都熟悉在开放式探索和快速绘制解决方案方面表现出色的笔记本。当使用Metaflow进行开发时,使用笔记本进行分析是完全可以的(尽管不是必需的)。您可以在笔记本中执行流程,并使用Metaflow Client API来检查结果。

  2. 一旦你对项目的第一个版本有了粗略的想法,将其结构化为工作流,或称为Metaflow中的flows,是很有用的。Metaflow使这变得简单:你可以将笔记本中最佳部分复制粘贴为Metaflow流的步骤。有关为什么这是一个好主意以及如何在实践中创建流的详细信息,请参见创建流

  3. 流程是动态的活实体,您应该能够在本地执行并逐步改进(这就是resume 的用处!)。工作流成为您应用程序的支柱 - 特别是在帮助数据通过工件流动方面 - 这使得项目后期的许多功能得以实现。

随着你继续开发流程,你可以通过内置可视化增强它们的可观察性,并通过使它们易于配置来提高它们的多功能性。

你将学习什么

让我们继续学习如何创建和测试Metaflow流程。此阶段涵盖五个核心主题:

  1. 创建流程
  2. 检查流程结果
  3. 以编程方式管理流程
  4. 可视化结果
  5. 调试流程
  6. 配置流程

这些主题可以在您的工作站上本地运行,无需任何额外的基础设施,因此很容易入门。