执行python web_demo.py,得到微调后的效果: 也可以使用命令行启动 添加新的文件pt_terminal_demo.py import os import torch from transformers import AutoConfig, AutoModel, AutoTokenizer MODEL_PATH = "/mnt/workspace/ChatGLM2-6B/module" CHECKPOINT_PATH = "/mnt/workspace/ChatGLM2-6B/ptuning/output/ad...
官方提供了一个脚本web_demo.sh,我们打开这个文件,只需要修改下model_name_or_path和ptuning_checkpoint即可。 model_name_or_path值改成/ChatGLM2-6B/THUDM/chatglm2-6b ptuning_checkpoint值改成你自己微调保存模型路径 为了能公网正常访问,还需要改下web_demo.py,将该文件162行代码改为: demo.queue().laun...
4、ptuning微调问题 按ptuing/readme.md的介绍,把AdvertiseGen训练了一把,量化8(其它核心参数没改) 代码语言:javascript 复制 PRE_SEQ_LEN=128LR=2e-2NUM_GPUS=1torchrun--standalone--nnodes=1--nproc-per-node=$NUM_GPUSmain.py \--do_train \--train_file AdvertiseGen/train.json \--validation_fil...
P-Tuning v2 将需要微调的参数量减少到原来的 0.1%,再通过模型量化、Gradient Checkpoint 等方法,最低只需要 7GB 显存即可运行。 官方文档地址:https://github.com/THUDM/ChatGLM2-6B/tree/main/ptuning 下面以 ADGEN (广告生成) 数据集为例介绍代码的使用方法。 租用机器 我们所使用的环境是矩池云 ChatGLM2...
2. LoRA微调:通过高阶矩阵秩的分解减少微调参数量,不改变预训练模型参数,新增参数。优点是减少了微调的参数量和成本,同时能达到与全模型微调相近的效果。 3. P-tuning v2微调:引入了prefix-tuning的思想,每一层都加入了prefix,并采用了多任务学习。解决了P-tuning v1中序列标注任务效果不佳和普遍性差的问题。其...
模型微调 准备好训练数据, 执行train.shIn [ ] # 使用p-tuning对chatglm-6b进行微调 # 先手动把ptuningv2.zip解压到work/ptuningv2 , 再执行train.sh, 训练参数也是在这个文件中设定的 !bash work/ptuningv2/train.sh # train.sh内容 # PRE_SEQ_LEN=128 # LR=2e-2 # CUDA_VISIBLE_DEVICES=0 python...
2. LoRA微调:通过高阶矩阵秩的分解减少微调参数量,不改变预训练模型参数,新增参数。优点是减少了微调的参数量和成本,同时能达到与全模型微调相近的效果。 3. P-tuning v2微调:引入了prefix-tuning的思想,每一层都加入了prefix,并采用了多任务学习。解决了P-tuning v1中序列标注任务效果不佳和普遍性差的问题。其...
ChatGLM2-6B的微调方法主要包括LoRA、P-Tuning V2和Freeze等。这些方法各有特点,可以根据具体需求选择适合的方法进行微调。 1. LoRA方法 LoRA方法通过仅微调低秩适应器来实现模型的快速适应。这种方法在保持模型大部分参数不变的情况下,仅对部分参数进行微调,从而降低了计算成本和存储需求。 2. P-Tuning V2方法 P-...
2. LoRA微调:通过高阶矩阵秩的分解减少微调参数量,不改变预训练模型参数,新增参数。优点是减少了微调的参数量和成本,同时能达到与全模型微调相近的效果。 3. P-tuning v2微调:引入了prefix-tuning的思想,每一层都加入了prefix,并采用了多任务学习。解决了P-tuning v1中序列标注任务效果不佳和普遍性差的问题。其...
综上所述,各种微调方法适用于不同的场景和任务。SFT监督微调适用于快速适应目标任务,LoRA适用于减少参数量和成本,P-tuning v2适用于多任务学习,而Freeze适用于提取特定层次的特征。 1.下载glm2训练脚本 git clonehttps://github.com/THUDM/ChatGLM2-6B.git ...