图上的方案,是用国内hf镜像站代替, 但是我这需要的是不联网离线运行,能不能提前把需要的模型都下载好?
[index-tts]如何提前下载好所有模型,需要纯离线不联网运行
回答
肯定可以的,我是macos,先去把模型全下好了,然后放入文件夹中搞定了
模型已经提前下载到本地,但是第二次启动报错: (MaxRetryError("HTTPSConnectionPool(host='hf-mirror.com', port=443): Max retries exceeded with url: /facebook/w2v-bert-2.0/resolve/main/preprocessor_config.json (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1007)')))"), '(Request ID: ec92f6aa-2d1d-439c-9c4b-a4c4b6d407b1)')' thrown while requesting HEAD https://hf-mirror.com/facebook/w2v-bert-2.0/resolve/main/preprocessor_config.json 官方说法是还会下载一些小模型。 为什么不能一步到位?
模型已经提前下载到本地,但是第二次启动报错: (MaxRetryError("HTTPSConnectionPool(host='hf-mirror.com', port=443): Max retries exceeded with url: /facebook/w2v-bert-2.0/resolve/main/preprocessor_config.json (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1007)')))"), '(Request ID: ec92f6aa-2d1d-439c-9c4b-a4c4b6d407b1)')' thrown while requesting HEAD https://hf-mirror.com/facebook/w2v-bert-2.0/resolve/main/preprocessor_config.json 官方说法是还会下载一些小模型。 为什么不能一步到位?
这就不知道了,我反正是看缺哪个模型就自己去下载好放入指定文件夹中
我这边已经成功了。分享给各位:
需要下载的模型有:
# ==== download IndexTTS-2 =====
modelscope download --model IndexTeam/IndexTTS-2             --local_dir /home/yihua.zhou/models/IndexTeam/IndexTTS-2
sed -ri 's# "nvidia/bigvgan_v2_22khz_80band_256x"# "/home/yihua.zhou/models/nvidia/bigvgan_v2_22khz_80band_256x"#g' /home/yihua.zhou/models/IndexTeam/IndexTTS-2/config.yaml
# modelscope download --model IndexTeam/IndexTTS-1.5         --local_dir /home/yihua.zhou/models/IndexTeam/IndexTTS-1.5
# modelscope download --model IndexTeam/Index-TTS            --local_dir /home/yihua.zhou/models/IndexTeam/Index-TTS
# ==== download https://huggingface.co/facebook/w2v-bert-2.0 into models/facebook/w2v-bert-v2.0 =====
hf download facebook/w2v-bert-2.0                            --local-dir /home/yihua.zhou/models/facebook/w2v-bert-2.0
hf download amphion/MaskGCT semantic_codec/model.safetensors --local-dir /home/yihua.zhou/models/amphion/MaskGCT
hf download funasr/campplus                                  --local-dir /home/yihua.zhou/models/funasr/campplus
hf download nvidia/bigvgan_v2_22khz_80band_256x bigvgan_generator.pt config.json --local-dir /home/yihua.zhou/models/nvidia/bigvgan_v2_22khz_80band_256x
hf download Plachta/JDCnet bst.t7                            --local-dir /home/yihua.zhou/models/Plachta/JDCnet然后,需要手动修改代码中写死的模型路径默认值, 以下这些文件都需要改:
具体我就不把每个文件打开看了,大家进去看一下,from_pretained()函数里写的路径,还有什么 os.path(),很多都是仓库名,改成你下载的绝对路径就好。随便举一个例子:
我这边已经成功了。分享给各位:
需要下载的模型有:
==== download IndexTTS-2 =====modelscope download --model IndexTeam/IndexTTS-2 --local_dir /home/yihua.zhou/models/IndexTeam/IndexTTS-2 sed -ri 's# "nvidia/bigvgan_v2_22khz_80band_256x"# "/home/yihua.zhou/models/nvidia/bigvgan_v2_22khz_80band_256x"#g' /home/yihua.zhou/models/IndexTeam/IndexTTS-2/config.yaml
modelscope download --model IndexTeam/IndexTTS-1.5 --local_dir /home/yihua.zhou/models/IndexTeam/IndexTTS-1.5 modelscope download --model IndexTeam/Index-TTS --local_dir /home/yihua.zhou/models/IndexTeam/Index-TTS ==== download https://huggingface.co/facebook/w2v-bert-2.0 into models/facebook/w2v-bert-v2.0 =====hf download facebook/w2v-bert-2.0 --local-dir /home/yihua.zhou/models/facebook/w2v-bert-2.0 hf download amphion/MaskGCT semantic_codec/model.safetensors --local-dir /home/yihua.zhou/models/amphion/MaskGCT hf download funasr/campplus --local-dir /home/yihua.zhou/models/funasr/campplus hf download nvidia/bigvgan_v2_22khz_80band_256x bigvgan_generator.pt config.json --local-dir /home/yihua.zhou/models/nvidia/bigvgan_v2_22khz_80band_256x hf download Plachta/JDCnet bst.t7 --local-dir /home/yihua.zhou/models/Plachta/JDCnet 然后,需要手动修改代码中写死的模型路径默认值, 以下这些文件都需要改:
具体我就不把每个文件打开看了,大家进去看一下,from_pretained()函数里写的路径,还有什么 os.path(),很多都是仓库名,改成你下载的绝对路径就好。随便举一个例子:

可否将修改的内容导出为git的diff文件,方便我们知道改哪些地方。
@SimZhou
我这边已经成功了。分享给各位: 需要下载的模型有:
==== download IndexTTS-2 =====modelscope download --model IndexTeam/IndexTTS-2 --local_dir /home/yihua.zhou/models/IndexTeam/IndexTTS-2 sed -ri 's# "nvidia/bigvgan_v2_22khz_80band_256x"# "/home/yihua.zhou/models/nvidia/bigvgan_v2_22khz_80band_256x"#g' /home/yihua.zhou/models/IndexTeam/IndexTTS-2/config.yaml
modelscope download --model IndexTeam/IndexTTS-1.5 --local_dir /home/yihua.zhou/models/IndexTeam/IndexTTS-1.5 modelscope download --model IndexTeam/Index-TTS --local_dir /home/yihua.zhou/models/IndexTeam/Index-TTS ==== download https://huggingface.co/facebook/w2v-bert-2.0 into models/facebook/w2v-bert-v2.0 =====hf download facebook/w2v-bert-2.0 --local-dir /home/yihua.zhou/models/facebook/w2v-bert-2.0 hf download amphion/MaskGCT semantic_codec/model.safetensors --local-dir /home/yihua.zhou/models/amphion/MaskGCT hf download funasr/campplus --local-dir /home/yihua.zhou/models/funasr/campplus hf download nvidia/bigvgan_v2_22khz_80band_256x bigvgan_generator.pt config.json --local-dir /home/yihua.zhou/models/nvidia/bigvgan_v2_22khz_80band_256x hf download Plachta/JDCnet bst.t7 --local-dir /home/yihua.zhou/models/Plachta/JDCnet 然后,需要手动修改代码中写死的模型路径默认值, 以下这些文件都需要改:
具体我就不把每个文件打开看了,大家进去看一下,from_pretained()函数里写的路径,还有什么 os.path(),很多都是仓库名,改成你下载的绝对路径就好。随便举一个例子:

可否将修改的内容导出为git的diff文件,方便我们知道改哪些地方。
请笑纳: diff.txt
实测,直接执行以下命令提前下载模型就行,不用修改代码中模型的路径
uv tool install "huggingface-hub[cli,hf_xet]"
hf download IndexTeam/IndexTTS-2 --local-dir=checkpoints
hf download facebook/w2v-bert-2.0
hf download amphion/MaskGCT semantic_codec/model.safetensors
hf download funasr/campplus
hf download nvidia/bigvgan_v2_22khz_80band_256x bigvgan_generator.pt config.json
hf download Plachta/JDCnet bst.t7可构建出完全离线使用的Dockerfile可参考 index-tts-2.zip
可以直接拉取容器镜像离线运行。
docker run -p 7860:7860 --gpus all ghcr.io/ganecheng/indextts:20251026_230749-openeuler-x86_64or
docker run -p 7860:7860 --gpus all ghcr.io/ganecheng/indextts:20251026_230749-ubuntu-x86_64容器镜像地址:
https://github.com/ganecheng/dockerhub-to-swr/pkgs/container/indextts