SKIL/工作流程/Java部署客户端

59 篇文章 0 订阅

Java部署客户端

SKIL部署客户端是用于处理SKIL客户端请求的Java API。与原始JSON请求相比,它直观且易于使用。它提供了构建请求对象的构建器模式。响应有自己的类对象。

 

添加到项目
客户端在Skymind的Nexus仓库上作为依赖可用。目前,存储库受密码保护,你需要联系我们以获取访问权限。
连接到存储库后,将以下内容添加到pom.xml中:

<dependency>
    <groupId>io.skymind</groupId>
    <artifactId>skil-daemon-client</artifactId>
    <version>LATEST</version>
</dependency>

以下导入将使你所需的大多数实用程序进入作用域:

import io.skymind.auth.rest.LoginResponse;
import io.skymind.deployment.client.SKILDeploymentClient;
import io.skymind.deployment.model.ModelEntity;
import io.skymind.deployment.rest.CreateDeploymentRequest;
import io.skymind.deployment.rest.DeploymentResponse;
import io.skymind.deployment.rest.ImportModelRequest;
import io.skymind.deployment.rest.UpdateModelStateRequest;
import io.skymind.skil.client.errors.ClientException;

import java.text.MessageFormat;
import java.util.List;

 

 

配置
为了将Java客户端连接到SKIL,需要将一个路径字符串传递给SKILDeploymentClient类的构造器,指定运行的SKIL服务器的主机和端口为:

String host = "localhost";
String port = "9008";
String path = MessageFormat.format("http://{0}:{1}", host, port);

SKILDeploymentClient skilDeploymentClient = new SKILDeploymentClient(path);

 

并非所有请求都需要授权,但要返回预测,需要在请求头中传递授权令牌。
授权令牌是一个JWT令牌,它以加密的形式存储你作为用户的凭据,并让服务器知道你是一个被授权执行请求操作的实体。
使用以下代码登录并从SKIL服务器接收授权令牌:

String userId = "admin";
String password = "admin";

/* Getting authorized in the deployment client */
// The following code will authenticate you as a user in the SKIL Server
LoginResponse loginResponse = skilDeploymentClient.login(userId, password);

你将收到一个带有授权令牌的LoginResponse对象。要读取授权令牌,请执行以下操作:

// To get the token...
print(MessageFormat.format("Authorization Token: {0}", loginResponse.getToken()));

 

基本用法

以下是管理部署的常用方法:

方法返回类型描述
getDeployments()List<DeploymentResponse>列出所有部署
getDeployment(deploymentId)DeploymentResponse按ID检索部署
addDeployment(new CreateDeploymentRequest(name))DeploymentResponse创建新部署
getModels(deploymentId)List<ModelEntity>列出部署中的模型
addModel(deploymentId, ImportModelRequest.builder())ModelEntity将模型添加到部署
deleteModel(deploymentId, modelId)String删除部署中的模型
setModelState(deploymentId, modelId, UpdateModelStateRequest.builder())ModelEntity更新模型的状态

 

更新模型的状态
你还可以使用addModeldeleteModelsetModelState方法进行KNN和数据转换。只需在ImportModelRequest中指定JSON子类型:

  • *转换: ModelEntity.ModelType.TRANSFORM.name()
  • *KNNs: ModelEntity.ModelType.KNN.name()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值