当前位置:网站首页 > PyTorch框架 > 正文

pytorch模型部署方案(pytorch模型搭建)



8fb8c79194e2d9df94e508b09eee1df7.png
本文记录下如何使用docker部署pytorch文本检测模型到服务器,便于终端调用API。 镜像文件也上传到docker hub了,可以一步步运行起来,不过需要先安装好docker。 docker的安装可参考官方文档。

90c6802b84fd7cee60b3a3b23bb4cd83.png

为了便于测试,可以先使用Flask搭建一个简易版本文本检测服务器,服务端创建接口部分代码如下:

  1. 其中主要的是detection函数,接收的图像为numpy array格式,通道为BGR;输出为检测的文本框,shape为(#boxes, 8),8代表四个点的横纵坐标,从左上角开始顺时针排序。
  2. PAGE是一个简单的网页,创建表单。可在浏览器中进行验证,也可以通过脚本验证,后面详述。

需要先编写Dockerfile文件:

  1. gaolijun/pytorch:1.2-cuda10.0-cudnn7-cv-flask-py3.6 是另一个自定义创建的镜像,安装的Python版本为3.6,pytorch版本为1.2,cuda版本为10.0;并且已经安装好了opencv和flask,以及其他一些常用库,比如numpy等等,该镜像做了许多精简,保证了搭建pytorch和flask服务所需的功能,文件并不很大。为了省事儿,直接在这上面搭建几层。
  2. 设置docker开放的端口为5000,后面可以在运行的主机上进行映射。
  3. 然后将需要的文本拷贝进去,其中detection_api提供上面的detection函数,可以看成黑盒子,输入是图像,输出为该图像上检测得到的所有文本框。
  4. 安装额外的依赖包:Shapely和pyclipper,这在 gaolijun/pytorch:1.2-cuda10.0-cudnn7-cv-flask-py3.6 中没有安装,so...
  5. 在容器中运行镜像的时候就运行检测api脚本。

写好了Dockerfile,在DockerFile所在目录运行:

镜像名称为detector,给个标签:v1.0,便于跟踪管理。

我已经将创建的镜像上传到docker hub了,可以拉取下来:

然后查看下全部的镜像:

2b8ef6b598362fa78816ce696f212e69.png

  1. -p: 主机端口到docker容器端口的映射。所以,只要愿意,主机上可以运行多个docker容器,指定不同的端口即可。
  2. -d: docker容器在后台运行
  3. --name: docker 容器名称
  4. 后面跟上创建的镜像,即在容器detector中运行的镜像detector:v1.0
  5. 或许需要 来查看它
  6. 或许还需要 来停止它
  7. 或许也需要 来移除它,。。。。。如果没有停掉而想直接移除或许还不行,那就加上 --force/-f 强制操作

文本检测服务已经运行起来了,要怎样才知道有没有运行成功呢?这里通过两种方式来验证一下。

1. 浏览器

提供了简易的web page,直接在浏览器中输入http://serverIP:3223/detector,其中serverIP为运行docker的服务器IP地址。

0571e733cf191017ffbe56795341fad3.png

点击Browse选择图像,然后点击detect进行检测,得到如下结果:

6b3a7810cb06bfccc5370279786a5458.png

2. python脚本

通过脚本验证是最常用的方式了,这里写了一个简单的demo脚本

结果如图所示:

ff54ce7a5be112e75225f6da57e59675.png
  1. Docker官方文档
到此这篇pytorch模型部署方案(pytorch模型搭建)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • pytorch模型部署到springbootweb(pytorch模型部署到Linux)2025-08-22 08:09:05
  • pytorch模型部署到树莓派(pycharm树莓派版本)2025-08-22 08:09:05
  • 怎么删除虚拟环境中的pytorch(怎么删除虚拟环境中的镜像文件在aconda里)2025-08-22 08:09:05
  • pytorch模型部署到树莓派(pytorch搭建模型)2025-08-22 08:09:05
  • pytorch模型部署到springbootweb(pytorch模型部署到摄像头)2025-08-22 08:09:05
  • pytorch模型部署(pytorch模型部署到安卓)2025-08-22 08:09:05
  • pytorch模型部署到树莓派(pycharm 树莓派)2025-08-22 08:09:05
  • pytorch模型部署onnx(pytorch模型部署到web)2025-08-22 08:09:05
  • pytorch模型部署onnx(pytorch模型部署 django)2025-08-22 08:09:05
  • 服务器配置pytorch环境(pytorch如何在服务器上跑)2025-08-22 08:09:05
  • 全屏图片