OpenShift AI - 部署并使用 LLM 模型

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

安装 OpenShift AI 环境

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

安装 Minio 对象存储软件

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

配置 Single Model Serving 运行环境

  1. 使用默认选项安装 Red Hat OpenShift Service Mesh Operator 和 Red Hat OpenShift Serverless Opeartor。
  2. 查看 OpenShift AI Operator 的 DSC Initialization 对象,确认包含以下内容:
spec:
 applicationsNamespace: redhat-ods-applications
 monitoring:
   managementState: Managed
   namespace: redhat-ods-monitoring
 serviceMesh:
   controlPlane:
     metricsCollection: Istio
     name: data-science-smcp
     namespace: istio-system
   managementState: Managed
  1. 查看 OpenShift AI Operator 的 Data Science Cluster 对象,确认包含以下内容:
   kserve:
     managementState: Managed
     serving:
       ingressGateway:
         certificate:
           secretName: knative-serving-cert
           type: SelfSigned
       managementState: Managed
       name: knative-serving
  1. 确认在 OpenShift AI Operator 中的 “所有实例” 中出现以下 FeatureTracker。
    在这里插入图片描述
  2. 执行以下命令查看创建的 ServiceMesh 和 Serverless 对象。
$ oc get deploy -n istio-system
NAME                       READY   UP-TO-DATE   AVAILABLE   AGE
istio-egressgateway        1/1     1            1           11m
istio-ingressgateway       1/1     1            1           11m
istiod-data-science-smcp   1/1     1            1           11m 
 
$ oc get deploy -n knative-serving
NAME                    READY   UP-TO-DATE   AVAILABLE   AGE
activator               2/2     2            2           7m21s
autoscaler              2/2     2            2           7m21s
autoscaler-hpa          2/2     2            2           7m19s
controller              2/2     2            2           7m20s
domain-mapping          2/2     2            2           7m20s
domainmapping-webhook   2/2     2            2           7m20s
net-istio-controller    2/2     2            2           7m18s
net-istio-webhook       2/2     2            2           7m18s
webhook                 2/2     2            2           7m19s
 
$ oc get deployment kserve-controller-manager -n redhat-ods-applications
NAME                        READY   UP-TO-DATE   AVAILABLE   AGE
kserve-controller-manager   1/1     1            1           6m55s
  1. 在 OpenShift AI 控制台中的 Cluster setting 中确认 Single mode serving platform 被选中。
    在这里插入图片描述

创建项目和 Workbench

  1. 在 OpenShift AI 控制台中创建一个名为 llm 的 Data Science Project。

  2. 在 llm 项目中使用以下配置创建名为 llm 的 Workbench。

    Name:llm
    Image selection:TensorFlow
    Version selection:2023.2
    Container:Small
    Create new data connection
    	Name : My Storage
    	Access key : minio
    	Secret key : minio123
    	Endpoint : http://minio-service.minio.svc.cluster.local:9000
    	Region : no 
    	Bucket : my-storage
    

准备模型和配置 Model Server

  1. 进入 Workbench 对应的 Jupyter Notebook,然后克隆 https://github.com/rh-aiservices-bu/test-drive.git。
  2. 运行 /test-drive/llm/1_download_save.ipynb,完成后会自动将模型相关文件传到 Minio 中 my-storage/models/flan-t5-small 里。
    在这里插入图片描述
  3. 在 Workbench 的 Models and model servers 中进入 Single-model serving platform 的 Deploy model。
    在这里插入图片描述
  4. 在 Deploy model 弹出窗口按下图的配置部署模型。
    在这里插入图片描述
  5. 完成配置后 Workbench 将显示以下内容。将 flan-t5-small 对应的 Inference endpoint 地址复制下来。
    在这里插入图片描述

访问 LLM 模型

  1. 在 Jupyter 中打开 2_grpc_request.ipynb 文件,并将上一步复制的地址赋给 infer_endpoint 变量。
infer_endpoint = "https://flan-t5-small-llm.apps.cluster-4cc45.dynamic.redhatworkshops.io"
  1. 可以修改请求问题,然后运行2_grpc_request.ipynb 文件,即可获得由 flan-t5-small 生成的返回结果。
client.make_request("what is your name?", model_id=model_id)

在这里插入图片描述

  1. 查看 llm 项目的 “拓扑” 视图,确认已经运行起 knative Service 来响应请求。
    在这里插入图片描述

参考

https://access.redhat.com/documentation/en-us/red_hat_openshift_ai_self-managed/2.5/html/working_on_data_science_projects/serving-large-language-models_serving-large-language-models#about-the-single-model-serving-platform_serving-large-language-models
https://github.com/opendatahub-io/caikit-tgis-serving#installation
https://rh-aiservices-bu.github.io/rhoai-rh1-testdrive/modules/llm/download-save-llm.html
https://github.com/openshift-ai-examples/openshift-ai-examples/blob
https://rh-aiservices-bu.github.io/insurance-claim-processing/modules/03-01-notebook-based-llm.html

  • 16
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值