def test_should_raise_on_empty_dtype(self): tensor = inference_pb2.Tensor(dtype="", shape=[ inference_pb2.NamedInt(size=1), inference_pb2.NamedInt(size=2) ]) with pytest.raises(ValueError): pb_tensor_to_xarray(tensor)
def Predict(self, request: inference_pb2.PredictRequest, context) -> inference_pb2.PredictResponse: session = self._getModelSession(context, request.modelSessionId) arr = converters.pb_tensor_to_xarray(request.tensor) res = session.client.forward(arr) pb_tensor = converters.xarray_to_pb_tensor(res) return inference_pb2.PredictResponse(tensor=pb_tensor)
def test_should_same_data(self, shape): arr = xr.DataArray(np.random.random(shape)) tensor = self.to_pb_tensor(arr) result_arr = pb_tensor_to_xarray(tensor) assert_array_equal(arr, result_arr)
def test_should_same_shape(self, shape): arr = xr.DataArray(np.zeros(shape)) tensor = self.to_pb_tensor(arr) result_arr = pb_tensor_to_xarray(tensor) assert arr.shape == result_arr.shape
def test_should_have_same_dtype(self, np_dtype, dtype_str): arr = xr.DataArray(np.arange(9, dtype=np_dtype)) tensor = self.to_pb_tensor(arr) result_arr = pb_tensor_to_xarray(tensor) assert arr.dtype == result_arr.dtype
def test_should_return_ndarray(self): arr = xr.DataArray(np.arange(9)) parsed = self.to_pb_tensor(arr) result_arr = pb_tensor_to_xarray(parsed) assert isinstance(result_arr, xr.DataArray)
def test_should_raise_on_empty_shape(self): tensor = inference_pb2.Tensor(dtype="int64", shape=[]) with pytest.raises(ValueError): pb_tensor_to_xarray(tensor)