Initial commit
This commit is contained in:
@@ -0,0 +1,94 @@
|
||||
# About Training Scripts
|
||||
|
||||
We first release the basic training scripts for LLaVA-NeXT. It's based on previous LLaVA's training scripts and researchers familiar with LLaVA will find it easy to use.
|
||||
|
||||
We will gradually release the more detailed training scripts for our LLaVA OneVision models including the mid stage, single-image final stage and one-vision final stage.
|
||||
> They are basically the same as the basic training scripts, but with some modifications, such as the data yaml.
|
||||
|
||||
- `finetune_clip.sh`: This could be seen as the first image version LLaVA-NeXT (2024-01) training script, with `anyres` strategy and maximum 2x2 image grids.
|
||||
- `finetune_siglip.sh`: Same but with `siglip` encoder, each grid becomes 729 tokens.
|
||||
- `finetune_onevision.sh`: This is our latest training script, with `anyres_max_9` strategy and image grids weaving from 1x1 to 6x6, at most to 2304x2304 resolution. Inside the script, we also incorporate the multi-image and video data into training loop. the detail token strategy could be found in our paper.
|
||||
|
||||
# About the LLaVA-OneVision Data
|
||||
|
||||
We need to address the fact that our data has been collected and used in different projects/people. LLaVA-OneVision is our first attempt to integrate these datasets. For the data that has already been uploaded, we will refer you to the corresponding locations. We kindly ask everyone to gather the "fragments" and piece them together into a "diamond" in your own environment.
|
||||
|
||||
Here we explain the some technical details on our data.
|
||||
|
||||
- pretrain data - BLIP558K (same as previous llava 1.5 series)
|
||||
- mid stage data mixture
|
||||
```yaml
|
||||
datasets:
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/blip558k_stage1.5_finetune_w_prompt.json
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/coco118k_stage1.5_finetune_w_prompt.json
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cc3m_recap_data_prompt_v2.json
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/ureader_tr_sft.json
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/instruct_azure_dc_zh_92K.json
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/allava/Evol-Instruct-GPT4-Turbo-143K.json
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/synthdog_zh/synthdog_zh_100k.json
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/synthdog_en/synthdog_en_100k.json
|
||||
sampling_strategy: all
|
||||
```
|
||||
The first three datasets can be collected via the [LLaVA-Recap](https://huggingface.co/collections/lmms-lab/llava-next-6623288e2d61edba3ddbf5ff) series data. We did a slightly modification to make the data more compatible to other data with an added prompt behind `<image>` at each question. You may download our dataset and process it in local environment. Each data we added the **same prompt** "\nPlease generate detailed descriptions of the given image.". Here's an example:
|
||||
```json
|
||||
{
|
||||
"id": "000000000009",
|
||||
"image": "coco/train2017/000000000009.jpg",
|
||||
"conversations": [
|
||||
{
|
||||
"from": "human",
|
||||
"value": "<image>\nPlease generate detailed descriptions of the given image."
|
||||
},
|
||||
{
|
||||
"from": "gpt",
|
||||
"value": "The image shows a meal served in a blue tray with compartments. In the top left compartment, there is a slice of bread with a spread that appears to be butter, accompanied by a few almonds and a slice of what looks like a baked potato or sweet potato. The top right compartment contains a variety of fruits, including what seems to be pineapple, orange slices, and possibly a piece of melon.\n\nIn the bottom left compartment, there is a piece of bread with a spread that could be butter or margarine, and a small portion of what might be a meatball or a similar type of meat covered in a sauce. The bottom right compartment contains a serving of broccoli, which appears to be steamed or lightly cooked.\n\nThe meal is presented in a way that suggests it is a balanced meal, with a variety of food groups represented carbohydrates (bread), protein (meatball), healthy fats (almonds and butter), and fruits and vegetables (broccoli and the fruit assortment). The image is a close-up photograph with a focus on the food, and the colors are vibrant, indicating freshness."
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
The rest files are being uploaded to [LLaVA-OneVision Mid-Stage Data](https://huggingface.co/datasets/lmms-lab/LLaVA-OneVision-Mid-Data), except from `instruct_azure_dc_zh_92K` since it's internal data due and have policy issue (sad but I could preview one example). The `instruct_azure_dc_zh_92K` images are from COCO and QAs are generated by GPT-4V service provided by AzureAI. We uses this data in early stage experiments wishing to add Chinese knowledge to our model, and just kept using it (yes, just legacy, no other specific reason).
|
||||
```json
|
||||
{
|
||||
"id": "000000051920",
|
||||
"image": "azure_dc_zh_92K/000000051920.jpg",
|
||||
"conversations": [
|
||||
{
|
||||
"from": "human",
|
||||
"value": "<image>\n这幅画中的关键信息有哪些?"
|
||||
},
|
||||
{
|
||||
"from": "gpt",
|
||||
"value": "这张图片展示了一位穿着深色(可能是黑色或深蓝色)毛衣的人坐在一张桌子前,正在用右手拿着一片披萨。披萨看起来有多种配料,包括绿色的菠菜和橙红色的番茄,放在一个银色的圆形披萨盘上。披萨盘上还剩下大约六片披萨。在背景中,可以看到一个穿着浅色衣服的人站在柜台后面,柜台上方有一个黑板菜单,上面用白色粉笔写着菜单项,但是字迹不清晰,无法阅读。整个场景看起来像是在一个披萨店内部,环境显得比较休闲。"
|
||||
}
|
||||
],
|
||||
"data_source": "azure_dc_zh_92K"
|
||||
}
|
||||
```
|
||||
|
||||
- single-image stage data mixture
|
||||
|
||||
We have placed our single-image stage data in [single-image-yaml](https://github.com/LLaVA-VL/LLaVA-NeXT/blob/main/scripts/train/single_image.yaml) for users to review. You can download each subset from [onevision-data](https://huggingface.co/datasets/lmms-lab/LLaVA-OneVision-Data).
|
||||
|
||||
Inside the data yaml, the first indicates the previous llava-1.6/next 790K data, you can download them in [llava-next-data](https://huggingface.co/datasets/lmms-lab/LLaVA-NeXT-Data).
|
||||
|
||||
Inside the yaml, the naming would be different with our paper figure due to writing consideration. For users who need to explore our dataset, you can check the [upload script](https://github.com/LLaVA-VL/LLaVA-NeXT/blob/0070d0ae4931c9b19d9cc57c38e16a87c270a61c/playground/upload_data.py#L175) to find the mapping from our local dataset to HF's version.
|
||||
|
||||
- onevision stage data mixture
|
||||
|
||||
Our onevision stage data is available in [onevision-yaml](https://github.com/LLaVA-VL/LLaVA-NeXT/blob/main/scripts/train/onevision.yaml). The single-image portion can be downloaded from the above Huggingface link for onevision data. Here's a breakdown of each part:
|
||||
|
||||
- Around 800K higher-quality data re-sampled from the previous stage (yes, it's data replay!).
|
||||
- [M4-Instruct Data](https://huggingface.co/datasets/lmms-lab/M4-Instruct-Data)
|
||||
- Video Data: We have released the video part along with [llava-video-data](https://huggingface.co/datasets/lmms-lab/LLaVA-Video-178K). Users can download the data, and we utilize the subset used in LLaVA-OneVision:
|
||||
- We have included captions and open-ended questions in the 0_30_s_academic_v0_1 split, along with 240,000 open-ended QA items and 15,000 caption entries, as part of the video data in LLaVA-Hound for LLaVA-OneVision.
|
||||
- 0_30_s_academic_v0_1 captions
|
||||
- 0_30_s_academic_v0_1 open-ended QA
|
||||
- LLaVA-Hound: Same as above.
|
||||
@@ -0,0 +1,65 @@
|
||||
export OMP_NUM_THREADS=8
|
||||
export NCCL_IB_DISABLE=0
|
||||
export NCCL_IB_GID_INDEX=3
|
||||
export NCCL_SOCKET_IFNAME=eth0
|
||||
export NCCL_DEBUG=INFO
|
||||
|
||||
LLM_VERSION="Qwen/Qwen2-7B-Instruct"
|
||||
LLM_VERSION_CLEAN="${LLM_VERSION//\//_}"
|
||||
VISION_MODEL_VERSION="openai/clip-vit-large-patch14-336"
|
||||
VISION_MODEL_VERSION_CLEAN="${VISION_MODEL_VERSION//\//_}"
|
||||
|
||||
############### Pretrain ################
|
||||
|
||||
PROMPT_VERSION="qwen_1_5"
|
||||
|
||||
BASE_RUN_NAME="llavanext-${VISION_MODEL_VERSION_CLEAN}-${LLM_VERSION_CLEAN}-mlp2x_gelu-pretrain_blip558k_plain"
|
||||
echo "BASE_RUN_NAME: ${BASE_RUN_NAME}"
|
||||
|
||||
ACCELERATE_CPU_AFFINITY=1 torchrun --nproc_per_node="${NUM_GPUS}" --nnodes="${NNODES}" --node_rank="${RANK}" --master_addr="${ADDR}" --master_port="${PORT}" \
|
||||
llava/train/train_mem.py \
|
||||
--deepspeed scripts/zero3.json \
|
||||
--model_name_or_path ${LLM_VERSION} \
|
||||
--version ${PROMPT_VERSION} \
|
||||
--data_path=llava_1_6.json \
|
||||
--image_folder your_image_folder \
|
||||
--pretrain_mm_mlp_adapter="/checkpoints/projectors/${BASE_RUN_NAME}/mm_projector.bin" \
|
||||
--mm_tunable_parts="mm_vision_tower,mm_mlp_adapter,mm_language_model" \
|
||||
--mm_vision_tower_lr=2e-6 \
|
||||
--vision_tower ${VISION_MODEL_VERSION} \
|
||||
--mm_projector_type mlp2x_gelu \
|
||||
--mm_vision_select_layer -2 \
|
||||
--mm_use_im_start_end False \
|
||||
--mm_use_im_patch_token False \
|
||||
--group_by_modality_length True \
|
||||
--image_aspect_ratio anyres \
|
||||
--image_grid_pinpoints "[(336, 672), (672, 336), (672, 672), (1008, 336), (336, 1008)]" \
|
||||
--mm_patch_merge_type spatial_unpad \
|
||||
--bf16 True \
|
||||
--run_name $MID_RUN_NAME \
|
||||
--output_dir "/checkpoints/${MID_RUN_NAME}" \
|
||||
--num_train_epochs 1 \
|
||||
--per_device_train_batch_size 4 \
|
||||
--per_device_eval_batch_size 4 \
|
||||
--gradient_accumulation_steps 1 \
|
||||
--evaluation_strategy "no" \
|
||||
--save_strategy "steps" \
|
||||
--save_steps 3000 \
|
||||
--save_total_limit 1 \
|
||||
--learning_rate 1e-5 \
|
||||
--weight_decay 0. \
|
||||
--warmup_ratio 0.03 \
|
||||
--lr_scheduler_type "cosine" \
|
||||
--logging_steps 1 \
|
||||
--tf32 True \
|
||||
--model_max_length 32768 \
|
||||
--gradient_checkpointing True \
|
||||
--dataloader_num_workers 16 \
|
||||
--lazy_preprocess True \
|
||||
--report_to wandb \
|
||||
--torch_compile True \
|
||||
--torch_compile_backend "inductor" \
|
||||
--dataloader_drop_last True \
|
||||
--attn_implementation sdpa
|
||||
|
||||
# You can delete the sdpa attn_implementation if you want to use flash attn
|
||||
@@ -0,0 +1,67 @@
|
||||
export OMP_NUM_THREADS=8
|
||||
export NCCL_IB_DISABLE=0
|
||||
export NCCL_IB_GID_INDEX=3
|
||||
export NCCL_SOCKET_IFNAME=eth0
|
||||
export NCCL_DEBUG=INFO
|
||||
|
||||
LLM_VERSION="Qwen/Qwen2-7B-Instruct"
|
||||
LLM_VERSION_CLEAN="${LLM_VERSION//\//_}"
|
||||
VISION_MODEL_VERSION="google/siglip-so400m-patch14-384"
|
||||
VISION_MODEL_VERSION_CLEAN="${VISION_MODEL_VERSION//\//_}"
|
||||
|
||||
############### Pretrain ################
|
||||
|
||||
PROMPT_VERSION="qwen_1_5"
|
||||
|
||||
BASE_RUN_NAME="llavanext-${VISION_MODEL_VERSION_CLEAN}-${LLM_VERSION_CLEAN}-mlp2x_gelu-pretrain_blip558k_plain"
|
||||
echo "BASE_RUN_NAME: ${BASE_RUN_NAME}"
|
||||
|
||||
CKPT_PATH=$LLM_VERSION # this could also be the previous stage checkpoint
|
||||
|
||||
ACCELERATE_CPU_AFFINITY=1 torchrun --nproc_per_node="${NUM_GPUS}" --nnodes="${NNODES}" --node_rank="${RANK}" --master_addr="${ADDR}" --master_port="${PORT}" \
|
||||
llava/train/train_mem.py \
|
||||
--deepspeed scripts/zero3.json \
|
||||
--model_name_or_path ${CKPT_PATH} \
|
||||
--version ${PROMPT_VERSION} \
|
||||
--data_path=llava_1_6.json \
|
||||
--image_folder your_image_folder \
|
||||
--pretrain_mm_mlp_adapter="/checkpoints/projectors/${BASE_RUN_NAME}/mm_projector.bin" \
|
||||
--mm_tunable_parts="mm_vision_tower,mm_mlp_adapter,mm_language_model" \
|
||||
--mm_vision_tower_lr=2e-6 \
|
||||
--vision_tower ${VISION_MODEL_VERSION} \
|
||||
--mm_projector_type mlp2x_gelu \
|
||||
--mm_vision_select_layer -2 \
|
||||
--mm_use_im_start_end False \
|
||||
--mm_use_im_patch_token False \
|
||||
--group_by_modality_length True \
|
||||
--image_aspect_ratio anyres \
|
||||
--image_grid_pinpoints "[(384, 768), (768, 384), (768, 768), (1152, 384), (384, 1152)]" \
|
||||
--mm_patch_merge_type spatial_unpad \
|
||||
--bf16 True \
|
||||
--run_name $MID_RUN_NAME \
|
||||
--output_dir "/checkpoints/${MID_RUN_NAME}" \
|
||||
--num_train_epochs 1 \
|
||||
--per_device_train_batch_size 4 \
|
||||
--per_device_eval_batch_size 4 \
|
||||
--gradient_accumulation_steps 1 \
|
||||
--evaluation_strategy "no" \
|
||||
--save_strategy "steps" \
|
||||
--save_steps 3000 \
|
||||
--save_total_limit 1 \
|
||||
--learning_rate 1e-5 \
|
||||
--weight_decay 0. \
|
||||
--warmup_ratio 0.03 \
|
||||
--lr_scheduler_type "cosine" \
|
||||
--logging_steps 1 \
|
||||
--tf32 True \
|
||||
--model_max_length 32768 \
|
||||
--gradient_checkpointing True \
|
||||
--dataloader_num_workers 16 \
|
||||
--lazy_preprocess True \
|
||||
--report_to wandb \
|
||||
--torch_compile True \
|
||||
--torch_compile_backend "inductor" \
|
||||
--dataloader_drop_last True \
|
||||
--attn_implementation sdpa
|
||||
|
||||
# You can delete the sdpa attn_implementation if you want to use flash attn
|
||||
@@ -0,0 +1,64 @@
|
||||
export OMP_NUM_THREADS=8
|
||||
export NCCL_IB_DISABLE=0
|
||||
export NCCL_IB_GID_INDEX=3
|
||||
# export NCCL_IB_HCA=${ARNOLD_RDMA_DEVICE}
|
||||
export NCCL_SOCKET_IFNAME=eth0
|
||||
export NCCL_DEBUG=INFO
|
||||
|
||||
VISION_MODEL_VERSION="openai/clip-vit-large-patch14-336"
|
||||
VISION_MODEL_VERSION_CLEAN="${VISION_MODEL_VERSION//\//_}"
|
||||
|
||||
############### Pretrain ################
|
||||
|
||||
# Stage 2
|
||||
PROMPT_VERSION="qwen_1_5"
|
||||
|
||||
#torchrun --nproc_per_node="${ARNOLD_WORKER_GPU}" --nnodes="${ARNOLD_WORKER_NUM}" --node_rank="${ARNOLD_ID}" --master_addr="${METIS_WORKER_0_HOST}" --master_port="${port_in_cmd}" \
|
||||
ACCELERATE_CPU_AFFINITY=1 torchrun --nproc_per_node="${ARNOLD_WORKER_GPU}" --nnodes="${ARNOLD_WORKER_NUM}" --node_rank="${ARNOLD_ID}" --master_addr="${METIS_WORKER_0_HOST}" --master_port="${port_in_cmd}" \
|
||||
llava/train/train_dpo.py \
|
||||
--deepspeed scripts/zero3.json \
|
||||
--model_name_or_path lmms-lab/LongVA-7B \
|
||||
--version $PROMPT_VERSION \
|
||||
--dpo_alpha 1.0 --beta 0.1 --gamma 0 \
|
||||
--data_path="/data/llava_video/shareVideoGPTV/dpo/sft_dpo_17k.jsonl" \
|
||||
--image_folder /data/llava_data \
|
||||
--video_folder /llava_video/shareVideoGPTV/frames/all_frames/ \
|
||||
--mm_tunable_parts="mm_vision_tower,mm_mlp_adapter,mm_language_model" \
|
||||
--vision_tower ${VISION_MODEL_VERSION} \
|
||||
--mm_projector_type mlp2x_gelu \
|
||||
--mm_vision_select_layer -2 \
|
||||
--mm_use_im_start_end False \
|
||||
--mm_use_im_patch_token False \
|
||||
--mm_spatial_pool_stride 2 \
|
||||
--mm_resampler_type "spatial_pool" \
|
||||
--mm_spatial_pool_out_channels 1024 \
|
||||
--group_by_modality_length True \
|
||||
--image_aspect_ratio anyres \
|
||||
--image_grid_pinpoints "[(336, 672), (672, 336), (672, 672), (1008, 336), (336, 1008)]" \
|
||||
--mm_patch_merge_type unires \
|
||||
--bf16 True \
|
||||
--run_name $MID_RUN_NAME \
|
||||
--output_dir "/checkpoints/${MID_RUN_NAME}" \
|
||||
--num_train_epochs 3 \
|
||||
--per_device_train_batch_size 1 \
|
||||
--per_device_eval_batch_size 4 \
|
||||
--gradient_accumulation_steps 16 \
|
||||
--evaluation_strategy "no" \
|
||||
--save_strategy "steps" \
|
||||
--save_steps 3000 \
|
||||
--save_total_limit 1 \
|
||||
--learning_rate 5e-7 \
|
||||
--weight_decay 0. \
|
||||
--warmup_ratio 0.1 \
|
||||
--lr_scheduler_type "linear" \
|
||||
--logging_steps 1 \
|
||||
--tf32 True \
|
||||
--model_max_length 32768 \
|
||||
--gradient_checkpointing True \
|
||||
--dataloader_num_workers 16 \
|
||||
--lazy_preprocess True \
|
||||
--report_to wandb \
|
||||
--torch_compile True \
|
||||
--torch_compile_backend "inductor" \
|
||||
--dataloader_drop_last True \
|
||||
--attn_implementation sdpa
|
||||
@@ -0,0 +1,69 @@
|
||||
export OMP_NUM_THREADS=8
|
||||
export NCCL_IB_DISABLE=0
|
||||
export NCCL_IB_GID_INDEX=3
|
||||
# export NCCL_IB_HCA=${ARNOLD_RDMA_DEVICE}
|
||||
export NCCL_SOCKET_IFNAME=eth0
|
||||
export NCCL_DEBUG=INFO
|
||||
|
||||
VISION_MODEL_VERSION="google/siglip-so400m-patch14-384"
|
||||
VISION_MODEL_VERSION_CLEAN="${VISION_MODEL_VERSION//\//_}"
|
||||
|
||||
# DPO Stage
|
||||
PROMPT_VERSION="qwen_1_5"
|
||||
SFT_MODEL="lmms-lab/llava-onevision-qwen2-7b-ov"
|
||||
EPOCH=1
|
||||
beta=0.1
|
||||
|
||||
DPO_RUN_NAME="llava-onevision-qwen2-7b-ov_dpo-beta${beta}-epoch${EPOCH}"
|
||||
DPO_CLEAN_NAME="${DPO_RUN_NAME##*/}"
|
||||
OUTPUT_DIR="<your-output-folder>/${DPO_CLEAN_NAME}"
|
||||
DATA_PATH="<your-data-path>"
|
||||
|
||||
echo $DPO_RUN_NAME
|
||||
|
||||
ACCELERATE_CPU_AFFINITY=1 torchrun --nproc_per_node="${NUM_GPUS}" --nnodes="${NNODES}" --node_rank="${RANK}" --master_addr="${ADDR}" --master_port="${PORT}" \
|
||||
llava/train/train_dpo.py \
|
||||
--deepspeed scripts/zero3.json \
|
||||
--model_name_or_path=${SFT_MODEL} \
|
||||
--dpo_alpha=1.0 \
|
||||
--beta=${beta} \
|
||||
--gamma=0 \
|
||||
--version $PROMPT_VERSION \
|
||||
--data_path=$DATA_PATH \
|
||||
--image_folder "<your-image-folder>" \
|
||||
--mm_tunable_parts="mm_vision_tower,mm_mlp_adapter,mm_language_model" \
|
||||
--unfreeze_mm_vision_tower True \
|
||||
--vision_tower ${VISION_MODEL_VERSION} \
|
||||
--mm_projector_type mlp2x_gelu \
|
||||
--mm_vision_select_layer -2 \
|
||||
--mm_use_im_start_end False \
|
||||
--mm_use_im_patch_token False \
|
||||
--group_by_modality_length True \
|
||||
--image_aspect_ratio anyres_max_9 \
|
||||
--image_grid_pinpoints "(1x1),...,(6x6)" \
|
||||
--mm_patch_merge_type spatial_unpad \
|
||||
--bf16 True \
|
||||
--run_name $DPO_CLEAN_NAME \
|
||||
--output_dir $OUTPUT_DIR \
|
||||
--num_train_epochs $EPOCH \
|
||||
--per_device_train_batch_size 1 \
|
||||
--per_device_eval_batch_size 1 \
|
||||
--gradient_accumulation_steps 8 \
|
||||
--evaluation_strategy "no" \
|
||||
--save_strategy "steps" \
|
||||
--save_steps 1000 \
|
||||
--save_total_limit 1 \
|
||||
--learning_rate 5e-7 \
|
||||
--weight_decay 0. \
|
||||
--warmup_ratio 0.1 \
|
||||
--lr_scheduler_type "cosine" \
|
||||
--logging_steps 1 \
|
||||
--tf32 True \
|
||||
--model_max_length 32768 \
|
||||
--gradient_checkpointing True \
|
||||
--dataloader_num_workers 4 \
|
||||
--lazy_preprocess True \
|
||||
--report_to wandb \
|
||||
--dataloader_drop_last True
|
||||
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
export OMP_NUM_THREADS=8
|
||||
export NCCL_IB_DISABLE=0
|
||||
export NCCL_IB_GID_INDEX=3
|
||||
export NCCL_SOCKET_IFNAME=eth0
|
||||
export NCCL_DEBUG=INFO
|
||||
VISION_MODEL_VERSION="google/siglip-so400m-patch14-384"
|
||||
VISION_MODEL_VERSION_CLEAN="${VISION_MODEL_VERSION//\//_}"
|
||||
|
||||
############### Pretrain ################
|
||||
|
||||
BASE_RUN_NAME="llavanext-google_siglip-so400m-patch14-384-Qwen_Qwen2-7B-Instruct-mlp2x_gelu-pretrain_blip558k_plain"
|
||||
echo "BASE_RUN_NAME: ${BASE_RUN_NAME}"
|
||||
|
||||
############### Finetune ################
|
||||
MIXTURE="qwen"
|
||||
|
||||
# Stage 2
|
||||
PROMPT_VERSION="qwen_vla"
|
||||
RUN_NAME="llava-openvla-${MIXTURE}"
|
||||
PREV_STAGE_CHECKPOINT="/mnt/d/temp/huggingface/hub/llava_qwen_vla"
|
||||
# PREV_STAGE_CHECKPOINT="/mnt/d/ckpt/llava-openvla-qwen"
|
||||
echo "PREV_STAGE_CHECKPOINT: ${PREV_STAGE_CHECKPOINT}"
|
||||
echo "MID_RUN_NAME: ${RUN_NAME}"
|
||||
|
||||
NUM_GPUS=1
|
||||
NNODES=1
|
||||
|
||||
ACCELERATE_CPU_AFFINITY=1 torchrun --nproc_per_node="${NUM_GPUS}" --nnodes="${NNODES}" \
|
||||
llava/train/train_mem.py \
|
||||
--deepspeed scripts/zero2.json \
|
||||
--model_name_or_path $PREV_STAGE_CHECKPOINT \
|
||||
--version $PROMPT_VERSION \
|
||||
--data_path /root/code/openvla-llava/LLaVA-Next/scripts/train/vla.yaml \
|
||||
--image_folder /root/code/openvla-llava/LLaVA-Next/images \
|
||||
--mm_tunable_parts="mm_language_model" \
|
||||
--mm_vision_tower_lr=2e-6 \
|
||||
--vision_tower google/siglip-so400m-patch14-384 \
|
||||
--mm_projector_type mlp2x_gelu \
|
||||
--mm_vision_select_layer -2 \
|
||||
--mm_use_im_start_end False \
|
||||
--mm_use_im_patch_token False \
|
||||
--group_by_modality_length True \
|
||||
--image_aspect_ratio anyres_max_9 \
|
||||
--image_grid_pinpoints "(1x1),...,(6x6)" \
|
||||
--mm_patch_merge_type spatial_unpad \
|
||||
--bf16 True \
|
||||
--run_name $RUN_NAME \
|
||||
--output_dir /mnt/d/ckpt_3_28/$RUN_NAME \
|
||||
--num_train_epochs 5 \
|
||||
--per_device_train_batch_size 8 \
|
||||
--per_device_eval_batch_size 100 \
|
||||
--gradient_accumulation_steps 2 \
|
||||
--evaluation_strategy "no" \
|
||||
--save_strategy "steps" \
|
||||
--save_steps 900 \
|
||||
--save_total_limit 2 \
|
||||
--learning_rate 1e-4 \
|
||||
--weight_decay 0. \
|
||||
--warmup_ratio 0.03 \
|
||||
--lr_scheduler_type "cosine" \
|
||||
--logging_steps 1 \
|
||||
--tf32 True \
|
||||
--model_max_length 4096 \
|
||||
--gradient_checkpointing True \
|
||||
--dataloader_num_workers 1 \
|
||||
--lazy_preprocess True \
|
||||
--report_to wandb \
|
||||
--torch_compile True \
|
||||
--torch_compile_backend "inductor" \
|
||||
--dataloader_drop_last True \
|
||||
--frames_upbound 1
|
||||
exit 0;
|
||||
|
||||
# You can delete the sdpa attn_implementation if you want to use flash attn
|
||||
@@ -0,0 +1,73 @@
|
||||
export OMP_NUM_THREADS=8
|
||||
export NCCL_IB_DISABLE=0
|
||||
export NCCL_IB_GID_INDEX=3
|
||||
export NCCL_SOCKET_IFNAME=eth0
|
||||
export NCCL_DEBUG=INFO
|
||||
|
||||
LLM_VERSION="Qwen/Qwen2-7B-Instruct"
|
||||
# for 7b model we recommend bs=1, accum=2, 16 nodes, 128 gpus, lr=1e-5, warmup=0.03
|
||||
# for 72b model we recommend bs=1, accum=1, 32 nodes, 256 gpus, lr=1e-5, warmup=0.03
|
||||
LLM_VERSION_CLEAN="${LLM_VERSION//\//_}"
|
||||
VISION_MODEL_VERSION="google/siglip-so400m-patch14-384"
|
||||
VISION_MODEL_VERSION_CLEAN="${VISION_MODEL_VERSION//\//_}"
|
||||
|
||||
############### Pretrain ################
|
||||
|
||||
BASE_RUN_NAME="llavanext-google_siglip-so400m-patch14-384-Qwen_Qwen2-7B-Instruct-mlp2x_gelu-pretrain_blip558k_plain"
|
||||
echo "BASE_RUN_NAME: ${BASE_RUN_NAME}"
|
||||
|
||||
############### Finetune ################
|
||||
|
||||
# Stage 2
|
||||
PROMPT_VERSION="qwen_1_5"
|
||||
RUN_NAME="llava-onevision-${VISION_MODEL_VERSION_CLEAN}-${LLM_VERSION_CLEAN}-si_stage_am9"
|
||||
PREV_STAGE_CHECKPOINT="/mnt/bn/vl-research/checkpoints/onevision/xxxxxxxxxxxxxxxx" # replace it with your last checkpoint training from mid stage
|
||||
echo "PREV_STAGE_CHECKPOINT: ${PREV_STAGE_CHECKPOINT}"
|
||||
echo "MID_RUN_NAME: ${RUN_NAME}"
|
||||
|
||||
ACCELERATE_CPU_AFFINITY=1 torchrun --nproc_per_node="${NUM_GPUS}" --nnodes="${NNODES}" --node_rank="${RANK}" --master_addr="${ADDR}" --master_port="${PORT}" \
|
||||
llava/train/train_mem.py \
|
||||
--deepspeed scripts/zero3.json \
|
||||
--model_name_or_path $PREV_STAGE_CHECKPOINT \
|
||||
--version $PROMPT_VERSION \
|
||||
--data_path /mnt/bn/vl-research/workspace/boli01/projects/LLaVA_Next/scripts/i18n/scale_llms/next_3p2m_single_image.yaml \
|
||||
--image_folder /mnt/bn/vl-research/data/llava_data \
|
||||
--video_folder /mnt/bn/vl-research/data/llava_video \
|
||||
--mm_tunable_parts="mm_vision_tower,mm_mlp_adapter,mm_language_model" \
|
||||
--mm_vision_tower_lr=2e-6 \
|
||||
--vision_tower ${VISION_MODEL_VERSION} \
|
||||
--mm_projector_type mlp2x_gelu \
|
||||
--mm_vision_select_layer -2 \
|
||||
--mm_use_im_start_end False \
|
||||
--mm_use_im_patch_token False \
|
||||
--group_by_modality_length True \
|
||||
--image_aspect_ratio anyres_max_9 \
|
||||
--image_grid_pinpoints "(1x1),...,(6x6)" \
|
||||
--mm_patch_merge_type spatial_unpad \
|
||||
--bf16 True \
|
||||
--run_name $RUN_NAME \
|
||||
--output_dir /mnt/bn/vl-research/checkpoints/onevision/$RUN_NAME \
|
||||
--num_train_epochs 1 \
|
||||
--per_device_train_batch_size 1 \
|
||||
--per_device_eval_batch_size 4 \
|
||||
--gradient_accumulation_steps 2 \
|
||||
--evaluation_strategy "no" \
|
||||
--save_strategy "steps" \
|
||||
--save_steps 1000 \
|
||||
--save_total_limit 1 \
|
||||
--learning_rate 1e-5 \
|
||||
--weight_decay 0. \
|
||||
--warmup_ratio 0.03 \
|
||||
--lr_scheduler_type "cosine" \
|
||||
--logging_steps 1 \
|
||||
--tf32 True \
|
||||
--model_max_length 32768 \
|
||||
--gradient_checkpointing True \
|
||||
--dataloader_num_workers 4 \
|
||||
--lazy_preprocess True \
|
||||
--report_to wandb \
|
||||
--torch_compile True \
|
||||
--torch_compile_backend "inductor" \
|
||||
--dataloader_drop_last True \
|
||||
--frames_upbound 32
|
||||
exit 0;
|
||||
@@ -0,0 +1,17 @@
|
||||
datasets:
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/blip558k_stage1.5_finetune_w_prompt.json # released in lmms-lab/LLaVA-ReCap-*
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/coco118k_stage1.5_finetune_w_prompt.json # released in lmms-lab/LLaVA-ReCap-*
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cc3m_recap_data_prompt_v2.json # released in lmms-lab/LLaVA-ReCap-*
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/ureader_tr_sft.json # released in lmms-lab/LLaVA-OneVision-Mid-Data
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/instruct_azure_dc_zh_92K.json # not released, explained at https://github.com/LLaVA-VL/LLaVA-NeXT/tree/main/scripts/train
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/Evol-Instruct-GPT4-Turbo-143K.json # released in lmms-lab/LLaVA-OneVision-Mid-Data
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/synthdog_zh/synthdog_zh_100k.json # released in lmms-lab/LLaVA-OneVision-Mid-Data
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/synthdog_en/synthdog_en_100k.json # released in lmms-lab/LLaVA-OneVision-Mid-Data
|
||||
sampling_strategy: all
|
||||
@@ -0,0 +1,185 @@
|
||||
datasets:
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/llava_next_fit_mix_filtered_text_wild_738590.json
|
||||
sampling_strategy: "first:50%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/llava_wild_4v_39k.json # not released
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/llava_wild_4v_12k.json # not released
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/mavis_math_metagen_87358.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/mavis_math_rule_geo_100000.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/cambrian_filtered_gpt4vo_sp_token_fltd_max10k_checked.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/VisualWebInstruct_filtered_263589.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/visual_chat_en_26048_gpt4o_coco_checked.json # not released
|
||||
sampling_strategy: "all"
|
||||
# - json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/gpt4o_combinations_51316.json
|
||||
# sampling_strategy: "all"
|
||||
# - json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/chrome_writting_train_8835.json
|
||||
# sampling_strategy: "first:20%"
|
||||
# - json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/k12_printing_train_256646.json
|
||||
# sampling_strategy: "first:1%"
|
||||
# - json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/iiit5k_annotations_2000.json
|
||||
# sampling_strategy: "first:20%"
|
||||
# - json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/hme100k_train_clean_74502.json
|
||||
# sampling_strategy: "first:10%"
|
||||
# - json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/sroie_data_33626.json
|
||||
# sampling_strategy: "first:1%"
|
||||
# - json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/orand_car_a_train_2009.json
|
||||
# sampling_strategy: "first:10%"
|
||||
# - json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/orand_car_b_train_3000.json
|
||||
# sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/llavar_gpt4_20k.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/ai2d_azuregpt_detailed_understanding_4874.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/infographic_vqa_4404.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/infographic_azuregpt4v_1992.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/lrv_chart_1787.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/lrv_normal_gpt4v_filtered_10500.json
|
||||
sampling_strategy: "first:10%"
|
||||
# - json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/scienceqa_nona_context_19218.json
|
||||
# sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/allava_instruct_vflan4v_20000.json
|
||||
sampling_strategy: "first:30%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/allava_instruct_laion4v_50000.json
|
||||
sampling_strategy: "first:30%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/textocr_gpt4v_train_converted_25114.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/ai2d_train_internvl_single_12413.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/textcaps_train_21952.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/ureader_new/ureader_qa_sft.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/ureader_new/ureader_cap_sft.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/ureader_new/ureader_ie_sft.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/ureader_new/ureader_kg_sft.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/vision_flan_filtered_186070.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/mathqa_29837.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/geo3k_2101.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/geo170k_qa_converted_67833.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/geo170k_align_converted_60252.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/sharegpt4o_dataset.jsonl
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/sharegpt4v-coco-50k.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/sharegpt4v-knowledge-2k.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/sharegpt4v-llava-30k.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/sharegpt4v-sam-20k.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_CLEVR-Math_5290.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_FigureQA_17597.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_Geometry3K_9734.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_GeoQA+_17172.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_GEOS_508.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_IconQA_22599.json
|
||||
sampling_strategy: "first:5%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_MapQA_5235.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_PlotQA_5485.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_PMC-VQA_35958.json
|
||||
sampling_strategy: "first:1%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_Super-CLEVR_8652.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_TabMWP_22462.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_TQA_10181.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_UniGeo_11959.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_VizWiz_6614.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_VQA-AS_5907.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_VQA-RAD_2130.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/magpie_pro_qwen2_72b_st_300000_sp_token_fltd_299992.json
|
||||
sampling_strategy: "end:20%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/magpie_pro_l3_80b_st_300000.json
|
||||
sampling_strategy: "end:20%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/magpie_pro_l3_80b_mt_300000_sp_token_fltd_299998.json
|
||||
sampling_strategy: "end:20%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/image_textualization_dataset_filtered.json
|
||||
sampling_strategy: "first:20%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/ai2d_llava_format_2434.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/chart2text_26961.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/chartqa_18265_llava_format.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/diagram_image_to_text_300.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/hateful_memes_8500_llava_format.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/hitab_2500_llava_format.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/iam_5663.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/infographic_vqa_2118_llava_format.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/intergps_1280_llava_format.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/mapqa_37417_llava_format.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/rendered_text_10000.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/robut_sqa_8514.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/robut_wikisql_74989.json
|
||||
sampling_strategy: "first:10%"
|
||||
# - json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/robut_wtq_38246_llava_format_filtered_4000tokens_38236.json
|
||||
# sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/screen2words_15730.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/tabmwp_22722.json
|
||||
sampling_strategy: "first:5%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/tallyqa_98680_llava_format.json
|
||||
sampling_strategy: "first:5%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/st_vqa_17247_llava_format.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/tqa_llava_format_27307.json
|
||||
sampling_strategy: "first:5%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/visual7w_llava_format_14366.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/visualmrc_3027.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/vqarad_313_llava_format.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/vsr_2157_llava_format.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/vistext_9969.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/websight_10000.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/llava_ofa_DEMON-FULL_filtered_311085.json # released in lmms-lab/M4-Instruct
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/llava_ofa_mantis-instruct_reformatted.json # released in lmms-lab/M4-Instruct
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/academic_source_30s_v1_all.json # will be released in next version of LLaVA-NeXT-Video
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/0718_0_30_s_academic_mc_v0_1_all.json # will be released in next version of LLaVA-NeXT-Video
|
||||
sampling_strategy: all
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/sharegpt4video_255000.json # download from sharegpt4video
|
||||
sampling_strategy: all
|
||||
@@ -0,0 +1,55 @@
|
||||
export OMP_NUM_THREADS=8
|
||||
export NCCL_IB_DISABLE=0
|
||||
export NCCL_IB_GID_INDEX=3
|
||||
export NCCL_SOCKET_IFNAME=eth0
|
||||
export NCCL_DEBUG=INFO
|
||||
|
||||
LLM_VERSION="Qwen/Qwen2-7B-Instruct"
|
||||
LLM_VERSION_CLEAN="${LLM_VERSION//\//_}"
|
||||
VISION_MODEL_VERSION="openai/clip-vit-large-patch14-336"
|
||||
VISION_MODEL_VERSION_CLEAN="${VISION_MODEL_VERSION//\//_}"
|
||||
|
||||
############### Pretrain ################
|
||||
|
||||
PROMPT_VERSION=plain
|
||||
|
||||
BASE_RUN_NAME="llavanext-${VISION_MODEL_VERSION_CLEAN}-${LLM_VERSION_CLEAN}-mlp2x_gelu-pretrain_blip558k_plain"
|
||||
echo "BASE_RUN_NAME: ${BASE_RUN_NAME}"
|
||||
|
||||
ACCELERATE_CPU_AFFINITY=1 torchrun --nproc_per_node="${NUM_GPUS}" --nnodes="${NNODES}" --node_rank="${RANK}" --master_addr="${ADDR}" --master_port="${PORT}" \
|
||||
llava/train/train_mem.py \
|
||||
--deepspeed scripts/zero3.json \
|
||||
--model_name_or_path ${LLM_VERSION} \
|
||||
--version ${PROMPT_VERSION} \
|
||||
--data_path /blip_558k/blip_558k_plain.json \
|
||||
--image_folder /blip_558k/images \
|
||||
--vision_tower ${VISION_MODEL_VERSION} \
|
||||
--mm_tunable_parts="mm_mlp_adapter" \
|
||||
--mm_vision_select_layer -2 \
|
||||
--mm_projector_type mlp2x_gelu \
|
||||
--mm_use_im_start_end False \
|
||||
--mm_use_im_patch_token False \
|
||||
--bf16 True \
|
||||
--output_dir /checkpoints/projectors/${BASE_RUN_NAME} \
|
||||
--num_train_epochs 1 \
|
||||
--per_device_train_batch_size 16 \
|
||||
--per_device_eval_batch_size 4 \
|
||||
--gradient_accumulation_steps 1 \
|
||||
--evaluation_strategy "no" \
|
||||
--save_strategy "no" \
|
||||
--save_steps 50000 \
|
||||
--learning_rate 1e-3 \
|
||||
--weight_decay 0. \
|
||||
--warmup_ratio 0.03 \
|
||||
--lr_scheduler_type "cosine" \
|
||||
--logging_steps 1 \
|
||||
--tf32 True \
|
||||
--model_max_length 8192 \
|
||||
--gradient_checkpointing True \
|
||||
--dataloader_num_workers 16 \
|
||||
--lazy_preprocess True \
|
||||
--report_to wandb \
|
||||
--run_name $BASE_RUN_NAME \
|
||||
--attn_implementation sdpa
|
||||
|
||||
# You can delete the sdpa attn_implementation if you want to use flash attn
|
||||
@@ -0,0 +1,55 @@
|
||||
export OMP_NUM_THREADS=8
|
||||
export NCCL_IB_DISABLE=0
|
||||
export NCCL_IB_GID_INDEX=3
|
||||
export NCCL_SOCKET_IFNAME=eth0
|
||||
export NCCL_DEBUG=INFO
|
||||
|
||||
LLM_VERSION="Qwen/Qwen2-7B-Instruct"
|
||||
LLM_VERSION_CLEAN="${LLM_VERSION//\//_}"
|
||||
VISION_MODEL_VERSION="google/siglip-so400m-patch14-384"
|
||||
VISION_MODEL_VERSION_CLEAN="${VISION_MODEL_VERSION//\//_}"
|
||||
|
||||
############### Pretrain ################
|
||||
|
||||
PROMPT_VERSION=plain
|
||||
|
||||
BASE_RUN_NAME="llavanext-${VISION_MODEL_VERSION_CLEAN}-${LLM_VERSION_CLEAN}-mlp2x_gelu-pretrain_blip558k_plain"
|
||||
echo "BASE_RUN_NAME: ${BASE_RUN_NAME}"
|
||||
|
||||
ACCELERATE_CPU_AFFINITY=1 torchrun --nproc_per_node="${NUM_GPUS}" --nnodes="${NNODES}" --node_rank="${RANK}" --master_addr="${ADDR}" --master_port="${PORT}" \
|
||||
llava/train/train_mem.py \
|
||||
--deepspeed scripts/zero3.json \
|
||||
--model_name_or_path ${LLM_VERSION} \
|
||||
--version ${PROMPT_VERSION} \
|
||||
--data_path /blip_558k/blip_558k_plain.json \
|
||||
--image_folder /blip_558k/images \
|
||||
--vision_tower ${VISION_MODEL_VERSION} \
|
||||
--mm_tunable_parts="mm_mlp_adapter" \
|
||||
--mm_vision_select_layer -2 \
|
||||
--mm_projector_type mlp2x_gelu \
|
||||
--mm_use_im_start_end False \
|
||||
--mm_use_im_patch_token False \
|
||||
--bf16 True \
|
||||
--output_dir /checkpoints/projectors/${BASE_RUN_NAME} \
|
||||
--num_train_epochs 1 \
|
||||
--per_device_train_batch_size 16 \
|
||||
--per_device_eval_batch_size 4 \
|
||||
--gradient_accumulation_steps 1 \
|
||||
--evaluation_strategy "no" \
|
||||
--save_strategy "no" \
|
||||
--save_steps 50000 \
|
||||
--learning_rate 1e-3 \
|
||||
--weight_decay 0. \
|
||||
--warmup_ratio 0.03 \
|
||||
--lr_scheduler_type "cosine" \
|
||||
--logging_steps 1 \
|
||||
--tf32 True \
|
||||
--model_max_length 8192 \
|
||||
--gradient_checkpointing True \
|
||||
--dataloader_num_workers 16 \
|
||||
--lazy_preprocess True \
|
||||
--report_to wandb \
|
||||
--run_name $BASE_RUN_NAME \
|
||||
--attn_implementation sdpa
|
||||
|
||||
# You can delete the sdpa attn_implementation if you want to use flash attn
|
||||
@@ -0,0 +1,187 @@
|
||||
datasets:
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/llava_next_fit_mix_filtered_text_wild_738590.json # released in lmms-lab/LLaVA-NeXT-Data
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/llava_wild_4v_39k.json # not released
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/llava_wild_4v_12k.json # not released
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/llavar_gpt4_20k.json
|
||||
sampling_strategy: "all"
|
||||
# - json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/sroie_data_33626.json
|
||||
# sampling_strategy: "first:10%"
|
||||
# - json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/orand_car_a_train_2009.json
|
||||
# sampling_strategy: "all"
|
||||
# - json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/orand_car_b_train_3000.json
|
||||
# sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/mavis_math_metagen_87358.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/mavis_math_rule_geo_100000.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/chrome_writting_train_8835.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/k12_printing_train_256646.json
|
||||
sampling_strategy: "first:1%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/iiit5k_annotations_2000.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/hme100k_train_clean_74502.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/ai2d_azuregpt_detailed_understanding_4874.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/infographic_vqa_4404.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/infographic_azuregpt4v_1992.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/lrv_chart_1787.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/lrv_normal_gpt4v_filtered_10500.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/scienceqa_nona_context_19218.json
|
||||
sampling_strategy: "first:5%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/allava_instruct_vflan4v_20000.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/allava_instruct_laion4v_50000.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/textocr_gpt4v_train_converted_25114.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/ai2d_train_internvl_single_12413.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/textcaps_train_21952.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/ureader_new/ureader_qa_sft.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/ureader_new/ureader_cap_sft.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/ureader_new/ureader_ie_sft.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/ureader_new/ureader_kg_sft.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/vision_flan_filtered_186070.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/mathqa_29837.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/geo3k_2101.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/geo170k_qa_converted_67833.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/geo170k_align_converted_60252.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/sharegpt4v-coco-50k.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/sharegpt4v-knowledge-2k.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/sharegpt4v-llava-30k.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/sharegpt4v-sam-20k.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_CLEVR-Math_5290.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_FigureQA_17597.json
|
||||
sampling_strategy: "first:5%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_Geometry3K_9734.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_GeoQA+_17172.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_GEOS_508.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_IconQA_22599.json
|
||||
sampling_strategy: "first:5%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_MapQA_5235.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_PMC-VQA_35958.json
|
||||
sampling_strategy: "first:5%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_Super-CLEVR_8652.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_TabMWP_22462.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_TQA_10181.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_UniGeo_11959.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_VizWiz_6614.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_VQA-AS_5907.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/MathV360K_VQA-RAD_2130.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/Evol-Instruct-GPT4-Turbo-143000.json
|
||||
sampling_strategy: "first:30%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/magpie_pro_qwen2_72b_st_300000_sp_token_fltd_299992.json
|
||||
sampling_strategy: "first:50%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/magpie_pro_l3_80b_st_300000.json
|
||||
sampling_strategy: "first:50%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/magpie_pro_l3_80b_mt_300000_sp_token_fltd_299998.json
|
||||
sampling_strategy: "first:50%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/image_textualization_dataset_filtered.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/cambrian_filtered_gpt4vo_sp_token_fltd_max10k.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/real_vision_flan/sharegpt4o_dataset.jsonl
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/ai2d_llava_format_2434.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/aokvqa_16539_llava_format.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/chart2text_26961.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/chartqa_18265_llava_format.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/clevr_70000_llava_format.json
|
||||
sampling_strategy: "first:1%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/diagram_image_to_text_300.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/dvqa_200000_llava_format.json
|
||||
sampling_strategy: "first:1%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/figureqa_100000_llava_format.json
|
||||
sampling_strategy: "first:1%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/geomverse_9303.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/hateful_memes_8500_llava_format.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/hitab_2500_llava_format.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/iam_5663.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/raven_42000.json
|
||||
sampling_strategy: "first:5%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/iconqa_llava_format_27307.json
|
||||
sampling_strategy: "first:5%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/infographic_vqa_2118_llava_format.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/intergps_1280_llava_format.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/mapqa_37417_llava_format.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/multihiertt_7619.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/rendered_text_10000.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/robut_sqa_8514.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/robut_wikisql_74989.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/robut_wtq_38246_llava_format.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/screen2words_15730.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/scienceqa_llava_format_4976.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/tabmwp_22722.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/tallyqa_98680_llava_format.json
|
||||
sampling_strategy: "first:10%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/st_vqa_17247_llava_format.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/tqa_llava_format_27307.json
|
||||
sampling_strategy: "first:5%"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/visual7w_llava_format_14366.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/visualmrc_3027.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/vqarad_313_llava_format.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/vsr_2157_llava_format.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/vistext_9969.json
|
||||
sampling_strategy: "all"
|
||||
- json_path: /mnt/bn/vl-research/data/llava_instruct/cauldron/websight_10000.json
|
||||
sampling_strategy: "all"
|
||||
@@ -0,0 +1,3 @@
|
||||
datasets:
|
||||
- json_path: /data/jcy/data/llavaov/iiit5k/iiit5k.json
|
||||
sampling_strategy: "all"
|
||||
@@ -0,0 +1,3 @@
|
||||
datasets:
|
||||
- json_path: /root/code/openvla-llava/LLaVA-Next/vla_llava.json
|
||||
sampling_strategy: "all"
|
||||
Reference in New Issue
Block a user