zoukankan      html  css  js  c++  java
  • 清源CPM代码复现

    踩坑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
    

    一个结果:

  • 相关阅读:
    spock和junit测试报告
    docker复制
    Linux清空文件
    docker run 参数
    C# 线程手册 第三章 使用线程 实现一个数据库连接池(实战篇)
    反射入门
    反射动态调用、实例化窗体的方法
    创建业务逻辑层
    利用C#的反射机制动态调用DLL类库
    C#.Net 持久化对象为XML文件
  • 原文地址:https://www.cnblogs.com/xuehuiping/p/14036357.html
Copyright © 2011-2022 走看看