Go to file
p02476819 21afc62976 修改 2024-11-12 02:28:03 +00:00
datasets 修改 2024-11-12 02:28:03 +00:00
logs 修改 2024-11-12 02:28:03 +00:00
model_final 修改 2024-11-12 02:28:03 +00:00
test_set 修改 2024-11-12 02:28:03 +00:00
training 修改 2024-11-12 02:28:03 +00:00
.gitattributes 修改 2024-11-12 02:28:03 +00:00
.gitignore 修改 2024-11-12 02:28:03 +00:00
dockerfile 修改 2024-11-12 02:28:03 +00:00
environment.yml 修改 2024-11-12 02:28:03 +00:00
inference.py 修改 2024-11-12 02:28:03 +00:00
readme.md 修改 2024-11-12 02:28:03 +00:00
requirements.txt 修改 2024-11-12 02:28:03 +00:00

readme.md

CPM 训练框架文档

本文档介绍基于 PyTorch 的 CPM 大规模语言模型训练系统。训练完成的模型将存储在 model_final 目录。

conda在https://lz-1305252147.cos.ap-guangzhou.myqcloud.com/code/llm_conda.tar.gz

一、环境配置指南

硬件配置清单

必要配置:

  • GPU4张 NVIDIA A10080GB显卡
  • 单卡训练批次4

软件环境:

  • CUDA 版本12.1
  • Python 环境3.10
  • 深度学习框架PyTorch + accelerate

环境部署方案

选项1基于容器

# Step 1: 获取基础镜像
docker pull pytorch/pytorch:2.4.0-cuda12.1-cudnn9-devel

# Step 2: 运行容器实例
docker run --gpus all \
    -v $(pwd):/workspace \
    pytorch/pytorch:2.4.0-cuda12.1-cudnn9-devel

选项2基于conda

# Step 1: 创建虚拟环境
conda create -n cpm python=3.10

# Step 2: 激活环境
conda activate cpm

# Step 3: 安装依赖包
pip install -r requirements.txt

conda env create -f environment.yml

二、操作流程详解

2.1 前期准备

实验监控配置(可选):

# 配置wandb监控
wandb login

2.2 模型训练步骤

  1. 修改训练配置:
# 编辑训练脚本
vim train.sh  # 设置模型路径等参数
  1. 执行训练:
# 进入训练目录并启动
cd training
bash train.sh

2.3 效果验证

验证指标:

  • 验证集损失应当低于0.52
  • 推荐保存训练过程中的多个检查点

2.4 推理部署

示例代码:

# 核心配置项
inference_config = {
    'model_path': './checkpoints/best_model',  # 模型路径
    'input_path': './data/input.txt',         # 输入文件
    'output_path': './results/output.txt'     # 输出文件
}

# 执行推理
python inference.py

三、关键注意事项

性能调优须知

  • 严格遵守GPU数量要求
  • 保持默认批处理大小不变
  • 不建议修改accelerate默认配置

实验记录管理

实验数据查看方式:

  • 实时监控wandb平台
  • 本地记录:training/wandb目录

四、最优实践建议

  1. 优先考虑容器化部署
  2. 建立完善的检查点备份机制
  3. 持续监控训练指标变化
  4. 保持训练环境的一致性

五、补充说明

系统文件说明:

  • 根目录:配置文件
  • Docker相关自定义镜像构建文件
  • 监控工具wandb集成支持

六、故障排查指南

常见问题处理:

  1. 内存溢出:检查批次大小设置
  2. 训练中断:查看显卡状态
  3. 性能不佳:确认环境配置

七、版本说明

当前版本特性:

  • 支持分布式训练
  • 提供完整监控方案
  • 优化内存使用效率