wespeaker项目grpc-java客户端开发

非常重要的原始参考资料:

链接: triton-inference-server/client github/grpc java

ps:

使用grpc协议的其它项目python/go可以参考git hub目录client/tree/main/src/grpc_generated下的其它项目

其它链接:

  1. 想要系统了解triton-inference-server可以查看主页
  2. 想要了解server可以查看server
  3. 想要了解clinet可以查看client

生成java项目依赖

(一)克隆Triton Inference Server Common到本地

git clone https://github.com/triton-inference-server/common/ -b r22.03 common-repo

注意:下载合适的分支

(二)克隆Triton Client到本地

git clone https://github.com/triton-inference-server/client.git

(三)使用IDEA打开client

client所在的路径/client/src/grpc_generated/java/library

(四)设置IDEA的maven和setting

settings-》Build,execution,Deployment->build Tools-->Maven设置maven home path和setting file

注意:setting file需要配置依赖项从哪里下载

(五)中common-repo/protobuf/*.proto拷贝到library下src/main/proto/位置

运行mvn compile

这一步主要是编译proto

(六)生成文件

上述文件就是新java工程的依赖项

开发java客户端

(一)启动triton-inference-server提供的模型服务

bash 复制代码
# Step 1: Create the example model repository
git clone -b r24.01 https://github.com/triton-inference-server/server.git
cd server/docs/examples
./fetch_models.sh

# Step 2: Launch triton from the NGC Triton container
docker run --gpus=1 --rm --net=host -v ${PWD}/model_repository:/models nvcr.io/nvidia/tritonserver:24.01-py3 tritonserver --model-repository=/models
去掉 --gpus=1 为cpu版本

(二)启动triton-inference-server提供的java客户端测试

首先需要拷贝第一步的依赖

bash 复制代码
$ cp -R library/target/generated-sources/protobuf/java/inference  examples/src/main/java/inference
$ cp -R library/target/generated-sources/protobuf/grpc-java/inference/*.java  examples/src/main/java/inference/

使用IDEA打开路径:/client/src/grpc_generated/java/examples

bash 复制代码
$ cd examples
$ mvn clean install 
$ mvn exec:java -Dexec.mainClass=clients.SimpleJavaClient -Dexec.args="<host> <port>"

成功的话,会出现

bash 复制代码
name: "OUTPUT0"
datatype: "INT32"
shape: 1
shape: 16

name: "OUTPUT1"
datatype: "INT32"
shape: 1
shape: 16

(三)自行修改构建成自己的java客户端

参考上述examples,修改为自己工程需要的;另外也要启动自己的server,启动自己server的方法参考
wespeake工程指导

用jar包运行

(一)打包jar包(IDEA)

File -- 》Projection structure--》Artifacts --> ➕--〉JAR--》From module...-->Main Class(com.bj58.ailab.wpai.userdefined.你的javaClient)-->OK-->OK

点击build--》build Artifacts---〉你刚才的jar--》build

即可在生成目录看到生成的jar包

(二)jar包运行

bash 复制代码
nohup java -jar 你的jar包名.jar 你的参数 > 你的.log
相关推荐
桦说编程16 小时前
从 ForkJoinPool 的 Compensate 看并发框架的线程补偿思想
java·后端·源码阅读
躺平大鹅18 小时前
Java面向对象入门(类与对象,新手秒懂)
java
初次攀爬者19 小时前
RocketMQ在Spring Boot上的基础使用
java·spring boot·rocketmq
花花无缺19 小时前
搞懂@Autowired 与@Resuorce
java·spring boot·后端
Derek_Smart20 小时前
从一次 OOM 事故说起:打造生产级的 JVM 健康检查组件
java·jvm·spring boot
NE_STOP21 小时前
MyBatis-mybatis入门与增删改查
java
孟陬1 天前
国外技术周刊 #1:Paul Graham 重新分享最受欢迎的文章《创作者的品味》、本周被划线最多 YouTube《如何在 19 分钟内学会 AI》、为何我不
java·前端·后端
想用offer打牌1 天前
一站式了解四种限流算法
java·后端·go
华仔啊1 天前
Java 开发千万别给布尔变量加 is 前缀!很容易背锅
java