目录
一、为什么使用一键服务部署
二、安装 paddlehub 1.8
2.1 安装前的环境准备
2.2 安装paddlehub 1.8
2.2.1 安装paddlehub
2.2.2 检测安装是否成功
2.2.3 检查本地与远端PaddleHub-Server的连接状态
2.2.4 测试使用
2.3 其他
2.3.1 如何卸载、pip常用命令、常见问题
2.3.2 PaddleHub命令行工具
三、基于PaddleHub Serving的服务部署(失败)
异常:ImportError: dlopen: cannot load any more object with static TLS
一、为什么使用一键服务部署
使用PaddleHub能够快速进行模型预测,但开发者常面临本地预测过程迁移线上的需求。无论是对外开放服务端口,还是在局域网中搭建预测服务,都需要PaddleHub具有快速部署模型预测服务的能力。在这个背景下,模型一键服务部署工具——PaddleHub Serving应运而生。开发者通过一行命令即可快速启动一个模型预测在线服务,而无需关注网络框架选择和实现。
二、安装 paddlehub 1.8
2.1 安装前的环境准备
https://github.com/PaddlePaddle/PaddleHub/blob/release/v1.8/docs/installation.md
(1)安装python 3.8
具体安装方法请参见 【ubuntu】安装 Anaconda3-CSDN博客
(2)安装paddlepaddle 2.0.0
具体安装方法请参见 Ubuntu 14.04:安装PaddlePaddle(Conda安装)-CSDN博客
(3)安装PaddleOCR 2.3
具体安装方法请参见 Ubuntu 14.04:安装 PaddleOCR 2.3-CSDN博客
2.2 安装paddlehub 1.8
参考资料:
https://github.com/PaddlePaddle/PaddleHub/blob/release/v1.8/docs/install.md
2.2.1 安装paddlehub
注:此处需要进入paddlepaddle所在的Anaconda虚拟环境,那里面才有pip3。
# 先进入PaddlePaddle所在的Anaconda虚拟环境:conda activate {paddle_env}。
# 安装指定版本(==1.8.0表示PaddleHub的版本),使用清华源
#
pip3 install paddlehub==1.8.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
最后出现 Successfully installed paddlehub-1.8.0 ,表示安装成功。
2.2.2 检测安装是否成功
https://github.com/PaddlePaddle/PaddleHub/blob/release/v1.8/docs/install.md
# 先进入PaddlePaddle所在的Anaconda虚拟环境:conda activate {paddle_env}。
# 查看 paddlehub 版本
pip list | grep paddlehub
# 先进入PaddlePaddle所在的Anaconda虚拟环境:conda activate {paddle_env}。
# 查看PaddleHub详细信息
pip show paddlehub
2.2.3 检查本地与远端PaddleHub-Server的连接状态
# 先进入PaddlePaddle所在的Anaconda虚拟环境:conda activate {paddle_env}。
python3
import paddlehub
# 如果可以连接远端PaddleHub-Server,则显示Request Hub-Server successfully。
# 如果无法连接远端PaddleHub-Server,则显示Request Hub-Server unsuccessfully。paddlehub.server_check()
2.2.4 测试使用
https://github.com/PaddlePaddle/PaddleHub/blob/release/v1.8/docs/quickstart.md
(1)结果:成功
hub run senta_bilstm --input_text "今天天气真好"
(2)结果:失败
# 注意:False 第一个字母必须大写哦!
hub run chinese_ocr_db_crnn_server --input_path /home/wuhuaxu/identity_ch.png --visualization=False --use_gpu=False
异常:Segmentation fault (core dumped)
注:20240313 暂时没找到解决的方法
2.3 其他
2.3.1 如何卸载、pip常用命令、常见问题
https://github.com/PaddlePaddle/PaddleHub/blob/release/v1.8/docs/install.md
2.3.2 PaddleHub命令行工具
https://github.com/PaddlePaddle/PaddleHub/blob/release/v1.8/docs/tutorial/cmdintro.md
三、基于PaddleHub Serving的服务部署(失败)
deploy/hubserving/readme.md · PaddlePaddle/PaddleOCR - Gitee.com
https://github.com/PaddlePaddle/PaddleHub/blob/release/v1.8/docs/tutorial/serving.md
异常:ImportError: dlopen: cannot load any more object with static TLS
# 先进入PaddlePaddle所在的Anaconda虚拟环境:conda activate {paddle_env}。
# 然后在 /home/xxx/workspace/PaddleOCR-release-2.3 执行下面的命令
hub install deploy/hubserving/ocr_system/
异常
File "/home/wuhuaxu/workspace/anaconda3/envs/paddle_env/lib/python3.8/site-packages/skimage/__init__.py", line 122, in <module>
_raise_build_error(e)
File "/home/wuhuaxu/workspace/anaconda3/envs/paddle_env/lib/python3.8/site-packages/skimage/__init__.py", line 100, in _raise_build_error
raise ImportError("""%s
ImportError: dlopen: cannot load any more object with static TLS
It seems that scikit-image has not been built correctly.
Your install of scikit-image appears to be broken.
Try re-installing the package following the instructions at:
https://scikit-image.org/docs/stable/install.html
娟娟:20240313 此处操作未完成,待后期再处理