第七篇-Tesla P40+ChatGLM2+P-Tuning

文章介绍了在CentOS7环境中使用ChatGLM2-6B模型进行微调的过程,包括设置环境、安装依赖、数据准备、代码调整和验证,重点展示了如何在TeslaP40GPU上进行训练并评估效果。

本文目的

本文仅仅是测试一下ptuning技术方案,使用少量数据测试下微调流程

环境

  系统:CentOS-7
  CPU: 14C28T
  显卡:Tesla P40 24G
  驱动: 515
  CUDA: 11.7
  cuDNN: 8.9.2.26

模型文件

https://huggingface.co/THUDM/chatglm2-6b
下载模型相关文件到自己目录
我的是/models/chatglm2-6b

[root@ai-server chatglm2-6b]# pwd
/models/chatglm2-6b
[root@ai-server chatglm2-6b]# ll -h
total 12G
-rw-r--r--. 1 root root   678 Jul 29 09:30 cli.py
-rw-r--r--. 1 root root  1.2K Jul 29 09:30 config.json
-rw-r--r--. 1 root root  2.2K Jul 29 09:30 configuration_chatglm.py
-rw-r--r--. 1 root root   50K Jul 29 09:30 modeling_chatglm.py
-rw-r--r--. 1 root root  4.1K Jul 29 09:30 MODEL_LICENSE.txt
-rw-r--r--. 1 root root  1.8G Jul 29 09:33 pytorch_model-00001-of-00007.bin
-rw-r--r--. 1 root root  1.9G Jul 29 09:33 pytorch_model-00002-of-00007.bin
-rw-r--r--. 1 root root  1.8G Jul 29 09:33 pytorch_model-00003-of-00007.bin
-rw-r-
开始连接到 临时用户@10.139.200.34 0.0 Last login: Fri Aug 15 19:46:56 2025 from 10.139.102.68 [jydw@kindiserver ~]$ nvidia-smi Fri Aug 15 23:25:55 2025 +---------------------------------------------------------------------------------------+ | NVIDIA-SMI 535.54.03 Driver Version: 535.54.03 CUDA Version: 12.2 | |-----------------------------------------+----------------------+----------------------+ | GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |=========================================+======================+======================| | 0 Tesla P40 On | 00000000:04:00.0 Off | 0 | | N/A 26C P8 10W / 250W | 0MiB / 23040MiB | 0% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+ | 1 Tesla P40 On | 00000000:05:00.0 Off | 0 | | N/A 28C P8 10W / 250W | 0MiB / 23040MiB | 0% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+ | 2 Tesla P40 On | 00000000:08:00.0 Off | 0 | | N/A 26C P8 9W / 250W | 0MiB / 23040MiB | 0% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+ | 3 Tesla P40 On | 00000000:09:00.0 Off | 0 | | N/A 27C P8 10W / 250W | 0MiB / 23040MiB | 0% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+ | 4 Tesla P40 On | 00000000:84:00.0 Off | 0 | | N/A 26C P8 9W / 250W | 0MiB / 23040MiB | 0% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+ | 5 Tesla P40 On | 00000000:85:00.0 Off | 0 | | N/A 28C P8 9W / 250W | 0MiB / 23040MiB | 0% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+ | 6 Tesla P40 On | 00000000:88:00.0 Off | 0 | | N/A 24C P8 9W / 250W | 0MiB / 23040MiB | 0% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+ | 7 Tesla P40 On | 00000000:89:00.0 Off | 0 | | N/A 23C P8 9W / 250W | 0MiB / 23040MiB | 0% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+ +---------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=======================================================================================| | No running processes found | +---------------------------------------------------------------------------------------+ [jydw@kindiserver ~]$ 。结合docker,堡垒机对挂载,注意事项 1. 容器创建时,工程目录挂载命令必须是 -v 宿主机ultralytics文件所在的上一级目录:/code/ultralytics/,因为镜像在制作时ultralytics模块默认安装在/code/ultralytics/下,目录挂载错误会报找不到MouldeNotFound错误。 [图片] 2. 数据生成时由xml转换为txt的voc_label_yyq.py中的类别及类别顺序需与训练工程bas/cfg/datasts/voc_xxx.yaml中的类别及类别顺序一致,否则会导致模型不收敛,产生错误。 3. bas/cfg/datasts/voc_xxx.yaml中的类别个数需与base/cfg/models/yolov8x_xx.yaml中的nc个数保持一致,否则会报错。 4. bas/cfg/datasts/voc_xxx.yaml选择某个模型结构时需将其他结构的模型注释掉,否则程序从头到尾顺序读取,默认读取到的第一个结构为默认预训练模型结构。 5. 训练脚本中model=YOLO()后面加载的模型需与model.train(pretrained="")中的预训练模型相同,否则默认加载pretrained中的模型。 6. 测试脚本detect.py中model_classes中的类别及类别顺序需要与bas/cfg/datasts/voc_xxx.yaml中的类别及类别顺序一致,否则会出现检测框位置对但是对应的标签错乱的情况。做出十分详细的操作步骤,从生成文件夹,工程文件应该如何安排,是本机还是复制到堡垒机,docker相关命令注释在本机还是堡垒机终端运行,给出解决办法,堡垒机终端使用ssh连接
最新发布
08-19
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值