AI/ML 管道入门

Pydoc Pydoc




Javadoc Javadoc

作为机器学习从业人员,您的工作效率和成功往往取决于您高效利用大量数据的能力,这种能力必须根据您的资源、需求和预算进行定制。无论是启动下一个 AI/ML 项目还是扩展现有项目,都应考虑将 Apache Beam 添加到您的项目中。

使用 Beam ML

我想使用 Beam ML 来进行

预测和推理

Beam 提供了不同的方法来将推理作为您管道的一部分实现。您可以在管道中直接运行您的 ML 模型,并将其应用于大规模数据集,无论是批处理管道还是流式管道。

RunInference

RunInfernce API 可用于 Beam Python SDK 2.40.0 及更高版本。您可以将 Apache Beam 与 RunInference API 一起使用,使用机器学习 (ML) 模型来进行批处理和流式管道的本地和远程推理。从 Apache Beam 2.40.0 开始,支持 PyTorch 和 Scikit-learn 框架。Tensorflow 模型通过 tfx-bsl 支持。有关使用 RunInference 的更多详细信息,请参阅 关于 Beam ML

RunInference API 可用于 Beam Java SDK 2.41.0 及更高版本,通过 Apache Beam 的 多语言管道框架。有关 Java 包装转换的信息,请参阅 RunInference.java。要试用它,请参阅 Java Sklearn Mnist 分类示例

您可以使用 RunInference API 创建多种类型的转换:API 从模型处理程序中获取多种类型的设置参数,参数类型决定模型的实现。

任务示例
我想使用 RunInference 转换修改 Python 管道以使用 ML 模型
我想使用 RunInference 与 PyTorch 一起使用使用 RunInference 与 PyTorch 一起使用
我想使用 RunInference 与 Sklearn 一起使用使用 RunInference 与 Sklearn 一起使用
我想使用预训练模型 (PyTorch、Scikit-learn 或 TensorFlow)使用预训练模型
我想在生产中更新我的模型使用 WatchFilePattern 在 RunInference 中自动更新 ML 模型

预测和推理示例

任务示例
我想使用多个模型构建管道多模型管道
我想使用 TensorRT 构建自定义模型处理程序使用 TensorRT 与 RunInference 一起使用
我想使用 LLM 推理大型语言模型推理
我想构建一个多语言推理管道从 Java SDK 使用 RunInference

数据处理

您可以将 Apache Beam 用于数据验证和预处理,方法是设置数据管道,这些管道转换您的数据并输出从数据计算得出的指标。Beam 有一套丰富的 I/O 连接器 用于导入和写入数据,这使您可以将它与现有的文件系统、数据库或消息队列集成。

任务示例
我想转换我的数据以进行预处理使用 MLTransform 对数据进行预处理
我想探索我的数据数据探索工作流和示例
我想丰富我的数据使用 Enrichment 转换进行数据丰富

工作流编排

为了在整个项目中自动执行和跟踪 AI/ML 工作流,您可以使用编排器,例如 Kubeflow 管道 (KFP) 或 TensorFlow Extended (TFX)。这些编排器自动执行您的不同构建块并处理它们之间的转换。

任务示例
我想使用 ML-OPS 工作流编排器工作流编排
我想将 Beam 与 TensorFlow Extended (TFX) 一起使用Tensorflow Extended (TFX)
我想将 Beam 与 Kubeflow 一起使用Kubeflow 管道 (KFP)

当您将 Apache Beam 作为项目中的构建块之一使用时,这些编排器能够启动您的 Apache Beam 作业,并跟踪管道的输入和输出。这些任务在将您的 AI/ML 解决方案投入生产时至关重要,因为它们使您能够随时间处理模型和数据,并提高结果的质量和可重复性。

模型训练

任务示例
我想使用每个实体训练每个实体训练
我想对文本进行聚类在线聚类示例
我想对模型性能进行基准测试ML 模型评估

用例

任务示例
我想构建一个异常检测管道异常检测示例

参考