《OpenShift / RHEL / DevSecOps 汇总目录》
说明:本文已经在 OpenShift 4.18 + OpenShift AI 2.19 的环境中验证
文章目录
- 启用模型注册管理功能
- 安装管理数据库
- 启用模型注册功能
- 注册模型
- 部署模型
- 归档模型
- 归档模型和模型版本
- 恢复归档模型
- 模型注册表访问权限管理
- 参考
启用模型注册管理功能
安装管理数据库
可以使用 MySQL 或 MariaDB 做为 OpenShift AI 模型管理的数据库。
- 创建项目
$ oc new-project mysql
- 在 OpenShift 的
开发者
视图中添加
菜单,然后在开发者目录
中选择Databases
,最后点击下图的MariaDB
。
- 在右划页面中点击
实例化模板
按钮,然后在Instantiate Template
页面中根据以下配置创建环境:
Database Service Name: modelregistry
MariaDB Connection Username:modelregistry
MariaDB Connection Password:password
MariaDB root Password:password
MariaDB Database Name:modelregistry
Volume Capacity:5GB
启用模型注册功能
- 编辑 OpenShift AI Operator 中的 DataScienceCluster 对象,将 modelregistry.managementState 改为 Managed。
modelregistry:managementState: ManagedregistriesNamespace: rhoai-model-registries
- 查看 redhat-ods-applications 项目的拓扑试图,确认会新出现一个名为 default-modelregistry 的 ModelRegistry 对象。该对象是一个 Controller,它会在 rhoai-model-registries 项目中管理实际的模型注册表运行环境。
$ oc get pod -n rhoai-model-registries
NAME READY STATUS RESTARTS AGE
modelregistry-75d8f6bbdb-27n8f 3/3 Running 0 28h
- 在配置生效后可以在 OpenShift AI 控制台中看到新的 Settings -> Model registry settings 菜单。
- 进入 Settings -> Model registry settings 菜单,然后点击 Create model registry 按钮,再根据以下配置添加一个 Model registry。
Name: modelregistry
Host: modelregistry.mysql.svc.cluster.local
Port: 3306
Username: modelregistry
Password: password
Database: modelregistry - 完成后可以看到 Model registry 的状态,并且在 Models 下出现新的 Model registry 菜单。
注册模型
在注册一个模型前先要把该模型的相关文件下载到 OpenShift 能够访问的 S3 对象存储中。本节点已经根据《OpenShift AI - 在 OpenShift 和 OpenShift AI 上运行 LLM》一文将 huggingface 的 mistralai/Mistral-7B-Instruct-v0.2 模型传到 MinIO 对象存储中了。
- 进入 OpenShift AI 控制台的 Models -> Model registry 菜单。
- 点击 Registry model 按钮,然后根据以下配置注册一个模型。
Model name: Mistral-7B-Instruct
Version name: v0.2
Object storage
Endpoint: http://minio-service.minio.svc.cluster.local:9000
Bucket: models
Region: none
Path: models/Mistral-7B-Instruct-v0.2 - 完成后可查看已注册的模型以及包含的版本。
部署模型
- 进入 Data science projects 菜单,然后新建一个名为 my-mistral-7 的项目。
- 为了能够在项目中部署运行模型,需要先确定使用的模型运行模式。切换到 my-mistral-7 项目的 Models 页面,然后点击下图的 Select single-model 按钮。
- 返回到 Model registry 菜单,进入 modelregistry 的 Mistral-7B-Instruct 模型,然后在版本为 v0.2 一行右侧的下拉菜单中选中 “Deploy”。
- 在 Deploy model 对话框中,最后点击 Deploy。
- 在部署好模型后,可以在该版本的模型中看到关联的部署情况。注意:该列表只显示通过 Model registry 进行部署的情况。
归档模型
被归档的模型或模型版本缺省时不能在 Model registry 中显示出来的,而只能在归档中显示。另外,用户也无法部署一个已经归档的模型。
归档模型和模型版本
- 通过 Archive model 下拉菜单可以对整个模型进行归档。
- 通过 Archive model version 下拉菜单可以对一个模型的某个版本进行归档。
恢复归档模型
- 通过 View archived models 或者 View archived versions 菜单可以显示被归档的模型或模型版本。
- 在选择 Restore model 或 Restore model version 菜单后可将归档的模型或模型版本重新恢复到正常状态。
模型注册表访问权限管理
在 OpenShift AI 控制台中,一个模型注册表需要管理员授权后才能被普通用户访问到。
- 用一个普通用户登录 OpenShift AI 控制台,确认缺省在 Model Registry 中看不到已有的模型注册表。
- 用管理员进入 OpenShift AI 控制台的 Model registry settings,然后进入一个 Model registry,再将普通用户添加到 Users 中。
- 确认普通用户可以在 Model Registry 中看到并使用被授权的模型注册表了。
参考
https://docs.redhat.com/en/documentation/red_hat_openshift_ai_self-managed/2.19/html-single/managing_model_registries/index#overview-of-model-registries_managing-model-registries