企业客户可以配置Roboflow Inference,设备端推理服务器,以缓存模型权重长达30天。这使得模型可以在完全断网或互联网连接不便的地区运行。
要离线运行模型,需要执行以下步骤:
一旦权重被缓存,就可以在本地使用它们了。下面,提供了如何在各种设备类型上离线运行模型的指导,从CPU到GPU。
首先,需要创建一个Docker卷,并将其挂载到/tmp/cache目录。然后,使用以下命令启动Roboflow Inference服务器:
sudo docker volume create roboflow
sudo docker run --net=host --env LICENSE_SERVER=10.0.1.1 --mount source=roboflow,target=/tmp/cache roboflow/roboflow-inference-server-cpu
要使用GPU容器,首先需要安装nvidia-container-runtime。然后,使用以下命令启动Roboflow Inference服务器:
sudo docker volume create roboflow
docker run -it --rm -p 9001:9001 --gpus all --mount source=roboflow,target=/tmp/cache roboflow/roboflow-inference-server-gpu
对于Jetson Jetpack 4.5、4.6和5.1设备,NVIDIA的nvidia-container-runtime已经预装。可以使用以下命令启动Roboflow Inference服务器:
sudo docker volume create roboflow
docker run -it --rm -p 9001:9001 --runtime=nvidia --mount source=roboflow,target=/tmp/cache roboflow/roboflow-inference-server-jetson-4.5.0
对于Jetson Jetpack 4.6设备:
sudo docker volume create roboflow
docker run -it --rm -p 9001:9001 --runtime=nvidia --mount source=roboflow,target=/tmp/cache roboflow/roboflow-inference-server-jetson-4.6.1
对于Jetson Jetpack 5.1设备:
sudo docker volume create roboflow
docker run -it --rm -p 9001:9001 --runtime=nvidia --mount source=roboflow,target=/tmp/cache roboflow/roboflow-inference-server-jetson-5.1.1
在推理服务器设置好本地缓存后,可以在没有互联网连接的情况下对图像和视频帧运行模型。
有关如何运行模型的更多指导,请参考“通过HTTP在图像上预测”的推理文档。
权重将通过互联网(如果配置了License Server,则通过License Server)使用SSL加密从Roboflow账户加载,并安全地存储在Docker卷中,最长可达30天。
推理结果将包含一个新的过期密钥,可以使用它来确定推理服务器在通过互联网或License Server连接续订权重租约之前可以继续提供预测的时间。一旦权重的过期日期低于7天,推理服务器将开始每小时尝试续订权重的租约,直到成功连接到Roboflow API。
一旦租约续订成功,计数器将重置为30天。
{
"predictions":
[
{
"x":
340.9,
"y":
263.6,
"width":
284,
"height":
360,
"class":
"example",
"confidence":
0.867
}
],
"expiration":
{
"value":
29.91251408564815,
"unit":
"days"
}
}