首页 > 解决方案 > {“错误”:“格式错误的请求:POST /v1/models/text_model”} Tensorflow 服务

问题描述

我正在使用 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 

标签: pythontensorflowtensorflow-serving

解决方案


在不知道模型签名的情况下,我认为问题出在您的instances=陈述上。将其更改为: instances=[{"inputFeature1":inputFeature1,"inputFeature2=":inputFeature2,"inputFeature3":inputFeature3}]

您将特征值作为列表 [] 而不仅仅是值传递。当我们传递 的值时json.dumps,我们需要发送一个字典列表。

的值dicts不必是列表。

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


推荐阅读