当前位置: 首页 > news >正文

trl的安装与单GPU多GPU测试

文章目录

  • 0 相关资料
  • 1 源码安装
  • 2 Qwen2.5-0.5B-Instruct 模型下载
  • 3 训练demo
  • 4 在多个 GPU/节点上进行训练
  • 总结

0 相关资料

https://github.com/huggingface/trl
https://blog.csdn.net/weixin_42486623/article/details/134326187

TRL 是一个先进的库,专为训练后基础模型而设计,采用了监督微调 (SFT)、近端策略优化 (PPO) 和直接偏好优化 (DPO) 等先进技术。TRL 建立在 🤗 Transformers 生态系统之上,支持多种模型架构和模态,并可在各种硬件配置上进行扩展。

b站视频:https://www.bilibili.com/video/BV18ndfYfEcz/

PyTorch / 2.3.0 / 3.12(ubuntu22.04) / 12.1

在这里插入图片描述

1 源码安装

source /etc/network_turbo
git clone https://github.com/huggingface/trl.git
cd trl/
pip install -e .
source /etc/network_turbo
pip install trl transformers datasets accelerate

2 Qwen2.5-0.5B-Instruct 模型下载

https://www.modelscope.cn/models/Qwen/Qwen2.5-0.5B-Instruct

source /etc/network_turbo
pip install modelscope

采用SDK方式下载

from modelscope import snapshot_download# 指定模型的下载路径
cache_dir = '/root/'
# 调用 snapshot_download 函数下载模型
model_dir = snapshot_download('Qwen/Qwen2.5-0.5B-Instruct', cache_dir=cache_dir)print(f"模型已下载到: {model_dir}")

3 训练demo

demo.py
执行脚本前,输入:

source /etc/network_turbo
from trl import SFTTrainer
from datasets import load_datasetdataset = load_dataset("trl-lib/Capybara", split="train")trainer = SFTTrainer(model="/root/Qwen/Qwen2.5-0.5B-Instruct",train_dataset=dataset,
)
trainer.train()

在这里插入图片描述

00:15<1:57:58,

在这里插入图片描述

4 在多个 GPU/节点上进行训练

执行脚本前,输入:

source /etc/network_turbo
accelerate launch --config_file=examples/accelerate_configs/multi_gpu.yaml --num_processes 2 demo.py --all_arguments_of_the_script

在这里插入图片描述

在这里插入图片描述

总结

一块L20 GPU 48G,需要2小时
两块L20 GPU 48G,需要0.5小时
速度提升明显

相关文章:

  • 一文读懂WPF系列之依赖属性与附加属性
  • C++进阶——C++11_智能指针
  • 架构思维:缓存层场景实战_读缓存(下)
  • 【已更新完毕】2025泰迪杯数据挖掘竞赛C题数学建模思路代码文章教学:竞赛智能客服机器人构建
  • 如何高效使用 Text to SQL 提升数据分析效率?四个关键应用场景解析
  • Token安全存储的几种方式
  • Docker 搭建 RabbitMQ
  • 我的机器学习之路(初稿)
  • Django之modelform使用
  • ORACLE数据库转国产阿里OceanBase数据库
  • 【版本控制】git命令使用大全
  • display: flex,导致子dom宽高失效
  • Upwork数据战争:用爬虫与AI预测垄断订单
  • uniapp小程序位置授权弹框与隐私协议耦合(合而为一)(只在真机上有用,模拟器会分开弹 )
  • 单例模式-3-双检锁/双重校验锁(DCL,即 double-checked locking)
  • Spark-SQL核心编程语言
  • 详解@JsonFormat和@DateTimeFormat注解:处理日期格式化的利器
  • Bright+Data网页解锁器在旅游行业的创新实践
  • 【深入C++多态:基于消息解析器的设计、实现与剖析】
  • T4P: Test-Time Training of Trajectory Prediction
  • 中国金茂新任命三名副总裁,撤销区域公司
  • 欧盟决意与俄罗斯能源彻底决裂之际,美国谋划新生意:进口俄气对欧转售
  • 报告:4月份新增发行的1763亿元专项债中,投向房地产相关领域约717亿元
  • 习近平出席俄罗斯纪念苏联伟大卫国战争胜利80周年庆典
  • 中国天主教组织发贺电对新教皇当选表示祝贺
  • 无人机穿越大理千年古塔落券洞内,涉事“飞手”被行拘10日