OpenShift AI - 运行欺诈检测模型和流程

《OpenShift / RHEL / DevSecOps 汇总目录》
说明:本文已经在 OpenShift 4.14 + RHODS 2.50 的环境中验证

文章目录

  • 准备运行环境
    • 安装 OpenShift AI 环境
    • 安装 Minio 对象存储软件
    • 创建 Data Science Project
    • 创建 Data connection
    • 创建 Workbench
    • 配置 Model server
    • 创建 Pipeline server
  • 运行应用
    • 运行欺诈检测应用
    • 配置和运行 Pipeline
      • 运行 Workbench Pipeline
      • 运行 Python Pipeline
  • 参考

准备运行环境

安装 OpenShift AI 环境

先根据《OpenShift AI - 部署 OpenShift AI 环境,运行 AI/ML 应用(视频)》一文完成 OpenShift AI 环境的安装。
注意:本应用无需 GPU 即可运行。

安装 Minio 对象存储软件

根据《OpenShift 4 - 管理和使用 OpenShift AI 运行环境》一文安装 MinIO。

创建 Data Science Project

在 OpenShift 控制台的菜单中选择 Red Hat OpenShift AI,然后在 OpenShift AI 控制台中创建名为 Fraud Detection 的 Data Science Project。

创建 Data connection

在项目中按以下配置创建两个 Data connection。

Name My Storage Pipeline Artifacts
Access key minio minio
Secret key minio123 minio123
Endpoint http://minio-service.minio.svc.cluster.local:9000 http://minio-service.minio.svc.cluster.local:9000
Region no no
Bucket my-storage pipeline-artifacts

创建 Workbench

在项目中按以下配置创建一个 Workbench。

Name Fraud Detection
Image selection TensorFlow
Version selection 2023.2
Container size Small
Create new persistent storage -> Name Fraud Detection
Use existing data connection -> Data connection My Storage

配置 Model server

  1. 在项目中按以下配置创建一个 Model server。
    OpenShift AI - 运行欺诈检测模型和流程_第1张图片
  2. 点击创建好的 Model Server 的 Deploy model 按钮,然后按以下配置部署模型。
    OpenShift AI - 运行欺诈检测模型和流程_第2张图片
  3. 最后可以查看部署的模型对应的内部服务地址。
    OpenShift AI - 运行欺诈检测模型和流程_第3张图片

创建 Pipeline server

  1. 确认已经在 OpenShift 上安装了 OpenShift Pipelines Operator。
  2. 在项目中按以下配置创建一个 Pipeline server。
    OpenShift AI - 运行欺诈检测模型和流程_第4张图片

运行应用

运行欺诈检测应用

  1. 从 Workbench 打开 Jupyter 的控制台。
  2. 将 https://github.com/rh-aiservices-bu/fraud-detection.git 克隆到本地。
  3. 运行编号为 1-5 的 ipynb 文件。其中在运行 2_save_model.ipynb 后,可以在对象存储中看到生成的模型。
    OpenShift AI - 运行欺诈检测模型和流程_第5张图片

配置和运行 Pipeline

运行 Workbench Pipeline

  1. 打开 6 Train Save.pipeline 文件,其中包含 2 个节点。
  2. 在 Pipeline Properties 中将 Generic Node Defaults 的 Runtime Image 设为 Tensorflow with Cuda and Python 3.9 (UBI 9)。
  3. 选中 1_experiment_train 节点,然后将 Node Properties 中的 File Dependencies 设为 data/card_transdata.csv 和 Include Subdirectories。
  4. 分别选中 2 个节点,然后将 Node Properties 中的 Output Files 设为 models/fraud/model.onnx。
  5. 选中 2_save_model 节点,然后按下表添加 5 个 Kubernetes secrets。
    | Environment Variable | Secret Name | Secret Key |
    |–|–|–|
    | AWS_ACCESS_KEY_ID | aws-connection-my-storage | AWS_ACCESS_KEY_ID |
    | AWS_SECRET_ACCESS_KEY | aws-connection-my-storage | AWS_SECRET_ACCESS_KEY |
    | AWS_S3_ENDPOINT | aws-connection-my-storage | AWS_S3_ENDPOINT |
    | AWS_DEFAULT_REGION | aws-connection-my-storage | AWS_DEFAULT_REGION |
    | AWS_S3_BUCKET | aws-connection-my-storage | AWS_S3_BUCKET |
  6. 运行 6 Train Save.pipeline,然后在弹出窗口点击 OK。
    OpenShift AI - 运行欺诈检测模型和流程_第6张图片
  7. 可以在 Data Science Pipelines 的 Runs 中查看到 Pipeline 实例的执行情况。
    OpenShift AI - 运行欺诈检测模型和流程_第7张图片

运行 Python Pipeline

  1. 将 7_get_data_train_upload.yaml 文件下载到本地。
    OpenShift AI - 运行欺诈检测模型和流程_第8张图片
  2. 在 OpenShift AI 控制台的 Fraud Detection 项目中通过 Import pipeline 功能按下图导入 7_get_data_train_upload.yaml 文件。
    OpenShift AI - 运行欺诈检测模型和流程_第9张图片
  3. 在 OpenShift AI 控制台的 Data Science Pipelines - > Pipelines 中的 Python pipeline 点击 Create run,然后按下图创建一个运行实例。
    OpenShift AI - 运行欺诈检测模型和流程_第10张图片
  4. 最后查看 Run 1 的运行情况。
    OpenShift AI - 运行欺诈检测模型和流程_第11张图片

参考

https://rh-aiservices-bu.github.io/fraud-detection/
https://access.redhat.com/documentation/en-us/red_hat_openshift_ai_self-managed/2.5/html/openshift_ai_tutorial_-_fraud_detection_example
https://rh-aiservices-bu.github.io/rhoai-rh1-testdrive/modules/llm/download-save-llm.html

你可能感兴趣的:(openshift,人工智能,AI,jupyter,云原生,kubernetes)