dato predictive service client使对dato predictive services进行rest api调用变得容易
dato-predictive-service-client的Python项目详细描述
dato预测服务python客户端库的目的是 python应用程序可以方便地查询数据预测服务。
安装
要安装dato predictive service python client,只需:
sudo pip install dato-predictive-service-client
或来源:
sudo python setup.py install
要求
- Dato Predictive Service,由GraphLab create>;=1.4安装启动
用法
创建客户端
要使用dato预测服务python客户端,首先需要获得 来自正在运行的数据预测服务的以下信息:
- 预测服务CNAME或DNS名称(终结点)
- 来自预测服务的API密钥
获得上述信息后,只需创建一个新的PredictiveServiceClient即可:
fromdato.deployimportPredictiveServiceClient;client=PredictiveServiceClient(endpoint=<endpoint>,api_key=<api_key>,should_verify_certificate=<True-or-False>)
要为此预测服务启用SSL证书验证, 将should_verify_certificate设置为true。但是,如果您的预测服务 是使用自签名证书还是没有证书启动的,请 将should_verify_certificate设置为false。
predictiveserviceclient也可以通过使用预测服务client configuration file创建。
client=PredictiveServiceClient(config_file=<path_to_file>)
查询
要查询部署在预测服务上的模型,您需要:
- 型号名称
- 查询方法(推荐、预测、查询等)
- 用于查询模型的数据
例如,下面的代码演示如何查询名为 rec,为用户推荐`Jacob Smith`:
data={'users':['Jacob Smith']}result=client.query('rec',method='recommend',data=data)
注释
- 不同的模型可以支持不同的查询方法(推荐、预测、查询等)。 以及data的不同语法和格式。你需要知道 在查询模型之前支持的方法和查询数据格式。
设置超时
要更改查询预测服务时的请求超时,请使用以下命令:
# set timeout to 5 seconds.client.set_query_timeout(timeout=5)
默认超时为10秒。
结果
query()函数的输出是查询结果的字典。
如果查询成功,则查询结果包含:
- 模型响应
- 此查询的uuid
- 模型的版本
model_response=result['response']uuid=result['uuid']version=result['version']
model_response包含查询的实际模型输出。
发送反馈
一旦得到查询结果,就可以提交与此查询对应的反馈数据 回到预测服务。此反馈数据可用于评估 当前模式和培训未来模式。
要提交与特定查询对应的反馈数据,您将需要uuid 查询的。uuid可以很容易地从查询结果中获得。
uuid=result['uuid']
对于反馈数据,可以使用您喜欢的任何属性或值对。
示例:
feedback_data=dict()feedback_data['num_of_clicks']=3feedback_data['searched_terms']='test'
现在我们可以将这些反馈数据发送到预测 将此反馈与特定查询关联的服务。
client.feedback(uuid,feedback_data);
许可证
dato预测服务python客户机是在3子句bsdlicense下提供的。