模型推理运行时-Paddle

type
status
date
slug
summary
tags
category
icon
password
网址
在此示例中,我们通过运行带有 Paddle 预测器的推理服务,使用经过训练的 paddle resnet50 模型对图像进行分类。

使用 V1 协议部署 Paddle 模型

创建推理服务

新架构旧架构
应用上述 yaml 创建推理服务
预期输出

运行预测

第一步是确定入口 IP 和端口并设置 INGRESS_HOSTINGRESS_PORT
您可以查看示例载荷 jay.json 作为测试模型的样本输入。
预期输出
 

使用开放推理协议部署模型

本地测试模型

一旦你获得了序列化的模型 model.pdmodel,我们就可以使用 KServe Paddle Server 来启动本地服务器。
注意
这一步是可选的,仅用于测试目的,你可以直接跳到通过推理服务进行部署

使用 KServe PaddleServer

前置条件

首先,要在本地使用 KServe Paddle 服务器,你需要在本地环境中安装 paddleserver 运行时包。
  1. 克隆 KServe 仓库并进入目录。
    1. 安装 paddleserver 运行时。KServe 使用 Poetry 作为依赖管理工具。请确保你已经安装了 poetry

      本地部署模型

      paddleserver 包接受两个参数。
      • -model_dir:存储模型的目录路径。
      • -model_name:部署在模型服务器中的模型名称,默认值为 model。这是可选的。
      在本地安装好 paddleserver 运行时包后,你现在就可以按如下方式启动服务器:

      通过推理服务使用 REST 端点部署模型

      最后,你将使用 KServe 在 Kubernetes 上部署训练好的模型。为此,你只需要使用 InferenceService CRD 的版本 v1beta1,并将 protocolVersion 字段设置为 v2
      Yaml
      应用 InferenceService yaml 以获取 REST 端点
      kubectl

      测试已部署的模型

      现在你可以通过发送示例请求来测试已部署的模型。
      注意,此请求需要遵循开放推理协议
      你可以使用示例负载 jay-v2.json 作为样本输入来测试模型。
      确定入口 IP 和端口并设置 INGRESS_HOSTINGRESS_PORT。现在,你可以使用 curl 发送推理请求:
      预期输出
       

      通过推理服务部署带 GRPC 端点的模型

      使用以下 yaml 创建推理服务资源并暴露 gRPC 端口。
      注意
      目前,KServe 仅支持暴露 HTTP 或 gRPC 端口之一。默认情况下会暴露 HTTP 端口。
      无服务器原生部署
      应用 InferenceService yaml 以获取 gRPC 端点
      kubectl

      使用 grpcurl 测试已部署的模型

      当 gRPC InferenceService 准备就绪后,可以使用 grpcurlInferenceService 发送 gRPC 请求。
      确定入口 IP 和端口并设置 INGRESS_HOSTINGRESS_PORT。现在,您可以使用 curl 发送推理请求。gRPC API 遵循 KServe 预测 V2 协议 / 开放推理协议。例如,可以使用 ServerReady API 检查服务器是否就绪:
      预期输出
      您可以使用示例负载 jay-v2-grpc.json 作为测试模型的样本输入。请注意,输入格式与之前的 REST 端点示例不同。
      ModelInfer API 采用遵循 grpc_predict_v2.proto 文件中定义的 ModelInferRequest 架构的输入。
      预期输出
      上一篇
      模型推理运行时 - Light GBM
      下一篇
      模型推理运行时-MLFlow
      Loading...
      文章列表
      Kserve中文文档
      快速开始
      管理指南
      用户指南
      开发指南
      机器学习概念
      大模型周报