找回密码
 立即注册
首页 业界区 安全 管家级教程:在 Windows 上配置 WSL2、CUDA 及 VLLM,开 ...

管家级教程:在 Windows 上配置 WSL2、CUDA 及 VLLM,开源音频克隆项目

愤血冒 2025-9-26 11:52:25
ok,那么今天给大家分享一下之前看到过的一个 音频克隆项目使用体验音色效果没有那么高的效果,不过开源嘛,搞来玩一玩试看看。源地址: https://github.com/index-tts/index-tts 
关于IndexTTSIndexTTS是一个基于 GPT 风格的文本转语音 (TTS) 模型,主要基于 XTTS 和 Tortoise 算法。它能够通过拼音纠正汉字发音,并通过标点符号控制任意位置的停顿。我们增强了系统的多个模块,包括改进说话人条件特征表示,并集成 BigVGAN2 以优化音频质量。我们的系统基于数万小时的数据进行训练,达到了最佳性能,超越了目前流行的 TTS 系统,例如 XTTS、CosyVoice2、Fish-Speech 和 F5-TTS。
源项目基于torch ,本文实践项目是改用VLLM进行的项目https://github.com/Ksuriuri/index-tts-vllmvllm暂不支持windows运行,所以需要通过wsl 虚拟机虚拟linux系统目前wsl主力版本为wsl2所以我们采用wsl2 需要的设备与流程:


  • 足够的存储空间
  • 显卡支持CUDA,同样意味着显存也要够大
  • 安装WLS2,安装配置pip
  • 安装uv,g++,cuda-tookit配置工具
  • 配置虚拟环境,安装requirements
  • 下载模型文件,转义模型文件
  • 运行webui.py
 确认开启hyper-v

安装WSL2

管理员身份下运行

自行开启魔法,以防被443拒绝
  1. wsl --install
复制代码
手动安装 指定版本 也可以选择其他
  1. wsl --install Ubuntu-22.04
复制代码
安装完往后可以在开始菜单找到并且固定
也可以通过命令行启动安装和配置pip

在刚安装好的虚拟机里面进行安装
修改为国内镜像
  1. # 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
  2. deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
  3. # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
  4. deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
  5. # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
  6. deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
  7. # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
  8. # 以下安全更新软件源包含了官方源与镜像站配置,如有需要可自行修改注释切换
  9. deb http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
  10. # deb-src http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
  11. # 预发布软件源,不建议启用
  12. # deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
  13. # # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
复制代码
编辑文件 vi/etc/apt/sources.list文件
  1. sudo vi /etc/apt/sources.list
复制代码
WSL2安装Debian(Ubuntu)并配置国内apt源 - 知乎NVIDA CUDA 12.9 toolkitWsl 安装cuda-toolkit
  1. wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-keyring_1.1-1_all.deb
  2. sudo dpkg -i cuda-keyring_1.1-1_all.deb
  3. sudo apt-get update
  4. sudo apt-get -y install cuda-toolkit-12-9
复制代码
Nvidia参考文档wsl配置环境变量
  1. export CUDA_HOME="/usr/local/cuda-12.9"
  2. export PATH="/usr/local/cuda-12.9/bin:$PATH"
复制代码
输入一下命令确保oknvidia-smi
配置克隆项目
  1. git clone https://github.com/Ksuriuri/index-tts-vllm.git
复制代码
进入工作目录
  1. cd index-tts-vllm
复制代码
创建uv虚拟环境
  1. un .venv
复制代码
设置python版本
  1. uv python install 3.10
复制代码
安装依赖包
  1. uv pip install -r requirements.txt
复制代码
下载模型权重

地址模型权重转换

需要转换为transformers库兼容的版本,
  1. bash convert_hf_format.sh /path/to/your/model_dir
复制代码
/path/to/your/model_dir 需要修改成你需要保存的位置
  1. 这个是我的
  2. bash convert_hf_format.sh /home/leia/IndexTTS-1.5/
复制代码
将项目中的webui.py的model_dir修改为模型权重下载路径 
运行下命令启动程序
  1. VLLM_USE_V1=0 python webui.py
复制代码
往后再启动就是leia@leia:~/index-tts-vllm$
  1. source .venv/bin/activate
复制代码
.venv 为我们创建的虚拟环境运行成功的截图
API支持

该项目使用fastapi封装了api接口,调用如下命令可以启动相关示例:
  1. VLLM_USE_V1=0 python api_server.py --model_dir /home/leia/IndexTTS-1.5 --port 11996
复制代码
编写如下python文件testindex-tts-vllm.py,
  1. import requests
  2. url = "http://127.0.0.1:11996/tts_url"
  3. data = {
  4.     "text": "你好,我叫leia,很高兴认识你",
  5.     "audio_paths": [  
  6.         "spk_1234232323.wav",
  7.         "spk_2344423234.wav"
  8.     ]
  9. }
  10. response = requests.post(url, json=data)
  11. with open("output.wav", "wb") as f:
  12.     f.write(response.content)
复制代码
   

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

您需要登录后才可以回帖 登录 | 立即注册