- 1 如何部署运行chatglm-6b
- 2 如何使用LORA微调chatGLM-6B模型,单卡,多卡均可。
https://github.com/THUDM/ChatGLM-6B/issues/200
https://github.com/yuanzhoulvpi2017/zero_nlp/
- 1、git clone https://huggingface.co/THUDM/chatglm-6b.git
- 2、安装依赖
pip3 install protobuf==3.20.0 transformers==4.26.1 icetk cpm_kernels
- 3、修改 chat_interact.py 中的 PRE_TRAINED_MODEL_PATH='上面克隆的chatglm-6b文件夹路径'
- 4、运行代码 python3 chat_interact.py
- 5、生成效果如下: 回答问题
- 1 准备数据集,我改造了作者原来的csv数据集,换成了alpaca json格式
- 2 运行start_train.sh 训练代码,这是单卡训练
- 3 多卡训练,至少2张,测试使用2张、4张均可,理论上支持任意张卡。
- chat_interact.py 交互式对话,命令行下运行,一般用于测试机器人对话。
- chat_server.py 连接数据库,根据数据表对话内容,排队进行回答,并将生成内容回写到表,它依赖我写的数据库连接组件,另外还有一个http服务接收前端请求。
- start_chat_server.sh 启动chat_server.py
- data 训练数据集
- fine-tuning 单GPU训练代码目录
- model 预训练的模型文件存储目录,这里面不包含.bin文件,需要将bin复制进来,当然这个目录你也可以放到其它任意位置。
训练需要安装如下依赖 pip3 install datasets pip3 install peft
- model 预训练的模型文件存储目录,这里面不包含.bin文件,需要将bin复制进来,当然这个目录你也可以放到其它任意位置。
- start_train.sh 单卡训练shell
- parallel multi gpu fine tuning 目录
- preprocess 生成测试数据代码
请使用transformers==4.27.1
- 系统版本:CentOS Linux release 7.9.2009 (Core)
- 内核版本:3.10.0-1160.el7.x86_64
- python 版本:3.7.16
- NVIDIA驱动版本: 515.65.01
- CUDA 版本:11.7
- cuDNN 版本:v8.8.0
- GPU:P40 24gb * 8