Skip to content

Commit

Permalink
Merge branch 'main' into support_ppo
Browse files Browse the repository at this point in the history
  • Loading branch information
Jintao-Huang committed Dec 31, 2024
2 parents ed3e2c3 + d87d8ed commit 13e86a0
Show file tree
Hide file tree
Showing 43 changed files with 397 additions and 151 deletions.
2 changes: 1 addition & 1 deletion .dev_scripts/ci_container_test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ if [ "$MODELSCOPE_SDK_DEBUG" == "True" ]; then

# test with install
pip install .
pip install auto_gptq bitsandbytes deepspeed -U -i https://mirrors.aliyun.com/pypi/simple/
pip install auto_gptq bitsandbytes deepspeed==0.14.* -U -i https://mirrors.aliyun.com/pypi/simple/
else
echo "Running case in release image, run case directly!"
fi
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ my_model/
/data
result/
images
/custom
/custom/

# Pytorch
*.pth
Expand Down
2 changes: 1 addition & 1 deletion docs/source/Instruction/ReleaseNote3.0.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

1. 数据集模块重构。数据集加载速度提升2-20倍,encode速度提升2-4倍,支持streaming模式
- 移除了dataset_name机制,采用dataset_id、dataset_dir、dataset_path方式指定数据集
- 使用`--dataset_num_proc`支持多进程加速处理、使用`--enable_cache true`支持使用数据前处理缓存
- 使用`--dataset_num_proc`支持多进程加速处理
- 使用`--streaming`支持流式加载hub端和本地数据集
- 支持`--packing`命令以获得更稳定的训练效率
- 指定`--dataset <dataset_dir>`支持本地加载开源数据集
Expand Down
64 changes: 62 additions & 2 deletions docs/source/Instruction/命令行参数.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# 命令行参数

命令行参数的介绍会分为基本参数,原子参数和集成参数。命令行最终使用的参数列表为集成参数。集成参数继承自基本参数和一些原子参数。
命令行参数的介绍会分为基本参数,原子参数、集成参数和特定模型参数。命令行最终使用的参数列表为集成参数。集成参数继承自基本参数和一些原子参数。特定模型参数是针对于具体模型的参数,可以通过`--model_kwargs'`或者环境变量进行设置

## 基本参数

- 🔥tuner_backend: 可选为'peft', 'unsloth', 默认为'peft'
- 🔥train_type: 默认为'lora'. 可选为: 'lora', 'full', 'longlora', 'adalora', 'llamapro', 'adapter', 'vera', 'boft', 'fourierft', 'reft'
- 🔥adapters: 用于指定adapter的id/path的list,默认为`[]`.
- seed: 默认为42
- model_kwargs: 特定模型可传入的额外参数. 该参数列表会在训练推理时打印日志进行提示
- model_kwargs: 特定模型可传入的额外参数. 该参数列表会在训练推理时打印日志进行提示,例如`--model_kwargs '{"fps_max_frames": 12}'`
- load_args: 当指定`--resume_from_checkpoint`, `--model`, `--adapters`会读取保存文件中的`args.json`,将默认为None的`基本参数`(除去数据参数和生成参数)进行赋值(可通过手动传入进行覆盖)。默认为True
- load_data_args: 如果将该参数设置为True, 则会额外读取数据参数. 默认为False
- use_hf: 默认为False. 控制模型下载、数据集下载、模型push的hub
Expand Down Expand Up @@ -392,3 +392,63 @@ App参数继承于[部署参数](#部署参数), [Web-UI参数](#Web-UI参数)
- hub_model_id: 推送的model_id,默认为None
- hub_private_repo: 是否是private repo,默认为False
- commit_message: 提交信息,默认为'update files'


## 特定模型参数
特定模型参数可以通过`--model_kwargs`或者环境变量进行设置,例如: `--model_kwargs '{"fps_max_frames": 12}'`或者`FPS_MAX_FRAMES=12`

### qwen2_vl, qvq
参数含义可以查看[这里](https://github.com/QwenLM/Qwen2-VL/blob/main/qwen-vl-utils/src/qwen_vl_utils/vision_process.py#L24)

- IMAGE_FACTOR: 默认为28
- MIN_PIXELS: 默认为`4 * 28 * 28`
- MAX_PIXELS: 默认为`16384 * 28 * 28`,参考[这里](https://github.com/modelscope/ms-swift/blob/main/examples/train/multimodal/ocr.sh#L3)
- MAX_RATIO: 默认为200
- VIDEO_MIN_PIXELS: 默认为`128 * 28 * 28`
- VIDEO_MAX_PIXELS: 默认为`768 * 28 * 28`,参考[这里](https://github.com/modelscope/ms-swift/blob/main/examples/train/multimodal/video.sh#L7)
- VIDEO_TOTAL_PIXELS: 默认为`24576 * 28 * 28`
- FRAME_FACTOR: 默认为2
- FPS: 默认为2.0
- FPS_MIN_FRAMES: 默认为4
- FPS_MAX_FRAMES: 默认为768,参考[这里](https://github.com/modelscope/ms-swift/blob/main/examples/train/multimodal/video.sh#L8)

### internvl, internvl_phi3
参数含义可以查看[这里](https://modelscope.cn/models/OpenGVLab/Mini-InternVL-Chat-2B-V1-5)
- MAX_NUM: 默认为12
- INPUT_SIZE: 默认为448

### internvl2, internvl2_phi3, internvl2_5
- MAX_NUM: 默认为12
- INPUT_SIZE: 默认为448
- VIDEO_MAX_NUM: 默认为1。视频的MAX_NUM
- VIDEO_SEGMENTS: 默认为8


### minicpmv2_6
- MAX_SLICE_NUMS: 默认为9,参考[这里](https://modelscope.cn/models/OpenBMB/MiniCPM-V-2_6/file/view/master?fileName=config.json&status=1)
- VIDEO_MAX_SLICE_NUMS: 默认为1,视频的MAX_SLICE_NUMS,参考[这里](https://modelscope.cn/models/OpenBMB/MiniCPM-V-2_6)
- MAX_NUM_FRAMES: 默认为64,参考[这里](https://modelscope.cn/models/OpenBMB/MiniCPM-V-2_6)

### ovis1_6
- MAX_PARTITION: 参考[这里](https://github.com/AIDC-AI/Ovis/blob/d248e34d755a95d24315c40e2489750a869c5dbc/ovis/model/modeling_ovis.py#L312)

### mplug_owl3, mplug_owl3_241101
- MAX_NUM_FRAMES: 默认为16,参考[这里](https://modelscope.cn/models/iic/mPLUG-Owl3-7B-240728)

### xcomposer2_4khd
- HD_NUM: 默认为55,参考[这里](https://modelscope.cn/models/Shanghai_AI_Laboratory/internlm-xcomposer2-4khd-7b)

### xcomposer2_5
- HD_NUM: 图片数量为1时,默认值为24。大于1,默认为6。参考[这里](https://modelscope.cn/models/AI-ModelScope/internlm-xcomposer2d5-7b/file/view/master?fileName=modeling_internlm_xcomposer2.py&status=1#L254)

### video_cogvlm2
- NUM_FRAMES: 默认为24,参考[这里](https://github.com/THUDM/CogVLM2/blob/main/video_demo/inference.py#L22)

### phi3_vision
- NUM_CROPS: 默认为4,参考[这里](https://modelscope.cn/models/LLM-Research/Phi-3.5-vision-instruct)

### llama3_1_omni
- N_MELS: 默认为128,参考[这里](https://github.com/ictnlp/LLaMA-Omni/blob/544d0ff3de8817fdcbc5192941a11cf4a72cbf2b/omni_speech/infer/infer.py#L57)

### video_llava
- NUM_FRAMES: 默认为16
Loading

0 comments on commit 13e86a0

Please sign in to comment.