工具介绍及准备工作
本章节主要介绍针对LLaMAFactory开发的测试工具benchmark,支持训练、性能对比、下游任务评测、loss和下游任务对比能力。对比结果以excel文件呈现。方便用户验证发布模型的质量。所有配置都通过yaml文件设置,用户查看默认yaml文件即可知道最优性能的配置。
目前仅支持SFT指令监督微调训练阶段。
benchmark ├── config # 默认的配置,使用前根据实际情况修改数据集路径dataset_dir、权重路径model_name_or_path ├── deepspeed # zero配置文件目录 ├── accuracy_cfgs.yaml # 精度测试yaml配置文件 ├── performance_cfgs.yaml # 性能测试yaml配置文件 ├── llama_factory_performance_baseline.yaml # LlamaFactory基于GP-Ant8训练性能基线值 ├── llama_factory_accuracy_baseline.yaml # LlamaFactory基于GP-Ant8训练精度基线值 ...... ├── ...... ├── src # 工具代码目录 ├── accuracy.py #精度测试脚本 ├── common_utils.py #获取训练日志工具 ├── performance.py #性能测试脚本 ├── trainer.py #训练启动脚本 ├── data.tgz # 样例数据 ├── setup.py # 构建工具包
约束限制
目前仅支持以下模型:
qwen2.5-7b
qwen2-7b
qwen1.5-7b
llama3.2-3b
llama3.1-8b
llama3-8b
llama2-7b
yi-6b
准备工作
- 完成准备工作内容,生成benchmark-cli工具。
- 解压版本包data.tgz:测试样例数据;比如工作目录为:/homa/ma-user/LLaMAFactory
# 将默认数据解压config同级目录 tar -zxvf ./benchmark/data.tgz ./benchmark/
- 创建test-benchmark目录,该目录存放训练生成的权重文件及训练日志。
# 任意目录创建 mkdir test-benchmark
- 修改yaml文件参数中model_name_or_path、dataset_dir和dataset或eval_dataset参数配置,修改代码目录下accuracy_cfgs.yaml或performance_cfgs.yaml文件内容,参数详解可参考表1。
# 默认参数;根据自己实际要求修改 ## accuracy_cfgs.yaml、performance_cfgs.yaml dataset_dir: /xxxx/benchmark/data/dataset dataset: gsm8k_train_alpaca model_name_or_path: /data/wulan1/model/qwen2.5-7b ## accuracy_cfgs.yaml eval_dataset: gsm8k_test
样例yaml配置文件结构分为
- base块:基础配置块
- ModelName块:该模型所需配置的参数,如qwen2.5-7b块
样例截图如下:
- 开始训练测试,具体步骤参考训练性能测试或训练精度测试,根据实际情况决定。