Spaces:
Running
Running
if [ -z "$HF_USER_NAME" ]; then | |
echo "错误:环境变量 HF_USER_NAME 未设置!" | |
exit 1 | |
fi | |
if [ -z "$HF_USER_TOKEN" ]; then | |
echo "错误:环境变量 HF_USER_TOKEN 未设置!" | |
exit 1 | |
fi | |
# 启用Git LFS支持 | |
git lfs install --force | |
# 定义需要克隆的仓库列表 | |
BASE_REPO_URL="https://${HF_USER_NAME}:${HF_USER_TOKEN}@huggingface.co/stepfun-ai" | |
REPOSITORIES=( | |
"Step-Audio-Tokenizer" | |
"Step-Audio-TTS-3B" | |
) | |
# 定义本地存放仓库的目录,默认为当前目录 | |
LOCAL_DIR="${1:-$(pwd)}" | |
# 克隆函数(带无限重试机制) | |
clone_with_retry() { | |
local repo_name=$1 | |
local repo_url="${BASE_REPO_URL}/${repo_name}" | |
local target_dir="${LOCAL_DIR}/${repo_name}" | |
# 检查是否已存在目录 | |
if [ -d "${target_dir}" ]; then | |
echo "目录 ${target_dir} 已存在,跳过克隆。" | |
return 0 | |
fi | |
# 无限重试循环 | |
while true; do | |
echo "正在尝试克隆 ${repo_name} 到 ${target_dir}..." | |
if git clone "${repo_url}" "${target_dir}"; then | |
echo "成功克隆 ${repo_name} 到 ${target_dir}" | |
return 0 | |
else | |
echo "克隆失败, 5秒后重试..." | |
sleep 5 | |
fi | |
done | |
} | |
# 遍历所有仓库进行克隆 | |
for repo in "${REPOSITORIES[@]}"; do | |
clone_with_retry "${repo}" | |
done | |
echo "所有仓库已成功下载!" | |
export LD_LIBRARY_PATH=/home/user/.local/lib/python3.10/site-packages/nvidia/cuda_runtime/lib:/home/user/.local/lib/python3.10/site-packages/nvidia/cuda_nvrtc/lib:/home/user/.local/lib/python3.10/site-packages/nvidia/cublas/lib:$LD_LIBRARY_PATH | |
python app.py --model $LOCAL_DIR | |