在 AI 學習紀錄 – 利用 Docker 部屬模型這篇文章裡,開始試用 Nvidia Docker 來部屬不同的模型,來確保未來的可用性。裝第一個 chatGLM2的時候還蠻順利的,後面裝 langchain-chatchat 就遇到一點小麻煩。後來的 stable diffusion 則是完全不成功,最後只能用 CPU 跑。目前我是接受了在 docker 只能用 CPU 跑的問題,因為我發現安裝的程序也不一樣了 … 比起每次要研究怎麼裝,用 CPU 還算可以忍受,輕度使用還行。
所以就特別開了一篇,來紀錄安裝這些特別 case 的文章。不過隨著版本的改進,有些問題在新版可能就沒了,或者會產生新的問題,還請讀者心裡先有個底。
還有,在 docker 裡就不用裝 anaconda 了,獨有的環境沒有被弄壞的問題。
Landchain-ChatChat
landchain-chatchat 照正常程序在docker安裝後,在最後執行時會出現
可以把 transformer-engine 移除就可以解決問題。
1 |
pip uninstall transformer_engine |
Stable Diffusion
步驟比較多,請參考下面說明
1 2 3 4 5 6 7 8 9 10 11 12 |
docker pull ubuntu:22.04 docker run -p 7860:7860 --gpus all --ipc=host --ulimit memlock=-1 --ulimit stack=67108864 --name genimg -it ubuntu:22.04 cd apt-get update apt install wget git python3 python3-venv libgl1 libglib2.0-0 vim python3-pip pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu wget -q https://raw.githubusercontent.com/AUTOMATIC1111/stable-diffusion-webui/master/webui.sh chmod a+x webui.sh # 將下面這一行加入webui.sh比較前面的地方 #export COMMANDLINE_ARGS="--skip-torch-cuda-test --precision full --no-half" #修改 webui.sh 把 can_run_as_root 改成 1 ./webui.sh --listen |