Tensorflow服务客户端/ Base64问题/错误3

时间:2017-06-19 21:36:12

标签: python node.js tensorflow tensorflow-serving

我希望在Tensorflow服务上启动并运行以下模型:

https://github.com/mdietrichstein/tensorflow-open_nsfw

我已使用以下代码导出模型:https://github.com/mdietrichstein/tensorflow-open_nsfw/blob/master/tools/export_model.py

但在尝试使用node.js客户端计算结果时,我收到以下错误:

{ code: 3, 
  details: 'Invalid character found in base64.\n\t 
  [[Node: map/while/DecodeBase64 = DecodeBase64[_output_shapes=[[]],
  _device="/job:localhost/replica:0/task:0/cpu:0"](map/while/TensorArrayReadV3)]]',
  metadata: Metadata {
   _ internal_repr: {}
  }
}

可以在此处找到使用测试服务器地址配置的客户端代码:

https://github.com/delta9/tensorflow-serving-node-client

有没有人遇到过类似的问题?如果有的话,你是怎么解决的?

非常感谢

1 个答案:

答案 0 :(得分:1)

您应该使用网络安全的base64编码。     base64.urlsafe_b64encode(open('test.jpg', 'rb').read()) 因为tensorflow.decode_base64使用WEB-SAFE模型来解码base64编码。 tensorflow.decode_base64的正式文档为:

解码网络安全的base64编码的字符串。   输入的末尾可能有填充也可能没有。有关填充,请参见EncodeBase64。   网络安全意味着输入必须使用-和_而不是+和/。