【发布时间】:2023-03-09 00:15:01
【问题描述】:
我们正在尝试在服务器上使用 TensorFlow (TF) 来推断图像。
android app将jpeg图片发送到我的机器,php api执行我的android inference(python)脚本并返回分数,大约需要6s,但是我们意识到加载TF需要很长时间,但是一个进行推理的时间很短,例如一个请求占用 10% 的资源,另一个占用 10% 的资源,因此它只有 20% 只用于同时进行两个推理,以及两个 TF 模型。
我们只想在后台加载一个 TF 实例:
- 设备发送 jpeg,并将其传递给 TF。
- B设备发送jpeg,传给TF。
- TF 取第一个 A,第二个 B,并依次进行推理。
- 返回分数。
在同一时刻,服务器只加载了 1 个 TF 实例。
我们在做什么:
- 设备发送 jpeg,加载 TF 实例,进行推理并将其传递给 TF。
- B 设备发送 jpeg,加载 TF 实例,进行推理并将其传递给 TF。
- 在同一时刻,服务器加载了 n 个实例,在本例中为 2 个 TensorFlow,而不是只有一个。
在 php 中调用 TensorFlow api.php
shell_exec("python3 myinferece.py image=image_path")
以及 TF 推理: inference.py
with tf.Session(graph=graph) as sess:
scores = sess.run(our_params)
最终代码部署在aws中。
【问题讨论】:
标签: php android python tensorflow server