大语言模型ChatGLM + P-Tuning微调实践

大语言模型ChatGLM + P-Tuning微调实践

文章目录

  • 大语言模型ChatGLM + P-Tuning微调实践
    • LLM微调基础
    • 本次实践环境说明
    • ChatGLM部署以及激活conda环境
      • 安装依赖
      • 禁用 W&B
    • 训练数据集、测试数据集准备
    • 微调参数调整(train.sh\evaluate.sh)
    • 参数说明备查
    • 训练
    • 推理
    • 验证
    • 可能会遇到的问题及解决

LLM微调基础

LLM微调可以对原有预模型进行专业领域知识的训练,相关领域知识需要进行预处理整理成语料,语料越充分相对来说微调后的模型预测越准,还要结合调参,反复地训练,才有可能达到预期的效果。

微调模型有多种,包括P-Tuning、LoRA等。本次实践采用P-Tuning。

  • P-Tuning有两个版本:
    1.论文GPT Understands, Too中的Prompt tuning,在本文行文过程中称为P-tuning v1,对应GitHub 代码:https://github.com/THUDM/P-tuningP-Tuning
    2.在论文《P-Tuning v2: Prompt Tuning Can Be Comparable to Fine-tuning Universally Across Scales and Tasks》中提出,GitHub代码:https://github.com/THUDM/P-tuning-v2

本次实践环境说明

序号 资源明细
1 aliyun PAI-DSW,32G内存,16G显卡(NVidia Tesla V100),Ubuntu20.04。
2 镜像环境:pytorch=2.1.2、cuda=12.1、python=3.10、Tensorflow=2.14.0
3 镜像环境:ChatGLM2-6B、P-Tuning V2
4 数据集:采用公开数据集AdvertiseGen

ChatGLM部署以及激活conda环境

在实践前,自行部署好ChatGLM、P-Tuning等,不在此篇赘述。
检查是否在自己安装好的conda chatgml环境中,或者直接激活conda环境。

conda info --envs
conda activate chatglm

重启终端。

安装依赖

安装transformers、jieba、datasets等

# 本次实践进行微调需要 4.27.1 版本的 transformers
install transformers==4.27.1
pip install rouge_chinese nltk jieba datasets

jieba 等库必须安装,否则执行bash train.sh时会报错。

禁用 W&B

# 禁用 W&B
export WANDB_DISABLED=true

训练数据集、测试数据集准备

公开数据集,在镜像中直接下载语料库,语料库正常下载下来名为AdvertiseGen.tar.gz。在ubuntu中使用wget:

wget https://cloud.tsinghua.edu.cn/f/b3f119a008264b1cabd1/?dl=1

或者

 
 

你可能感兴趣的:(AI,人工智能,人工智能,自然语言处理,chatgpt,nlp,transformer,深度学习,机器学习)