我正在尝试使用Google Cloud ml引擎提供预测。我使用fast-style-transfer生成了模型,并将其保存在Google Cloud ml引擎的“模型”部分中。作为输入,它使用float32,因此我必须将这种图像转换为这种格式。
image = tf.image.convert_image_dtype(im, dtypes.float32)
matrix_test = image.eval()
然后我为请求生成了json文件:
js = json.dumps({"image": matrix_test.tolist()})
使用以下代码:
gcloud ml-engine predict --model {model-name} --json-instances request.json
返回以下错误:
ERROR: (gcloud.ml-engine.predict) HTTP request failed. Response: {
"error": {
"code": 400,
"message": "Request payload size exceeds the limit: 1572864 bytes.",
"status": "INVALID_ARGUMENT"
}
}
我想知道是否可以增加此限制,如果不能,那么是否可以通过一种解决方法来解决此问题……在此先感谢!
答案 0 :(得分:1)
如果使用批量预测,则可以对超出该限制的图像进行预测。
以下是官方文档:https://cloud.google.com/ml-engine/docs/tensorflow/batch-predict
希望这对您有所帮助!
答案 1 :(得分:0)
这是Cloud Machine Learning Engine API的硬限制。有一个feature request可以增加此限制。您可以在此处发表评论,要求更新。此外,您可以同时尝试the following solution。
希望有帮助