def run(host, port): channel = grpc.insecure_channel('%s:%d' % (host, port)) stub = iris_pb2_grpc.IrisPredictorStub(channel) request = iris_pb2.IrisPredictRequest( sepal_length=5.0, sepal_width=3.6, petal_length=1.3, petal_width=0.25 ) response = stub.PredictIrisSpecies(request) print("Predicted species number: " + str(response.species))
def run(host, port): # Define a classe de previsão stub = grpc_server.IrisPredictor() # Prepara uma request request = iris_pb2.IrisPredictRequest( sepal_length=5.0, sepal_width=4.6, petal_length=5.3, petal_width=1.25 ) # Envia a request e obtém a previsão response = stub.PredictIrisSpecies(request) print("Número da previsão da classe prevista para a flor: " + str(response.species))
def getData(self, request): anyMsg = request.data dc = iris_pb2.IrisPredictRequest() success = anyMsg.Unpack(dc) if success: df = pd.DataFrame([{ "f1": dc.f1, "f2": dc.f2, "f3": dc.f3, "f4": dc.f4 }]) return df else: context.set_code(grpc.StatusCode.INTERNAL) context.set_details('Invalid data') raise BadDataError('Invalid data')
def callRpc(self, token, jStr): j = json.loads(jStr) channel = grpc.insecure_channel(self.host + ':' + str(self.rpc_port)) stub = seldon_pb2.SeldonStub(channel) data = iris_pb2.IrisPredictRequest(f1=j["f1"], f2=j["f2"], f3=j["f3"], f4=j["f4"]) dataAny = any_pb2.Any() dataAny.Pack(data) meta = seldon_pb2.ClassificationRequestMeta(puid="12345") request = seldon_pb2.ClassificationRequest(meta=meta, data=dataAny) metadata = [(b'oauth_token', token)] reply = stub.Classify(request, 999, metadata=metadata) print reply
def post(self): # Parse arguments by REST request. args = self.__class__.parser.parse_args() # Request to the gRPC server. channel = grpc.insecure_channel('%s:%s' % (self.host, self.port)) stub = iris_pb2_grpc.IrisPredictorStub(channel) request = iris_pb2.IrisPredictRequest( sepal_length=args['sepal_length'], sepal_width=args['sepal_width'], petal_length=args['petal_length'], petal_width=args['petal_width'] ) response = stub.PredictIrisSpecies(request) # Return the results. data = { 'species': response.species, } return marshal(data, self.__class__.resource_fields)