踩坑2天,終於成功。趁熱記下來。
還是在阿里雲機器嘗試。
項目主頁:https://github.com/TsinghuaAI/CPM-Generate
1 機器
購買機器,按量計費。
-- ubuntu18,2塊顯卡P100,CUDA 10.2
-- 勾選自動安裝GPU驅動,CUDA 10.2.89,cuDNN 7.6.5,等待。
2 軟件環境配置
使用anaconda。當前最新是2020.11發布的,往后倒退一個版本。
Anaconda3-5.3.1-Linux-x86_64.sh 637.0M 2018-11-19 13:38:46
下載,wget https://repo.anaconda.com/archive/Anaconda3-5.3.1-Linux-x86_64.sh
安裝,sh Anaconda3-5.3.1-Linux-x86_64.sh
配置都選擇默認,等待完成。
source ~/anaconda3/bin/activate
conda create --name cpm1
等待安裝
選擇python環境,conda activate cpm1
root權限,apt install git
, apt install cmake
3 CPM及依賴包的安裝
3.1 源代碼
cd ~/git/
git clone https://github.com/TsinghuaAI/CPM-Generate.git
3.2 依賴
source ~/anaconda3/bin/activate
conda activate cpm1
pip install -r requirements.txt
git clone https://github.com/NVIDIA/apex
cd apex
pip install -v --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./
注意幾點:
(1)我的jieba手動安裝
pip install jieba -i https://pypi.tuna.tsinghua.edu.cn/simple --default-timeout=100
(2)我的deepspeed手動安裝
pip install deepspeed -i https://pypi.tuna.tsinghua.edu.cn/simple --default-timeout=100
(3)我的sentencepiece沒有安裝成功,使用源碼安裝
git clone https://github.com/google/sentencepiece.git
cd sentencepiece
mkdir build
cd build
cmake ..
make -j $(nproc)
sudo make install
sudo ldconfig -v
cd ../python
python setup.py build
python setup.py install
4 下載模型
模型主頁:https://cpm.baai.ac.cn/download.html
wget https://baai.org/l/QLtmx
mv QLtmx model-v1.tar.gz
tar -zxvf model-v1.tar.gz
5 運行示例
python generate_samples.py \
--model-parallel-size 2 \
--num-layers 32 \
--hidden-size 2560 \
--load ./model-v1/80000/mp_rank_00_model_states.pt \
--num-attention-heads 32 \
--seq-length 1024 \
--max-position-embeddings 1024 \
--fp16 \
--cache-dir cache \
--out-seq-length 512 \
--temperature 0.9 \
--top_k 0 \
--top_p 0 \
--tokenizer-path bpe_3w_new/ \
--vocab-size 30000 \
--input-text example.txt
一個結果: