gpt4 book ai didi

python - 如何将多个二维数组作为输入传递给 tensorflow 服务 api?

转载 作者:行者123 更新时间:2023-12-05 07:03:34 24 4
gpt4 key购买 nike

我有一个 tensorflow 模型,它将两个二维数组作为输入。

这就是我训练模型的方式。

x.shape == (100, 250)
y.shape == (100, 10)

model.fit([x,y], y_train)

现在我正在使用 tensorflow 服务 API 将其部署到生产环境中。现在,当我尝试为预测发出 api 请求时,出现错误

“{'error': 'instances 是一个普通列表,但期望对象列表作为 tensorinfo_map 所需的多个输入张量'}”

data1 = json.dumps({"signature_name": "serving_default",
"instances": [x.tolist(), y.tolist()]})
# both x and y are numpy 2d array

json_response = requests.post('http://44.287.13.8:9000/v1/models/context_model/versions/1:predict',
data=data1, headers=headers)

pred = json.loads(json_response.text)

print(pred)
{'error': 'instances is a plain list, but expecting list of objects as multiple input tensors required as per tensorinfo_map'}

最佳答案

我有一个非常相似的问题。我想结合服务 API 测试我保存的模型。首先,我编写了以下 POST 命令来获取预测:curl -g -d "{""instances""":"[[[158, 194, 8102, 5294, 15.404460999999998, 47.241882000000004, 1]]]} “-X POST http://localhost:8501/v1/models/my_model:predict。有了这个输入,我得到了和你一样的错误。如此处所述 https://www.tensorflow.org/tfx/serving/api_rest#predict_api ,您必须按以下方式提供输入数据:curl -d "{"""instances""": [{"""NAME1W1""": [158], """NAME1W2""": [194], """ZIP""": [""8102""], """STREETW""": [5294], """经度""": 15.404460999999998, """纬度""": 47.241882000000004,"""ASG""": [1] }]}"-X POST http://localhost:8501/v1/models/my_model:predict。不要混淆“”,我必须使用它们,因为我在 Windows 而不是 Linux 上使用 curl。

关于python - 如何将多个二维数组作为输入传递给 tensorflow 服务 api?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63164317/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com