当前位置: 首页 > web >正文

WSL-linux部署IndexTTS 记录(含本地 CUDA/cuDNN 编译依赖说明)

一、前置依赖说明

部分关键依赖(如自定义 CUDA 算子、DeepSpeed)需本地安装 CUDA Toolkit、cuDNN 并参与编译,同时借助 Anaconda 管理 Python 环境。以下流程参考博客(在WSL2-Ubuntu中安装Anaconda、CUDA13.0、cuDNN9.12及PyTorch(含完整环境验证)-CSDN博客 )优化部署步骤。



二、Anaconda 安装(参考博客流程)

在WSL2-Ubuntu中安装Anaconda、CUDA13.0、cuDNN9.12及PyTorch(含完整环境验证)-CSDN博客

1. 下载与安装

wget -P /tmp https://repo.anaconda.com/archive/Anaconda3-2025.07-Linux-x86_64.sh
bash /tmp/Anaconda3-2025.07-Linux-x86_64.sh

2. 验证安装

conda --version  # 输出版本号则安装成功,如 conda 25.7.0


三、CUDA Toolkit 安装(参考博客流程)

在WSL2-Ubuntu中安装Anaconda、CUDA13.0、cuDNN9.12及PyTorch(含完整环境验证)-CSDN博客

1. 确认 GPU 驱动支持

nvidia-smi  # 查看 GPU 驱动版本,确认支持的 CUDA 最高版本(如驱动支持 CUDA 12.8)

2. 安装 CUDA Toolkit

方式:通过官方仓库安装(以 Ubuntu 24.04 为例)

wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit-13-0

3. 配置环境变量

nano ~/.bashrc

在末尾添加以下内容:

export PATH=/usr/local/cuda-13.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-13.0/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda-13.0

使环境变量生效:

source ~/.bashrc

4. 验证 CUDA 安装

nvcc --version  # 输出 CUDA 13.0 版本信息则成功



四、cuDNN 安装(参考博客流程)

在WSL2-Ubuntu中安装Anaconda、CUDA13.0、cuDNN9.12及PyTorch(含完整环境验证)-CSDN博客

1. 快捷安装 cuDNN 文库

官方文档更新未及时,注意修改“cuda-version=”的版本号,如“13”。

conda install nvidia::cudnn cuda-version=13


 

conda install nvidia::cudnn=9.12 cuda-version=13

3. 验证 cuDNN 安装

  1. 查看 conda 已安装包:

    conda list | grep cudnn  # 输出“cudnn                     9.12.0.46          h2b6041c_0    nvidia”
    

  2. 检查库文件路径(conda 环境内):

    ls $CONDA_PREFIX/lib/libcudnn*  # 显示libcudnn.so、libcudnn_static.a等文件



五、IndexTTS 项目部署

index-tts/index-tts:工业级可控高效零样本文本转语音系统

1. 创建并激活 Conda 虚拟环境

conda create -n indextts python=3.10
conda activate indextts  # 激活环境,后续操作在此环境内执行

2. 克隆项目代码

https://github.com/index-tts/index-tts  
cd index-tts

3. 安装基础依赖

Get Started

pip3 install torch torchvision --index-url https://download.pytorch.org/whl/cu129  # 确保与系统 CUDA 版本兼容
pip install -r requirements.txt
pip install ninja

4. 安装 DeepSpeed(依赖本地 CUDA/cuDNN)

pip install deepspeed  # 自动检测系统环境,编译适配加速组件

5. 安装webui

pip install -e ".[webui]"

6. 下载模型

# 设置 HF 国内镜像(加速下载)
export HF_ENDPOINT="https://hf-mirror.com"# 下载 IndexTTS-1.5 模型至 checkpoints 目录
huggingface-cli download IndexTeam/IndexTTS-1.5 \config.yaml bigvgan_discriminator.pth bigvgan_generator.pth bpe.model dvae.pth gpt.pth unigram_12000.vocab \--local-dir checkpoints

7. 启动 WebUI(可视化界面)

(1)处理端口冲突(可选)

若默认端口 7860 被占用,修改 webui.py

# 找到 demo.launch() 行,修改为
demo.launch(server_port=7861)  # 替换为未占用端口

(2)启动命令

python webui.py  
# 启动后访问终端提示的 URL(如 http://127.0.0.1:7861)



六、关键依赖关联验证

组件依赖目的验证命令 / 方式预期结果
Anaconda管理虚拟环境conda --version输出版本号(如 25.7.0)
CUDA Toolkit编译自定义算子、DeepSpeednvcc --version输出 CUDA 13.0 版本信息
cuDNN加速模型推理(如 BigVGAN)`cat /usr/local/cuda/include/cudnn_version.hgrep CUDNN_MAJOR`输出 #define CUDNN_MAJOR 9
PyTorch模型推理框架python -c "import torch; print(torch.cuda.is_available())"输出 True
DeepSpeed优化推理速度deepspeed --version输出 DeepSpeed 版本(如 0.17.5)


七、故障排查(参考博客补充)

1. Anaconda 环境未激活

  • 现象:conda 命令报错 command not found
  • 解决:重新执行 source ~/.bashrc,或检查 ~/.bashrc 中 Anaconda 环境变量配置。

2. cuDNN 头文件未找到

  • 现象:编译自定义算子时报错 fatal error: cudnn.h: No such file or directory
  • 解决:确认 cuDNN 头文件已拷贝至 /usr/local/cuda/include,重新执行编译命令。

3. DeepSpeed 编译失败

  • 现象:MissingCUDAException: CUDA_HOME does not exist
  • 解决:检查 CUDA_HOME 环境变量,确保指向 /usr/local/cuda-1x.x,重新安装 DeepSpeed。

通过结合文章内引用博客的 Anaconda、CUDA、cuDNN 安装流程,可解决 IndexTTS 项目中依赖编译的核心问题,确保工业级语音合成功能完整部署与运行。

http://www.xdnf.cn/news/18759.html

相关文章:

  • 鸿蒙 ArkTS 开发:Number、Boolean、String 三种核心基本数据类型详解(附实战案例)
  • 夜间跌倒检测响应速度↑150%!陌讯多模态骨架追踪算法在智慧养老院的落地实践
  • 手写MyBatis第32弹-设计模式实战:Builder模式在MyBatis框架中的精妙应用
  • Anaconda搭建keras开发环境小记
  • EP01:【DA】数据分析的概述
  • 【LeetCode】分享|如何科学的刷题?
  • 2025年渗透测试面试题总结-31(题目+回答)
  • 基于springboot的高校后勤保修服务系统/基于android的高校后勤保修服务系统app
  • 力扣594:最和谐子序列
  • ViLU: Learning Vision-Language Uncertainties for Failure Prediction
  • Ubuntu 服务器无法 ping 通网站域名的问题解决备忘 ——通常与网络配置有关(DNS解析)
  • 2025年8月第3周AI资讯
  • AI Prompt 的原理与实战
  • assert使用方法
  • 人形机器人——电子皮肤技术路线:光学式电子皮肤及MIT基于光导纤维的分布式触觉传感电子皮肤
  • 基于Spring Cloud与Kafka的支付金融场景面试问答解析
  • Axure RP 9 交互原型设计(Mac 中文)
  • 十、redis 入门 之 redis事务
  • 理想汽车智驾方案介绍 2|MindVLA 方案详解
  • QT-布局管理器
  • 【Docker项目实战】使用Docker部署轻量级LetsMarkdown文本编辑器
  • Java基础第2天总结
  • [两数之和](哈希表做法)
  • 【Python】新手入门:为什么需要类型注解?如何使用Mypy进行静态类型检查?复杂类型注解语法是怎么样的?
  • JH-14回柱绞车优化设计cad+设计说明书+绛重
  • 攻防世界—Confusion1—(模板注入ssti)
  • ADC系统中的信噪比(SNR)
  • Python训练营打卡Day41-Grad-CAM与Hook函数
  • MySQL奔溃,InnoDB文件损坏修复记录
  • Codeforces Round 1043 (Div. 3)