第 5 章 实现管道


5.1. 使用数据科学项目管道自动化工作流

在本教程的前面部分中,您使用笔记本来培训和保存您的模型。另外,您可以使用 Red Hat OpenShift AI 管道自动化这些任务。管道提供了一种方式来自动执行多个笔记本和 Python 代码。通过使用管道,您可以按时间表执行长期培训作业或重新排列模型,而无需在笔记本中手动运行它们。

在本节中,您可以使用 GUI 管道编辑器创建一个简单的管道。管道使用您在前面的小节中使用的笔记本来培训模型,然后将其保存到 S3 存储中。

您完成的管道应当类似于 6 Train Save.pipeline 文件中的值。

要探索管道编辑器,请完成以下步骤以创建自己的管道。或者,您可以跳过以下步骤,并运行 6 Train Save.pipeline 文件。

5.1.1. 先决条件

  • 已配置了一个管道服务器,如 启用数据科学管道 中所述。
  • 如果您在创建工作台后配置了管道服务器,则停止并启动工作台。

5.1.2. 创建管道

  1. 打开工作台的 JupyterLab 环境。如果启动程序不可见,点 + 打开它。

    Pipeline 按钮
  2. Pipeline Editor

    Pipeline Editor 按钮

    您已创建了一个空白管道。

  3. 在运行笔记本或 Python 代码时,设置默认的运行时镜像。

    1. 在管道编辑器中,点 Open Panel

      Open Panel
    2. 选择 Pipeline Properties 选项卡。

      Pipeline Properties 选项卡
    3. Pipeline Properties 面板中,向下滚动到 Generic Node DefaultsRuntime Image使用 Cuda 和 Python 3.11 (UBI 9)将值设置为 Tensorflow

      Pipeline 运行时镜像0
  4. 选择 File Save Pipeline

5.1.3. 在管道中添加节点

在管道中添加一些步骤或节点。您的两个节点将使用 1_experiment_train.ipynb2_save_model.ipynb 笔记本。

  1. 在 file-browser 面板中,将 1_experiment_train.ipynb2_save_model.ipynb 笔记本拖到管道 canvas。

    拖放笔记本
  2. 单击 1_experiment_train.ipynb 的输出端口,并将连接行拖到 2_save_model.ipynb 的输入端口。

    连接节点
  3. 保存管道。

5.1.4. 将培训文件指定为依赖项

设置节点属性,将培训文件指定为依赖项。

注意

如果您没有设置此文件依赖项,则在运行该文件时,该文件不会包含在节点中,培训工作失败时。

  1. 单击 1_experiment_train.ipynb 节点。

    选择 Node 1
  2. Properties 面板中,点 Node Properties 选项卡。
  3. 向下滚动到 File Dependencies 部分,然后单击 Add

    添加文件依赖
  4. 将值设为 data configured.csv,其中包含要为您的模型进行培训的数据。
  5. 选择 Include Subdirectories 选项。

    设置文件依赖值
  6. 保存 管道。

5.1.5. 创建并存储 ONNX 格式的输出文件

在节点 1 中,笔记本会创建 models/fraud/1/model.onnx 文件。在节点 2 中,笔记本将该文件上传到 S3 存储桶。您必须将 model /fraud/1/model.onnx 文件设置为两个节点的输出文件。

  1. 选择节点 1。
  2. 选择 Node Properties 选项卡。
  3. 向下滚动到 Output Files 部分,然后单击 Add
  4. 将值设为 models/fraud/1/model.onnx

    设置文件依赖项值
  5. 为节点 2 重复步骤 2-4。
  6. 保存 管道。

5.1.6. 配置与 S3 存储桶的连接

在节点 2 中,笔记本将模型上传到 S3 存储桶。

您必须使用您在本教程的 Storing 数据 部分中设置的 My Storage 连接创建的 secret 来设置 S3 存储桶密钥。

您可以在管道节点中使用此 secret,而无需在管道代码中保存信息。这很重要,例如,如果要将管道保存到没有 secret 密钥 - 到源控制中。

secret 名为 aws-connection-my-storage

注意

如果您命名了 My Storage 以外的连接,可以通过将鼠标悬停在 Connections 选项卡中的帮助(?)图标获取 OpenShift AI 仪表板中的机密名称。

我的存储 Secret 名称

aws-connection-my-storage secret 包括以下字段:

  • AWS_ACCESS_KEY_ID
  • AWS_DEFAULT_REGION
  • AWS_S3_BUCKET
  • AWS_S3_ENDPOINT
  • AWS_SECRET_ACCESS_KEY

您必须为每个这些字段设置 secret 名称和密钥。

流程

  1. 删除任何预先填充的环境变量。

    1. 选择节点 2,然后选择 Node Properties 选项卡。

      Additional Properties 下,请注意预填充了一些环境变量。管道编辑器从笔记本代码中推断出您需要它们。

      由于您不想在管道中保存值,因此请删除所有这些环境变量。

    2. 为每个预先填充的环境变量点 Remove

      删除 Env Var
  2. 使用 Kubernetes secret 添加 S3 存储桶和密钥。

    1. Kubernetes Secrets 下,单击 Add

      添加 Kubernetes Secret
    2. 输入以下值,然后单击 Add

      • 环境变量 : AWS_ACCESS_KEY_ID

        • Secret Name:aws-connection-my-storage
        • Secret Key:AWS_ACCESS_KEY_ID

          Secret Form
  3. 对以下每个 Kubernetes secret 重复步骤 2:

    • 环境变量 : AWS_SECRET_ACCESS_KEY

      • Secret Name:aws-connection-my-storage
      • Secret Key:AWS_SECRET_ACCESS_KEY
    • 环境变量 : AWS_S3_ENDPOINT

      • Secret Name:aws-connection-my-storage
      • Secret Key:AWS_S3_ENDPOINT
    • 环境变量 : AWS_DEFAULT_REGION

      • Secret Name:aws-connection-my-storage
      • Secret Key:AWS_DEFAULT_REGION
    • 环境变量 : AWS_S3_BUCKET

      • Secret Name:aws-connection-my-storage
      • Secret Key:AWS_S3_BUCKET
  4. 选择 File Save Pipeline As 来保存和重命名管道。例如,将它重命名为 My Train Save.pipeline

5.1.7. 运行 Pipeline

在集群中上传管道并运行它。您可以直接从管道编辑器完成此操作。您可以使用您自己的新创建的管道或提供的 6 Train Save.pipeline 文件中的管道。

流程

  1. 单击管道编辑器工具栏中的 play 按钮。

    Pipeline Run Button
  2. 为管道输入一个名称。
  3. 验证 Runtime Configuration: 已设置为 Data Science Pipeline
  4. 点击 确定

    注意

    如果您看到一条错误消息,表示"没有定义 Data Science Pipeline 的运行时配置",您可能已在管道服务器可用前创建了工作台。

    要解决这个问题,您必须验证配置了管道服务器,然后重启工作台。

    在 OpenShift AI 仪表板中按照以下步骤操作:

    1. 检查管道服务器的状态:

      1. 在 Fraud Detection 项目中,点 Pipelines 选项卡。

        • 如果您看到 Configure pipeline server 选项,请按照 启用数据科学管道 的步骤进行操作。
        • 如果您看到 Import a pipeline 选项,管道服务器会被配置。继续下一步。
    2. 重启 Fraud 检测工作台:

      1. 单击 Workbenches 选项卡。
      2. Stop,然后点 Stop workbench
      3. 工作台状态变为 Stopped 后,单击 Start
      4. 等待工作台状态变为 Running
    3. 返回到工作台的 JupyterLab 环境,再运行管道。
  5. 在 OpenShift AI 仪表板中,打开您的数据科学项目并扩展新创建的管道。

    新管道扩展
  6. 单击 View run

    查看所选管道的运行
  7. 点运行,然后查看管道运行正在进行中。

    Pipeline 运行进度

结果应该是 S3 存储桶中的 models/fraud/1/model.onnx 文件,就像 为部署准备模型 部分一样。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat, Inc.