起初安裝的是 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倍以上!