#!/bin/bash template_config="merge_template.yaml" output_config="merge.yaml" adapter_dir="dpo/adapter" merged_dir="dpo/merged" # model_path=/data/wyt/codes/DocDPO/sft/checkpoints_llama_factory/ted_react_sft_balanced_428/checkpoint-600 # model_path=/data/wyt/codes/DocDPO/sft/checkpoints_llama_factory/ted_react_sft_trans_base_sample_balanced_428/checkpoint-600 model_path=$1 for dir in $adapter_dir/checkpoint-*; do ckpt=$(basename $dir) echo $ckpt num=${ckpt#checkpoint-} echo $num if { [ -z "$2" ] && [ -z "$3" ]; } || { [ "$num" -ge $2 ] && [ "$num" -le $3 ]; }; then mkdir -p $merged_dir/$ckpt cp $template_config $merged_dir/$ckpt/$output_config sed -i "s|adapter_name_or_path:.*|adapter_name_or_path: $adapter_dir/$ckpt|" "$merged_dir/$ckpt/$output_config" sed -i "s|model_name_or_path:.*|model_name_or_path: $model_path|" "$merged_dir/$ckpt/$output_config" sed -i "s|export_dir:.*|export_dir: $merged_dir/$ckpt|" "$merged_dir/$ckpt/$output_config" llamafactory-cli export $merged_dir/$ckpt/$output_config fi done