360-LLaMA-Factory 项目使用说明
1. 项目目录结构及介绍
360-LLaMA-Factory
项目目录结构如下:
360-LLaMA-Factory/
├── .github/ # GitHub 工作流和配置文件
├── assets/ # 额外的资源文件
├── data/ # 数据文件存放目录
├── docker/ # Docker 相关文件
├── evaluation/ # 评估脚本和结果
├── examples/ # 示例脚本和配置
├── scripts/ # 执行脚本
├── src/ # 源代码目录
├── tests/ # 测试代码
├── .dockerignore # Docker 忽略文件
├── .env.local # 本地环境变量配置
├── .gitattributes # Git 属性文件
├── .gitignore # Git 忽略文件
├── .pre-commit-config.yaml # pre-commit 配置文件
├── CITATION.cff # 项目引用文件
├── LICENSE # 开源协议文件
├── MANIFEST.in # 打包时包含的文件列表
├── Makefile # Makefile 文件
├── README.md # 项目说明文件
├── README_zh.md # 项目说明文件(中文)
├── pyproject.toml # Python 项目配置文件
├── requirements.txt # 项目依赖文件
├── setup.py # Python 包设置文件
└── 360-example.sh # 示例启动脚本
每个目录和文件的具体用途已在上述结构中简要介绍。
2. 项目的启动文件介绍
项目的启动文件主要是 360-example.sh
脚本,它提供了如何使用 DeepSpeed 启动训练的示例。以下是 360-example.sh
的一个片段:
deepspeed --hostfile=8nodes.host src/train.py \
--max_position_embeddings 1024 \
--seq_length 1024 \
--micro_batch_size 32 \
--LR 3e-4 \
--训练数据路径 /path/to/train/data \
--验证数据路径 /path/to/valid/data
这个脚本演示了如何使用 DeepSpeed 进行多节点分布式训练,包括指定主机文件、设置最大位置嵌入、序列长度、微批次大小、学习率以及数据路径等。
3. 项目的配置文件介绍
项目的配置文件通常是 YAML 格式,用于设置训练和模型参数。以下是一个示例配置文件的部分内容:
sequence_parallel_size: 4
sequence_parallel_mode: "zigzag-ring"
cutoff_len: 128000
sequence_parallel_size
: 设置序列并行的 GPU 数量。sequence_parallel_mode
: 设置序列并行的模式,可以是"zigzag-ring"
或"ulysses"
。cutoff_len
: 设置训练数据的截断长度。
配置文件通常位于 examples/
目录中,可以根据需要修改这些文件以满足不同的训练需求。在命令行启动训练时,也可以通过命令行参数覆盖配置文件中的设置。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考