mindspore_serving.client

MindSpore Serving客户端API,用于通过gRPC访问MindSpore Serving服务器。

class mindspore_serving.client.Client(address, servable_name, method_name, version_number=0, ssl_config=None)[源代码]

通过Client访问Serving服务器gRPC接口,可用于创建请求、访问服务和解析结果。

说明

Serving客户端在一个请求中可以发送的最大数据量为512MB,Serving服务器可以接收的最大数据量可以配置为1~512MB,默认为100MB。

参数:
  • address (str) - Serving服务器gRPC接口地址。

  • servable_name (str) - Serving服务器提供的服务的名称。

  • method_name (str) - 服务中方法的名称。

  • version_number (int, optional) - 服务的版本号,0表示指定所有正在运行的一个或多个版本的服务中最大的版本号。默认值:0。

  • ssl_config (mindspore_serving.client.SSLConfig, optional) - SSL配置,如果None,则禁用SSL。默认值:None。

异常:
  • RuntimeError - 参数的类型或值无效,或发生其他错误。

样例:

>>> from mindspore_serving.client import Client
>>> import numpy as np
>>> client = Client("localhost:5500", "add", "add_cast")
>>> instances = []
>>> x1 = np.ones((2, 2), np.int32)
>>> x2 = np.ones((2, 2), np.int32)
>>> instances.append({"x1": x1, "x2": x2})
>>> result = client.infer(instances)
>>> print(result)
infer(instances)[源代码]

用于创建请求、访问服务、解析和返回结果。

参数:
  • instances (Union[dict, tuple[dict]]) - 一个实例或一组实例的输入,每个实例都是dict。dict的key是输入名称,value是输入值。value的类型可以是Python int、float、bool、str、bytes、numpy scalar或numpy array对象。

异常:
  • RuntimeError - 参数的类型或值无效,或发生其他错误。

样例:

>>> from mindspore_serving.client import Client
>>> import numpy as np
>>> client = Client("localhost:5500", "add", "add_cast")
>>> instances = []
>>> x1 = np.ones((2, 2), np.int32)
>>> x2 = np.ones((2, 2), np.int32)
>>> instances.append({"x1": x1, "x2": x2})
>>> result = client.infer(instances)
>>> print(result)
infer_async(instances)[源代码]

用于创建请求,异步访问服务。

参数:
  • instances (Union[dict, tuple[dict]]) - 一个实例或一组实例的输入,每个实例都是dict。dict的key是输入名称,value是输入值。value的类型可以是Python int、float、bool、str、bytes、numpy scalar或numpy array对象。

异常:
  • RuntimeError - 参数的类型或值无效,或发生其他错误。

样例:

>>> from mindspore_serving.client import Client
>>> import numpy as np
>>> client = Client("localhost:5500", "add", "add_cast")
>>> instances = []
>>> x1 = np.ones((2, 2), np.int32)
>>> x2 = np.ones((2, 2), np.int32)
>>> instances.append({"x1": x1, "x2": x2})
>>> result_future = client.infer_async(instances)
>>> result = result_future.result()
>>> print(result)
class mindspore_serving.client.SSLConfig(certificate=None, private_key=None, custom_ca=None)[源代码]

Serving服务器gRPC SSL使能时,通过SSLConfig封装SSL证书等相关参数。

参数:
  • certificate (str, optional) - PEM编码的证书链内容,如果为None,表示不使用证书链。默认值:None。

  • private_key (str, optional) - PEM编码的私钥内容,如果为None,表示不使用私钥。默认值:None。

  • custom_ca (str, optional) - PEM编码的根证书内容,如果为None,gRPC运行时将从默认位置加载根证书。默认值:None。

异常:
  • RuntimeError - 参数的类型或值无效。