From 54bc54691b00a62c8e74c6e9f688e03663046cad Mon Sep 17 00:00:00 2001 From: Lianhao Lu Date: Tue, 17 Jun 2025 06:45:09 +0000 Subject: [PATCH] gpt-sovits: Support air gapped environment Signed-off-by: Lianhao Lu --- comps/third_parties/gpt-sovits/src/Dockerfile | 5 ++++- comps/third_parties/gpt-sovits/src/README.md | 11 ++++++++--- comps/third_parties/gpt-sovits/src/start.sh | 3 --- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/comps/third_parties/gpt-sovits/src/Dockerfile b/comps/third_parties/gpt-sovits/src/Dockerfile index a028c92d04..de01746c78 100644 --- a/comps/third_parties/gpt-sovits/src/Dockerfile +++ b/comps/third_parties/gpt-sovits/src/Dockerfile @@ -35,7 +35,7 @@ RUN pip install --no-cache-dir --upgrade pip setuptools && \ pip install --no-cache-dir -r GPT-SoVITS/requirements.txt; \ fi -RUN python -m nltk.downloader averaged_perceptron_tagger_eng cmudict && \ +RUN python -m nltk.downloader averaged_perceptron_tagger averaged_perceptron_tagger_eng cmudict && \ mv /root/nltk_data /home/user/ && \ mv GPT-SoVITS /home/user/ @@ -46,4 +46,7 @@ RUN chown -R user /home/user/ USER user WORKDIR /home/user/GPT-SoVITS +# air gapped support +RUN curl -sLJO https://github.com/intel/intel-extension-for-transformers/raw/refs/heads/main/intel_extension_for_transformers/neural_chat/assets/audio/welcome_cn.wav + ENTRYPOINT ["bash", "start.sh"] diff --git a/comps/third_parties/gpt-sovits/src/README.md b/comps/third_parties/gpt-sovits/src/README.md index f583a6be85..aedb41aacc 100644 --- a/comps/third_parties/gpt-sovits/src/README.md +++ b/comps/third_parties/gpt-sovits/src/README.md @@ -15,11 +15,16 @@ docker build -t opea/gpt-sovits:latest --build-arg http_proxy=$http_proxy --buil ```bash export llm_download=True docker run -itd -p 9880:9880 -e http_proxy=$http_proxy -e https_proxy=$https_proxy -e llm_download=$llm_download opea/gpt-sovits:latest +``` + +### Running in air gapped environment -# If you locally clone the models, you can pass llm_download=False, e.g. -export llm_download=False +To run the service in air gapped environment, please pre-download the model `lj1995/GPT-SoVITS` and set the environment variable `llm_download` to "False". + +``` +export llm_download="False" git clone https://huggingface.co/lj1995/GPT-SoVITS pretrained_models -docker run -itd -p 9880:9880 -e http_proxy=$http_proxy -e https_proxy=$https_proxy -e llm_download=$llm_download -v ./pretrained_models/:/home/user/GPT-SoVITS/GPT_SoVITS/pretrained_models/ opea/gpt-sovits:latest +docker run -itd -p 9880:9880 -e llm_download=$llm_download -v ./pretrained_models/:/home/user/GPT-SoVITS/GPT_SoVITS/pretrained_models/ opea/gpt-sovits:latest ``` ## Test diff --git a/comps/third_parties/gpt-sovits/src/start.sh b/comps/third_parties/gpt-sovits/src/start.sh index 412056f388..fedaabf4e3 100644 --- a/comps/third_parties/gpt-sovits/src/start.sh +++ b/comps/third_parties/gpt-sovits/src/start.sh @@ -3,9 +3,6 @@ # Copyright (C) 2025 Intel Corporation # SPDX-License-Identifier: Apache-2.0 -# Download default voice reference -wget "https://github.com/intel/intel-extension-for-transformers/raw/refs/heads/main/intel_extension_for_transformers/neural_chat/assets/audio/welcome_cn.wav" - # Download models MODEL_REPO=https://huggingface.co/lj1995/GPT-SoVITS llm_download=${llm_download}