尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Openscoring客户端CLI工具完全手册:Deployer、Evaluator与CsvEvaluator实战
Openscoring客户端CLI工具完全手册Deployer、Evaluator与CsvEvaluator实战【免费下载链接】openscoringREST web service for the true real-time scoring (1 ms) of Scikit-Learn, R and Apache Spark models项目地址: https://gitcode.com/gh_mirrors/op/openscoringOpenscoring是一个用于 Scikit-Learn、R 和 Apache Spark 模型实时评分1 ms的 REST 网络服务而它的命令行客户端CLI是操作该服务的利器。本手册带你快速掌握 Openscoring 客户端的三大核心工具模型部署工具Deployer、单次预测工具Evaluator和 CSV 批量预测工具CsvEvaluator帮助新手从零完成部署模型 → 在线评分 → 批量预测的完整流程。一、认识 Openscoring 客户端Openscoring 采用标准的模型生命周期管理把训练好的模型导出为PMML文档通过 REST API 部署到服务端再对输入数据进行毫秒级实时预测。客户端源码位于openscoring-client模块核心类一览工具类作用对应 REST 操作Deployer部署 PMML 模型PUT /model/${id}Evaluator单条记录预测POST /model/${id}CsvEvaluatorCSV 批量预测POST /model/${id}/csvUndeployer下线删除模型DELETE /model/${id}DirectoryDeployer目录监听自动部署/下线组合调用所有工具都继承自 Application.java因此天然支持--help参数查看全部选项ModelApplication.java 则统一提供--model模型 URI参数和 JAX-RS 客户端逻辑。二、快速上手获取可执行客户端方式一从源码构建git clone https://gitcode.com/gh_mirrors/op/openscoring cd openscoring mvn clean install构建产物为 uber-JAR无需额外依赖即可运行openscoring-client/target/openscoring-client-executable-*.jaropenscoring-server/target/openscoring-server-executable-*.jar打包配置见 openscoring-client/pom.xml使用 maven-shade-plugin 生成可执行 JAR。启动服务端在另一个终端启动评分服务主类见 Main.javajava -jar openscoring-server-executable-*.jar默认服务地址为http://localhost:8080/openscoring。项目自带的鸢尾花决策树示例模型和测试数据都在openscoring-service/src/etc/目录下可直接使用示例模型DecisionTreeIris.pmml示例 CSV 输入input.csv示例 JSON 请求EvaluationRequest.json三、Deployer一条命令部署 PMML 模型 Deployer把本地 PMML 文件上传并部署到 Openscoring 服务端源码见 Deployer.java。java -cp openscoring-client-executable-*.jar org.openscoring.client.Deployer \ --model http://localhost:8080/openscoring/model/DecisionTreeIris \ --file DecisionTreeIris.pmml参数说明参数必填说明--model✅模型 URI决定模型 ID--file✅本地 PMML 文件路径--help-显示帮助信息两个实用细节自动识别 gzipDeployer 会读取文件头部魔术字节若发现是 gzip 压缩文件会自动附加Content-Encoding: gzip请求头因此.pmml.gz压缩文件可以直接部署传输更快。成功/失败判断服务端返回 ModelResponse只要message字段为空即表示部署成功日志中会输出Deployment succeeded。四、Evaluator单条记录实时预测 Evaluator用于单条预测模式——把一条记录的各个特征值作为参数传入返回预测结果源码见 Evaluator.java。java -cp openscoring-client-executable-*.jar org.openscoring.client.Evaluator \ --model http://localhost:8080/openscoring/model/DecisionTreeIris \ -XSepal_Length5.1 -XSepal_Width3.5 \ -XPetal_Length1.4 -XPetal_Width0.2参数说明参数说明--model模型 URI-Xkeyvalue动态参数JCommanderDynamicParameter可重复使用每个对应一个模型输入特征-Xkeyvalue会组装成 EvaluationRequest 的arguments字段发送给服务端。以鸢尾花模型为例成功时日志输出预测类别与概率Evaluation succeeded: {id: null, results: {Species: setosa, Probability_setosa: 1.0, ...}} 提示输入字段名称必须与模型 PMML 中 MiningSchema 定义的字段 ID 完全一致否则会返回 400 错误。可先用curl http://localhost:8080/openscoring/model查看已部署模型的字段清单接口定义见 ModelResource.java。五、CsvEvaluatorCSV 批量预测 当需要一次性对成百上千条数据做预测时CsvEvaluator是最佳选择。它读取本地 CSV 文件发送到服务端/csv端点再把返回的预测结果 CSV 写入输出文件源码见 CsvEvaluator.java。java -cp openscoring-client-executable-*.jar org.openscoring.client.CsvEvaluator \ --model http://localhost:8080/openscoring/model/DecisionTreeIris \ --input input.csv --output output.csv参数说明参数必填说明--model✅模型 URI客户端会自动补上/csv后缀--input✅输入 CSV 文件--output✅输出 CSV 文件--csv-delimiter-指定分隔符跳过服务端自动探测--csv-quote-指定引用字符需与分隔符同时使用几个值得了解的行为列名映射与列顺序无关输入 CSV 只要包含模型每个输入字段对应的列即可。以 input.csv 为例Id,Sepal_Length,Sepal_Width,Petal_Length,Petal_Width record-001,5.1,3.5,1.4,0.2 record-002,7,3.2,4.7,1.4 record-003,6.3,3.3,6,2.5Id 列自动透传若首列列名为Id不区分大小写且行数未变该列会原样复制到输出 CSV方便结果回溯。整体事务CSV 模式采用全部成功或全部失败的隔离级别任意一行数据不合法都会导致整批失败并返回 400。自动探测分隔符服务端会尝试探测,、;、\t三种分隔符格式特殊时可用--csv-delimiter显式指定。六、Undeployer 与 DirectoryDeployer模型下线与目录监听 ️Undeployer删除模型java -cp openscoring-client-executable-*.jar org.openscoring.client.Undeployer \ --model http://localhost:8080/openscoring/model/DecisionTreeIris实现见 Undeployer.java只需--model一个参数即可下线模型。DirectoryDeployerPMML 目录守护进程 DirectoryDeployer是运维场景的神器它会监听一个目录文件新增即自动部署、文件删除即自动下线实现模型热更新。实现见 DirectoryDeployer.java。java -cp openscoring-client-executable-*.jar org.openscoring.client.DirectoryDeployer \ --model-collection http://localhost:8080/openscoring/model \ --dir pmml参数说明参数必填说明--model-collection✅模型集合 URI即/model根路径--dir✅要监听的 PMML 文件目录工作规则启动时先扫描目录内已有文件并全部部署模型 ID 取文件名第一个点号之前的部分例如CreditRisk.pmml部署为模型CreditRisk之后通过 Java NIOWatchService持续监听文件的创建与删除事件自动调用 Deployer / Undeployer。这让你只需把新的 PMML 文件扔进目录即可完成模型上线非常适合 CI/CD 流水线。七、完整生命周期速查表 ⚡以鸢尾花决策树模型为例四条命令跑通全流程步骤命令-cp openscoring-client-executable-*.jar从略1️⃣ 部署模型java ... org.openscoring.client.Deployer --model URI --file DecisionTreeIris.pmml2️⃣ 单条预测java ... org.openscoring.client.Evaluator --model URI -XSepal_Length5.1 -XSepal_Width3.5 -XPetal_Length1.4 -XPetal_Width0.23️⃣ 批量预测java ... org.openscoring.client.CsvEvaluator --model URI --input input.csv --output output.csv4️⃣ 下线模型java ... org.openscoring.client.Undeployer --model URI其中URI形如http://localhost:8080/openscoring/model/DecisionTreeIris。八、常见问题与小贴士 ✅提示参数错误所有工具都支持--help缺失必填参数时也会自动打印用法说明见 Application.java 中的参数解析逻辑。部署报 403部署/下线操作需要admin角色默认仅本地网络地址具备远程部署可通过 NetworkSecurityContextFilter.java 相关配置调整或使用令牌认证。PMML 文件太大先 gzip 压缩为.pmml.gzDeployer 会自动处理编码头显著降低上传耗时。想确认模型输入字段直接访问GET /model/${id}响应中的schema.inputFields即为你需要传入的特征名清单。更多示例完整 REST API 说明含 cURL 调用示例见 README.md。总结Openscoring 客户端 CLI 把模型部署、单次预测、批量预测、模型下线四步操作浓缩为四个开箱即用的命令行工具Deployer负责上线 PMML 模型并自动支持 gzip 传输Evaluator用-Xkeyvalue快速验证单条预测CsvEvaluator胜任大规模 CSV 批量评分再加上Undeployer与DirectoryDeployer从日常开发调试到生产环境模型热更新都能轻松覆盖。配合毫秒级响应速度这套工具链是 Scikit-Learn、R 与 Apache Spark 模型落地实时评分服务的省心之选。【免费下载链接】openscoringREST web service for the true real-time scoring (1 ms) of Scikit-Learn, R and Apache Spark models项目地址: https://gitcode.com/gh_mirrors/op/openscoring创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

【TDengine】TDengine 的窗口函数(如 INTERVAL、FILL)如何使用?

【TDengine】TDengine 的窗口函数(如 INTERVAL、FILL)如何使用?

TDengine 窗口函数深度解析:从 INTERVAL 聚合到 FILL 策略在 CDN 日志分析中的实战艺术 问题引入 用户提问:“TDengine 的窗口函数(如 INTERVAL、FILL)如何使用?” 这是一个在 CDN 日志分析 场景中每日必用的核心技能。我们的平台需要将海量的、离散的用户访问日志,聚…

📅 2026/10/7 12:46:27
Laravel Exceptions 教程:如何启用 Whoops 调试错误页,让开发调试效率翻倍

Laravel Exceptions 教程:如何启用 Whoops 调试错误页,让开发调试效率翻倍

Laravel Exceptions 教程:如何启用 Whoops 调试错误页,让开发调试效率翻倍 【免费下载链接】Laravel-Exceptions Provides a powerful error response system for Laravel 项目地址: https://gitcode.com/gh_mirrors/la/Laravel-Exceptions Larav…

📅 2026/10/7 12:34:07
免费RAPR实战教程:如何安全清理 Windows 驱动存储库并找回系统空间

免费RAPR实战教程:如何安全清理 Windows 驱动存储库并找回系统空间

免费RAPR实战教程:如何安全清理 Windows 驱动存储库并找回系统空间 【免费下载链接】DriverStoreExplorer Driver Store Explorer 项目地址: https://gitcode.com/gh_mirrors/dr/DriverStoreExplorer RAPR(Driver Store Explorer)是一…

📅 2026/10/8 11:39:59
MORE NEWS

更多资讯

📰

OpenCV车道线检测实战:霍夫变换参数调优与避坑指南

简介:这份资源面向计算机视觉初学者与自动驾驶入门开发者,围绕OpenCV车道实时检测这一典型任务,提供可直接运行的示例代码与配套讲解。内容覆盖视频逐帧读取、多边形掩码构建、图像阈值化、霍夫线变换检测车道以及结果视频合成等完整流程&…

📰

DeepSeek本地部署保姆级教程:Ollama、可视化WebUI与RAG知识库投喂实战

简介:针对DeepSeek官方服务频繁响应迟缓、宕机的问题,这份面向零基础用户的保姆级教程,完整演示了如何在个人电脑上本地部署DeepSeek,并配套可视化界面与数据投喂训练。教程从安装Ollama讲起,覆盖根据显存容量挑选合适…

📰

大模型私有化部署生产环境实战:显存计算、推理框架选型与性能优化

1. 大模型私有化部署到底在解决什么问题第一次听到“把大模型私有化部署到生产环境”这个需求,很多人的第一反应是:直接调云端API不香吗?按token付费,不用管显卡,不用操心运维,何必自己折腾?我一…

📰

C++单元测试从零到实战:框架选型、构建集成与踩坑指南

我翻了翻过去几个项目的提交记录,有个数据挺有意思:接入单元测试之前,每次大版本迭代,光回归测试就得占掉两三天,而且经常是改完一个模块,另一个模块莫名其妙就出问题,查半天发现是内部接口被悄…

📰

aider 接入 OpenRouter 调用 Claude 大模型:TaoToken 统一 Key 配置与连通性验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

本地 AI 智能体 OpenClaw 2.7.5 升级 2.7.9 部署教学(包含安装包)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬