{ "error": "Malformed request. POST v1modelstext_model POST v1modelstext_model" }。Tensorflow服务

问题描述 投票:0回答:1

我正在使用Colab进行文本分类,它是一个多标签文本分类模型。

 import json

# inputFeature1 
inputFeature1="¿Tiene el arte que gustar a todos? Pues no"  

#inputFeature2
inputFeature2="Una imagen del último día de la exposición ded"


#inputFeature3  
inputFeature3="marabilias"



instances=[{"inputFeature1":[inputFeature1],"inputFeature2=":[inputFeature2],"inputFeature3":[inputFeature3]}]

data = json.dumps({"signature_name": "serving_default", "instances": instances})
print('Data: {} ... {}'.format(data[:50], data[len(data)-52:]))
print(data)
print(requests.post('http://localhost:8501/v1/models/text_model', data=data).content.decode())

错误是

{ "error": "Malformed request: POST /v1/models/text_model" } Tensorflow Serving 
python tensorflow tensorflow-serving
1个回答
0
投票

在不知道模型签名的情况下,我认为问题出在你的 instances= 语句.改成。instances=[{"inputFeature1":inputFeature1,"inputFeature2=":inputFeature2,"inputFeature3":inputFeature3}]

你把特征值以列表[]的形式传递,而不是只传递值。当我们将值传递给 json.dumps,我们需要发送一个dicts的列表。

列表中的 dicts 不需要是一个列表。

另外,请确保您正在检查您的模型签名的输入特征的数据类型。您可以使用 saved_model_cli show --dir /path/to/your/model --all rfom命令行。

© www.soinside.com 2019 - 2024. All rights reserved.