模型推理运行时-PMML
type
status
date
slug
summary
tags
category
icon
password
网址
PMML(预测模型标记语言)是一种用于描述数据挖掘和统计模型的XML格式,包括模型输入、用于数据挖掘准备的数据转换,以及定义模型本身的参数。在这个示例中,我们将展示如何在
InferenceService
上部署PMML格式的模型。使用V1协议部署PMML模型
创建推理服务
新架构旧架构
使用上述yaml创建推理服务
预期输出
警告
pmmlserver
基于Py4J,且不支持多进程模式,因此我们无法设置spec.predictor.containerConcurrency
。如果您想要扩展PMMLServer以提高预测性能,您应该将推理服务的resources.limits.cpu
设置为1并扩展副本数量。运行预测
您可以在下面看到示例负载。使用示例输入创建一个名为
iris-input.json
的文件。使用开放推理协议部署模型
本地测试模型
一旦您获得了序列化的
model.pmml
,我们就可以使用KServe Pmml Server来启动本地服务器。使用KServe PMMLServer
前提条件
首先,要在本地使用KServe pmml服务器,您需要在本地环境中安装
pmmlserver
运行时包。- 安装OpenJdk-11。
- 克隆KServe仓库并导航到目录。
本地部署模型
pmmlserver
包接受两个参数。-model_dir
:存储模型的模型目录路径。
-model_name
:在模型服务器中部署的模型名称,默认值为model
。这是可选的。
在本地安装
pmmlserver
运行时包后,您现在应该可以启动我们的服务器了:通过推理服务使用REST端点部署模型
最后,您将使用KServe将训练好的模型部署到Kubernetes上。为此,您只需要使用
InferenceService
CRD的版本v1beta1
,并将protocolVersion
字段设置为v2
。测试已部署的模型
您现在可以通过发送示例请求来测试您部署的模型。
请注意,此请求需要遵循开放推理协议。您可以在下面看到示例负载。使用示例输入创建一个名为
iris-input-v2.json
的文件。通过推理服务使用GRPC端点部署模型
使用以下yaml创建推理服务资源并暴露gRPC端口。
应用推理服务yaml以获取gRPC端点
使用grpcurl测试已部署的模型
确定入口IP和端口并设置
INGRESS_HOST
和INGRESS_PORT
。现在,您可以使用curl
发送推理请求。gRPC API遵循KServe 预测V2协议/开放推理协议。例如,可以使用ServerReady
API检查服务器是否就绪:您可以通过发送带有以下负载的示例请求来测试已部署的模型。请注意,输入格式与之前的
REST端点
示例不同。在名为iris-input-v2-grpc.json
的文件中准备推理输入。ModelInfer
API采用遵循grpc_predict_v2.proto
文件中定义的ModelInferRequest
架构的输入。上一篇
模型推理运行时-XGBoost
下一篇
模型推理运行时-SparkMLlib
Loading...