WORKFLOW=${WORKFLOW:-"false"} echo "Download Model From HuggingFace" PRETRINED_URL="https://huggingface.co/XXXXRT/GPT-SoVITS-Pretrained/resolve/main/pretrained_models.zip" G2PW_URL="https://huggingface.co/XXXXRT/GPT-SoVITS-Pretrained/resolve/main/G2PWModel.zip" UVR5_URL="https://huggingface.co/XXXXRT/GPT-SoVITS-Pretrained/resolve/main/uvr5_weights.zip" NLTK_URL="https://huggingface.co/XXXXRT/GPT-SoVITS-Pretrained/resolve/main/nltk_data.zip" PYOPENJTALK_URL="https://huggingface.co/XXXXRT/GPT-SoVITS-Pretrained/resolve/main/open_jtalk_dic_utf_8-1.11.tar.gz" if [ "$WORKFLOW" = "true" ]; then WGET_CMD=(wget -q --tries=25 --wait=5 --read-timeout=40 --retry-on-http-error=404) else WGET_CMD=(wget -q --tries=25 --wait=5 --read-timeout=40 --retry-on-http-error=404) fi if find -L "GPT_SoVITS/pretrained_models" -mindepth 1 ! -name '.gitignore' | grep -q .; then echo "Pretrained Model Exists" else echo "Download Pretrained Models" "${WGET_CMD[@]}" "$PRETRINED_URL" unzip -q -o pretrained_models.zip -d GPT_SoVITS rm -rf pretrained_models.zip fi if [ ! -d "GPT_SoVITS/text/G2PWModel" ]; then echo "Download G2PWModel" "${WGET_CMD[@]}" "$G2PW_URL" unzip -q -o G2PWModel.zip -d GPT_SoVITS/text rm -rf G2PWModel.zip else echo "G2PWModel Exists" fi if [ "$DOWNLOAD_UVR5" = "true" ]; then if find -L "tools/uvr5/uvr5_weights" -mindepth 1 ! -name '.gitignore' | grep -q .; then echo "UVR5 Model Exists" else echo "Download UVR5 Model" "${WGET_CMD[@]}" "$UVR5_URL" unzip -q -o uvr5_weights.zip -d tools/uvr5 rm -rf uvr5_weights.zip fi fi PY_PREFIX=$(python -c "import sys; print(sys.prefix)") PYOPENJTALK_PREFIX=$(python -c "import os, pyopenjtalk; print(os.path.dirname(pyopenjtalk.__file__))") "${WGET_CMD[@]}" "$NLTK_URL" -O nltk_data.zip unzip -q -o nltk_data -d "$PY_PREFIX" rm -rf nltk_data.zip "${WGET_CMD[@]}" "$PYOPENJTALK_URL" -O open_jtalk_dic_utf_8-1.11.tar.gz tar -xvzf open_jtalk_dic_utf_8-1.11.tar.gz -C "$PYOPENJTALK_PREFIX" rm -rf open_jtalk_dic_utf_8-1.11.tar.gz echo "Installation completed successfully!"