我正在尝试提供keras.applications
模型。这不是我第一次在tensorflow-server
docker映像的帮助下这样做,但是当我尝试使用新发布的模型Nasnet Mobile时,我不知道为什么我的代码停止工作。我得到的错误是:
_会合地点:
我用标准程序导出模型
from keras import backend as K
K.set_learning_phase(0) # Deactivate train-only-layers like: batch norm and dropout
print(model.input)
print(model.output)
from tensorflow.python.saved_model import builder as saved_model_builder
export_path = 'export/nasnet/1' # should always end on int (model versioning)
builder = saved_model_builder.SavedModelBuilder(export_path)
from tensorflow.python.saved_model import tag_constants, signature_constants
from tensorflow.python.`enter code here`saved_model.signature_def_utils_impl import predict_signature_def
#from tensorflow.python.saved_model.signature_def_utils_impl import build_signature_def
in_tensors = dict()
out_tensors = dict()
sess = K.get_session()
in_tensors['input'] = sess.graph.get_tensor_by_name('input_1:0')
out_tensors['predictions'] = sess.graph.get_tensor_by_name('predictions/Softmax:0')
prediction_signature = predict_signature_def(inputs=in_tensors,
outputs=out_tensors)
# export the protobuf and its signatures
builder.add_meta_graph_and_variables(sess=sess,
tags=[tag_constants.SERVING],
signature_def_map={
signature_constants.DEFAULT_SERVING_SIGNATURE_DEF_KEY:prediction_signature})
builder.save()
正常输出显示:
Tensor("input_1:0", shape=(?, 224, 224, 3), dtype=float32)
Tensor("predictions/Softmax:0", shape=(?, 1000), dtype=float32)
INFO:tensorflow:No assets to save.
INFO:tensorflow:No assets to write.
INFO:tensorflow:SavedModel written to: export/nasnet/1/saved_model.pb
b'export/nasnet/1/saved_model.pb'
根据grpc文档,这种错误甚至不应该由grpc产生。很自然,我将模型装载到docker容器中:
docker run -d -p 8500:8500 \
--mount type=bind,source=$(pwd)/export/nasnet/,target=/models/nasnet \
-e MODEL_NAME=nasnet -e TF_CPP_MIN_VLOG_LEVEL=0 \
--name nasnet_tfserving \
-t tensorflow/serving:1.10.0
容器中只装载了一个模型,版本为1。是什么导致了这种状态代码?docker日志看起来正常:
Docker日志nasnet_tfserving2018-12-10 23:12:06.902367:我tensorflow_serving/model_servers/main.cc:157]构建单个TensorFlow模型文件配置:model_name: nasnetmodel_base_path: /models/nasnet2018-12-10 23:12:06.904872:我tensorflow_serving/model_servers/server_core.cc:462]添加/更新模型。2018-12-10 23:12:06.904932:我tensorflow_serving/model_servers/server_core.cc:517](重新)添加模型: nasnet 2018-12-10 23:12:07.006261:我tensorflow_serving/core/basic_manager.cc:739]成功保留资源以加载servable{name: nasnet version: 1} 2018-12-10 23:12:07.006484: Itensorflow_serving/core/loader_harness.cc:66]批准加载servable version{name: nasnet version: 1} 2018-12-10 23:12:07.006539:我tensorflow_serving/core/loader_harness.cc:74]加载servable version{name: nasnet version: 1} 2018-12-10 23:12:07.006621:我外部/org_tensorflow/tenorflow/contrib/session_bundle/bundle_shim.cc:360]尝试在bundle-shim中加载本地SavedModelBundle来自: /models/nasnet/12018-12-10 23:12:07.006810: I外部/org_tensorflow/tenorflow/cc/saved_model/reader.cc:31]从: /models/nasnet/12018-12-10 23:12:07.257410: I外部/org_tensorflow/tenorflow/cc/saved_model/reader.cc:54]使用标签{service}读取元图2018-12-10 23:12:07.557033: I外部/org_tensorflow/tenorflow/core/平台/cpu_feature_guard.cc:141]您的CPU支持此TensorFlow二进制文件未编译为使用的指令:FMA 2018-12-10 23:12:08.726888: I外部/org_tensorflow/tenorflow/cc/saved_model/loader.cc:113]恢复SavedModel捆绑包。2018-12-10 23:12:09.814493: I外部/org_tensorflow/tenorflow/cc/saved_model/loader.cc:148]在SavedModel捆绑包上运行LegacyInitOp。2018-12-10 23:12:09.814631: I外部/org_tensorflow/tenorflow/cc/saved_model/loader.cc:233]标签{service}的SavedModel负载;状态:成功。花了2807935微秒。2018-12-10 23:12:09.814818:我tensorflow_serving/servables/tenorflow/saved_model_warmup.cc:83]在 /models/nasnet/1/assets.extra/tf_serving_warmup_requests找不到预热数据文件2018-12-10 23:12:09.815253:我tensorflow_serving/core/loader_harness.cc:86]成功加载可服务版本{name: nasnet version: 1} 2018-12-10 23:12:09.823923:我tensorflow_serving/model_servers/main.cc:327]在0.0.0.0:8500运行ModelServer...[警告]getaddrinfo:不支持节点名的地址系列[evhttp_server.cc: 235]RAW:进入事件循环...2018-12-10 23:12:09.832156:我tensorflow_serving/model_servers/main.cc:337]在:localhost:8501...
有什么意见吗??
您的客户端代码似乎有问题。错误显示“未为请求找到可服务:最新(nasnest)”。但您使用“nasnet”作为模型名启动了tf服务器。只需在客户端代码中将“nasnest”更改为“nasnet”。
我试图使一个API工作在springstart但是当我输入请求:http://localhost:8080/employee/all我得到这个结果: 它是一个经典的服务,包含一个模型、一个服务、一个存储库、一个映射器和一个异常(如果没有员工),使用的数据库是sql中的实体,如下所示 服务: 仓库 模型 制图员 例外 波姆。xml
我在临时服务器上推送了我的textract代码,现在我收到了一个错误。 它正在开发一个系统。我不明白为什么会这样。 我正在使用dotnet core 3.0 我遵循这里提供的代码示例。[https://github.com/aws-samples/amazon-textract-code-samples/tree/master/src-csharp] 我对IAM的资质有疑问。为此,我在stagin
我在Heroku上托管了一个Springboot应用程序。构建和部署工作得非常好。然而,每当我想访问该方法时,我都会看到这个错误<代码>出现意外错误(类型=错误请求,状态=400) 如果我使用loclhost,但使用Heroku的应用程序时抛出错误,那么它在Postman上运行得非常好。 这是控制器的样子。我猜这就是问题的来源。 . 你认为我能做些什么让api在Heroku上工作?
我正试图通过Axios在本地发送一个POST请求,其中包含用户名和密码。 我正在部署一个Flask应用程序http://127.0.0.1:5000/login,它处理/login路由。POST请求失败,出现以下错误 我研究了一点,认为这可能是CORS的问题,但情况似乎并非如此,因为我尝试了一个Axios GET请求,它工作正常(响应记录正确)。这是我的部分代码 查看ChromeDevTools,
我的目标是从Spring WebClient请求中获取HttpStatus。请求的所有其他信息都不相关。
只有在使用docker stack deploy启动容器时,才会出现间歇性错误,使用DockerCompose`grpc._channel._Rendezvous可以正常工作: