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。

NameMy StoragePipeline Artifacts
Access keyminiominio
Secret keyminio123minio123
Endpointhttp://minio-service.minio.svc.cluster.local:9000http://minio-service.minio.svc.cluster.local:9000
Regionnono
Bucketmy-storagepipeline-artifacts

创建 Workbench

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

NameFraud Detection
Image selectionTensorFlow
Version selection2023.2
Container sizeSmall
Create new persistent storage -> NameFraud Detection
Use existing data connection -> Data connectionMy Storage

配置 Model server

  1. 在项目中按以下配置创建一个 Model server。
    在这里插入图片描述
  2. 点击创建好的 Model Server 的 Deploy model 按钮,然后按以下配置部署模型。
    在这里插入图片描述
  3. 最后可以查看部署的模型对应的内部服务地址。
    在这里插入图片描述

创建 Pipeline server

  1. 确认已经在 OpenShift 上安装了 OpenShift Pipelines Operator。
  2. 在项目中按以下配置创建一个 Pipeline server。
    在这里插入图片描述

运行应用

运行欺诈检测应用

  1. 从 Workbench 打开 Jupyter 的控制台。
  2. 将 https://github.com/rh-aiservices-bu/fraud-detection.git 克隆到本地。
  3. 运行编号为 1-5 的 ipynb 文件。其中在运行 2_save_model.ipynb 后,可以在对象存储中看到生成的模型。
    在这里插入图片描述

配置和运行 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。
    在这里插入图片描述
  7. 可以在 Data Science Pipelines 的 Runs 中查看到 Pipeline 实例的执行情况。
    在这里插入图片描述

运行 Python Pipeline

  1. 将 7_get_data_train_upload.yaml 文件下载到本地。
    在这里插入图片描述
  2. 在 OpenShift AI 控制台的 Fraud Detection 项目中通过 Import pipeline 功能按下图导入 7_get_data_train_upload.yaml 文件。
    在这里插入图片描述
  3. 在 OpenShift AI 控制台的 Data Science Pipelines - > Pipelines 中的 Python pipeline 点击 Create run,然后按下图创建一个运行实例。
    在这里插入图片描述
  4. 最后查看 Run 1 的运行情况。
    在这里插入图片描述

参考

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/459703.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AD9361多片同步设计方法

本文基于ZC706FMCOMMS5的平台,介绍了多片AD9361同步的方法。并将该设计移植到自行设计的ZYNQ70354片AD9361(实现8路同步收发)的电路板上。本设计采用纯逻辑的方式,仅使用了ZYNQ芯片的PL部分。 9361多芯片同步主要包括基带同步和射频同步两大块任务。其中…

【JavaScript 漫游】【011】ES5 规范中 Array 对象方法汇总

文章简介 本文为【JavaScript 漫游】专栏的第 011 篇文章,记录的内容包含了 ES5 规范中Array 对象的所有方法。 Array()Array.isArray()valueOf()、toString()push()、pop()shift()、unshift()join()concat()reverse()slice()splice()sort()map()forEach()filter(…

基于AST实现一键自动提取替换国际化文案

背景:在调研 formatjs/cli 使用(使用 formatjs/cli 进行国际化文案自动提取 )过程中,发现有以下需求formatjs/cli 无法满足: id 需要一定的语义化; defaultMessage和Id不能直接hash转换; 需要…

怎么将文件夹里的所有 js 文件按照名称跟内容拼接生成一个 md 文件?

实现 编写脚本 build/generate-md.js const fs require("fs"); const path require("path");function traverseDirectorySync(dirPath) {const files fs.readdirSync(dirPath);files.forEach((file) > {const filePath path.join(dirPath, file);…

ctfshow——命令执行

文章目录 web 29——通配符*绕过web30——调用其他命令执行函数web 31——参数逃逸web 32-web 36——配合文件包含伪协议web 37-web 39——文件包含web 40—— web 29——通配符*绕过 i不区分大小写,直接?csystem(tac fl*.php); web30——调用其他命令执行函数 调用…

携程网首页案例制作(移动端)

技术选型 方案:采用单独制作移动页面方案 技术:布局采用flex布局 body样式 通常要设置最大宽度,最小宽度,水平居中,字体设置,背景颜色以及相关初始化 body {max-width: 540px;min-width: 320px;margin…

Apollo分布式配置中心

携程框架部门研发的开源配置管理中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端 用户在配置中心对配置进行修改并发布配置中心通知Apollo客户端有配置更新Apollo客户端从配置中心拉取最新的配置、更新本地配置并通知…

Vue前端框架--Vue工程项目问题总结{脚手架 Vue-cli}

Vue脚手架部署问题总结 我所遇到的一共两大问题 只有先执行npm install之后 才能run serve 否则会报错 vue-cli-serve不是内部或者外部的命令,也不是可运行的程序或者批处理文件的错误 1. 运行npm install会报错 2. 运行npm run serve报错 nodejs官网为 https://no…

03-抓包_封包_协议_APP_小程序_PC应用_WEB应用

抓包_封包_协议_APP_小程序_PC应用_WEB应用 一、参考工具二、演示案例:2.1、WEB应用站点操作数据抓包-浏览器审查查看元素网络监听2.2、APP&小程序&PC抓包HTTP/S数据-Charles&Fiddler&Burpsuite2.3、程序进程&网络接口&其他协议抓包-WireSh…

嵌入式学习之Linux入门篇笔记——18,makefile基本语法(下)

配套视频学习链接:http://【【北京迅为】嵌入式学习之Linux入门篇】 https://www.bilibili.com/video/BV1M7411m7wT/?p4&share_sourcecopy_web&vd_sourcea0ef2c4953d33a9260910aaea45eaec8 1.wildcard 函数 格式:$(wildcard PAT…

优化 IT 支出和消除浪费的 8 种主要方法

不懈追求最佳 IT 支出对于任何组织的长期可持续发展和成功都至关重要。在这个技术快速进步的时代,您必须做出明智的决策,消除浪费,同时最大限度地提高技术投资的价值。 从进行 IT 成本分析到采用敏捷预算和技术标准化,这些策略对…

网络安全产品之认识准入控制系统

文章目录 一、什么是准入控制系统二、准入控制系统的主要功能1. 接入设备的身份认证2. 接入设备的安全性检查 三、准入控制系统的工作原理四、准入控制系统的特点五、准入控制系统的部署方式1. 网关模式2. 控制旁路模式 六、准入控制系统的应用场景七、企业如何利用准入控制系统…