41 lines
1.1 KiB
Bash
Executable File
41 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
set -euxo pipefail
|
|
|
|
mapfile -t models < <(python3 -c "from sglang.test.test_utils import _get_default_models; print(_get_default_models())" | jq -r '.[]')
|
|
|
|
if [ ${#models[@]} -eq 0 ]; then
|
|
echo "Failed to get default models."
|
|
exit 1
|
|
fi
|
|
|
|
cache_dir="${DEFAULT_MODEL_CACHE_DIR:-}"
|
|
|
|
if [ -z "$cache_dir" ]; then
|
|
echo "DEFAULT_MODEL_CACHE_DIR environment variable is not set."
|
|
exit 1
|
|
fi
|
|
|
|
failed_models=()
|
|
for model in "${models[@]}"; do
|
|
local_model_dir="$cache_dir/$model"
|
|
echo "Caching model: $model to $local_model_dir"
|
|
mkdir -p "$local_model_dir"
|
|
|
|
if ! huggingface-cli download "$model" \
|
|
--local-dir "$local_model_dir" \
|
|
--local-dir-use-symlinks False 2>/dev/null; then
|
|
echo "WARNING: Failed to cache model: $model"
|
|
rm -rf "$local_model_dir"
|
|
failed_models+=("$model")
|
|
continue
|
|
fi
|
|
echo "Successfully cached model: $model"
|
|
done
|
|
|
|
if [ ${#failed_models[@]} -gt 0 ]; then
|
|
echo -e "\n[Summary] Failed to cache following models:"
|
|
printf ' - %s\n' "${failed_models[@]}"
|
|
else
|
|
echo -e "\n[Summary] All models cached successfully"
|
|
fi
|