HPSv3 / pretrained_models /download_pretrained_models.sh
sdsdgwe's picture
update
9b57ce7
#!/bin/bash
# Create pretrained_models directory
mkdir -p pretrained_models
# Model list (using array instead of associative array to avoid ordering issues)
models=(
"black-forest-labs/FLUX.1-dev:FLUX1-dev"
"stabilityai/stable-diffusion-3-medium-diffusers:SD3-medium"
"stabilityai/stable-diffusion-xl-base-1.0:SDXL-base"
"Kwai-Kolors/Kolors-diffusers:Kolors"
"THUDM/CogView4-6B:CogView4"
"PixArt-alpha/PixArt-Sigma-XL-2-1024-MS:PixArt"
"Tencent-Hunyuan/HunyuanDiT-v1.2-Diffusers:HunyuanDiT"
"FoundationVision/Infinity"
"google/flan-t5-xl"
"Qwen/Qwen2-VL-7B-Instruct: Qwen2-VL-7B-Instruct"
"Qwen/Qwen2-VL-2B-Instruct: Qwen2-VL-2B-Instruct"
)
# Create tmux session and set up the first window
model_info="${models[0]}"
model_path="${model_info%:*}"
window_name="${model_info#*:}"
local_dir="${model_path##*/}"
# Set the first window name directly when creating session
tmux new-session -d -s download_pretrained_model -n "$window_name"
# Give tmux some time to initialize
sleep 0.5
# Set commands for the first window
tmux send-keys -t download_pretrained_model:"$window_name" "conda activate hpsv3" Enter
tmux send-keys -t download_pretrained_model:"$window_name" "export HF_ENDPOINT=https://alpha.hf-mirror.com" Enter
tmux send-keys -t download_pretrained_model:"$window_name" "cd pretrained_models" Enter
tmux send-keys -t download_pretrained_model:"$window_name" "while true; do huggingface-cli download $model_path --local-dir $local_dir && break || sleep 60; done" Enter
# Create new windows for remaining models
for i in $(seq 1 $((${#models[@]} - 1))); do
model_info="${models[$i]}"
model_path="${model_info%:*}"
window_name="${model_info#*:}"
local_dir="${model_path##*/}"
# Create new window
tmux new-window -t download_pretrained_model -n "$window_name"
# Add small delay to ensure window creation is complete
sleep 0.2
tmux send-keys -t download_pretrained_model:"$window_name" "conda activate hpsv3" Enter
tmux send-keys -t download_pretrained_model:"$window_name" "export HF_ENDPOINT=https://alpha.hf-mirror.com" Enter
tmux send-keys -t download_pretrained_model:"$window_name" "cd pretrained_models" Enter
tmux send-keys -t download_pretrained_model:"$window_name" "while true; do huggingface-cli download $model_path --local-dir $local_dir && break || sleep 60; done" Enter
done
# Switch to the first window (using the first model's window name)
first_window_name="${models[0]#*:}"
tmux select-window -t download_pretrained_model:"$first_window_name"
echo "Created tmux session 'download_pretrained_model' and started downloading all models"
echo "Use 'tmux attach -t download_pretrained_model' to view download progress"
echo "Use Ctrl+B then press number keys to switch between different download windows"
echo "Use 'tmux list-windows -t download_pretrained_model' to view all windows"
echo "Use 'tmux kill-session -t download_pretrained_model' to end the session"