人工智能应用(一)使用 Spark-TTS 生成语音

Spark-TTS 是一款由多所高校与企业联合开源的文本转语音模型,支持中英文双语的TTS。 相比传统AI语音,它更自然、更可控,且支持低配电脑CPU推理。

安装 Spark-TTS

Spark-TTS 支持 Mac、Windows。Mac 的安装教程为 Mac 的安装流程,Windows 的安装流程为 Windows 的安装流程。这里以 windows 的安装流程为例:

安装 Conda

Conda 是一个开源的包管理和环境管理工具,用于安装和管理 Spark-TTS-0.5B 的依赖项。下载地址为 Anaconda Documentation - Anaconda,下载完成后,双击安装程序(.exe 文件),按照安装向导的提示进行操作,在安装过程中务必勾选 "Add Conda to PATH" 选项,这样才能在命令提示符中方便地使用 Conda。安装完成后,打开命令提示符,输入conda --version,若显示版本号,则说明安装成功。

下载 Spark-TTS 项目文件

有两种方式下载 Spark-TTS 项目文件,一种是使用 git 下载。代码示例如下:

bash 复制代码
git clone https://github.com/SparkAudio/Spark-TTS.git

第二种是下载项目的 zip 包,然后解压缩。

创建 Conda 环境

进入 Spark-TTS 项目文件夹,打开命令提示符,运行 conda create -n sparktts -y python=3.12,这将创建一个名为sparktts的 Conda 环境,并安装 Python 3.12 版本。创建完成后,运行conda activate sparktts激活该环境,此时命令提示符的前缀会变为(sparktts),表示你已成功进入该环境。

安装依赖项

在 Spark-TTS 项目文件夹中,使用命令行运行 pip install -r requirements.txt,该命令会自动安装项目所需的各种依赖项,如 torch、torchvision、torchaudio 等

安装 PyTorch

PyTorch 是由 Facebook 于 2016 年发布的开源深度学习框架,专门用于机器学习和深度学习。Spark-TTS-0.5B 是基于 PyTorch 开发的,所以需要安装 PyTorch。

在 Spark-TTS 项目文件夹中,运行pip install torch torchvision torchaudio --index-url https://pytorch.org/get-started/previous-versions/,PyTorch 会根据你的系统配置自动检测并安装合适的 CUDA 版本(如果你的机器支持 CUDA)。

若安装过程中出现问题,或者你的机器没有 GPU 卡,需要切换为 CPU 模式,可访问 https://pytorch.org/get-started/previous-versions/ ,根据自己机器的实际情况选择合适的安装命令。

下载模型

获取 Spark-TTS-0.5B 模型文件有两种方式。一是使用 Python 代码下载,在 Spark-TTS 项目文件夹中创建一个名为download_model.py的新文件,将以下代码粘贴到其中:

python 复制代码
from huggingface_hub import snapshot_download
import os

# Set download path
model_dir = "pretrained_models/Spark-TTS-0.5B"

# Check if model already exists
if os.path.exists(model_dir) and len(os.listdir(model_dir)) > 0:
    print("Model files already exist. Skipping download.")
else:
    print("Downloading model files...")
    snapshot_download(
        repo_id="SparkAudio/Spark-TTS-0.5B",
        local_dir=model_dir,
        resume_download=True  # Resumes partial downloads
    )
    print("Download complete!")

然后运行 python download_model.py即可开始下载模型文件。

其次是使用 Git 下载(前提是已安装 Git 和 git-lfs),运行 mkdir -p pretrained_models创建模型文件存放目录,再运行git lfs install安装 git-lfs,最后运行git clone https://huggingface.co/SparkAudio/Spark-TTS-0.5B pretrained_models/Spark-TTS-0.5B下载模型文件。

使用

WebUI 使用

运行 python webui.py 会启动本地的TTS服务,启动完成后可以http://localhost:7860/来访问 Web UI,如下图所示:

命令行使用

命令行使用方式:进入example目录,运行bash infer.sh可以进行简单的语音合成演示。也可以直接在命令行中进行推理,使用以下命令:

css 复制代码
python -m cli.inference \​
    --text "要合成的文本内容" \​
    --device 0 \​
    --save_dir "音频保存路径" \​
    --model_dir pretrained_models/Spark-TTS-0.5B \​
    --prompt_text "参考音频的文本转录内容" \​
    --prompt_speech_path "参考音频路径"​​

其中,--text指定要合成语音的文本内容;--device指定使用的设备,0 表示使用第一块 GPU,若没有 GPU 可改为cpu;--save_dir指定合成音频的保存路径;--model_dir指定模型文件所在目录;--prompt_text和--prompt_speech_path用于零样本语音克隆,分别指定参考音频的文本转录内容和参考音频路径。例如,运行以下命令可以将 "你好,欢迎使用 Spark-TTS-0.5B!" 合成为语音并保存到output目录下:​

css 复制代码
python -m cli.inference \​
    --text "你好,欢迎使用Spark-TTS-0.5B!" \​
    --device 0 \​
    --save_dir "output" \​
    --model_dir pretrained_models/Spark-TTS-0.5B \​
    --prompt_text "" \​
    --prompt_speech_path ""​​

参考

相关推荐
那个村的李富贵9 小时前
光影魔术师:CANN加速实时图像风格迁移,让每张照片秒变大师画作
人工智能·aigc·cann
腾讯云开发者11 小时前
“痛点”到“通点”!一份让 AI 真正落地产生真金白银的实战指南
人工智能
CareyWYR11 小时前
每周AI论文速递(260202-260206)
人工智能
hopsky12 小时前
大模型生成PPT的技术原理
人工智能
禁默12 小时前
打通 AI 与信号处理的“任督二脉”:Ascend SIP Boost 加速库深度实战
人工智能·信号处理·cann
心疼你的一切13 小时前
昇腾CANN实战落地:从智慧城市到AIGC,解锁五大行业AI应用的算力密码
数据仓库·人工智能·深度学习·aigc·智慧城市·cann
AI绘画哇哒哒13 小时前
【干货收藏】深度解析AI Agent框架:设计原理+主流选型+项目实操,一站式学习指南
人工智能·学习·ai·程序员·大模型·产品经理·转行
数据分析能量站13 小时前
Clawdbot(现名Moltbot)-现状分析
人工智能
那个村的李富贵13 小时前
CANN加速下的AIGC“即时翻译”:AI语音克隆与实时变声实战
人工智能·算法·aigc·cann
二十雨辰13 小时前
[python]-AI大模型
开发语言·人工智能·python