人工智能应用(一)使用 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 ""​​

参考

相关推荐
Jmayday24 分钟前
kaggle上经典泰坦尼克项目数据分析探索
人工智能·数据挖掘·数据分析
hjs_deeplearning24 分钟前
认知篇#4:YOLO评价指标及其数学原理的学习
人工智能·深度学习·学习·yolo·机器学习·计算机视觉
大刘讲IT28 分钟前
构建下一代AI Agent:自动化开发与行业落地全解析
人工智能
积木链小链29 分钟前
智能制造:机器视觉检测介绍
人工智能·视觉检测·制造·智能制造
Allen_LVyingbo37 分钟前
数智读书笔记系列020《快速掌握PostgreSQL版本新特性》简介和读书笔记
数据库·人工智能·笔记·postgresql·健康医疗
平凡而伟大(心之所向)39 分钟前
TensorFlow 的基本概念和使用场景
人工智能·python·tensorflow
掘金一周43 分钟前
MCP 很火,来看看我们直接给后台管理系统上一个 MCP? | 掘金一周 3.20
人工智能·openai
机器之心44 分钟前
AI预判了你的预判!人大高瓴团队发布TTR,教会AI一眼看穿你的下一步
人工智能
Dm_dotnet1 小时前
Camel多智能体框架初探
人工智能
山北雨夜漫步1 小时前
机器学习 Day08,案例实现,代码学习,数据分析基本完成
人工智能·学习·机器学习