起初安装的是 paddlepaddle 2.6.1版本。
用的是Taskflow的快速分词以及ner快速识别:
seg_accurate = Taskflow("word_segmentation", mode="fast")
ner = Taskflow("ner", mode="fast")
但是使用不了Gpu。想使用Gpu去提升一下推理的速度。
就安装了最新的paddlepaddle-gpu 3.2.0版本的库。
但是发现安装后Gpu环境可以使用。
Cpu环境又使用不了了。
会报以下错误:
查了半天,原来是源码device判断这里有一个小bug:
源码/dfs/data/miniconda/envs/Qwen2-New/lib/python3.10/site-packages/paddlenlp/utils/tools.py
的119行。
这个脚本的get_env_device方法判断有误,不管当前设备是Gpu环境还是Cpu环境,它都会返回gpu!
索性直接在调用这里,再次根据当前实际的设备状态去设置了一下device:
源码/dfs/data/miniconda/envs/Qwen2-New/lib/python3.10/site-packages/paddlenlp/taskflow/taskflow.py
782行。
修改后device正确对应了当前设备。
不再报错,Gpu/Gpu环境都正常运行!
Cpu耗时:
Gpu耗时:
性能提升3倍以上!