政安晨【零基础玩转各类开源AI项目】基于本地Ubuntu系统部署及应用Fish Audio团队的Fish Speech框架:超短语音样本克隆工具

目录

简介

​编辑

部署

下载项目

创建环境

下载模型

启动服务


政安晨的个人主页:政安晨****

欢迎 👍点赞✍评论⭐收藏

希望政安晨的博客能够对您有所裨益,如有不足之处,欢迎在评论区提出指正!

本文目标:基于N卡的Linux系统(Ubuntu)部署并应用FishSpeech框架,实现短样本语音克隆

简介

Fish Speech 是一个由 fishaudio 开发的全新文本转语音(Text-to-Speech,TTS)解决方案。

特点:

  • 低显存占用:能在低至 4GB 的 GPU 显存下运行,这使得个人开发者和小团队无需昂贵的高性能 GPU 即可进行高质量的语音合成。
  • 高质量语音合成:尽管对硬件要求较低,但能生成自然流畅、情感丰富的语音,可与 GPT-SoVITS 等顶级模型相媲美。
  • 开源与可定制:完全开源,开发者不仅可以免费使用,还能根据自身需求进行修改和扩展,增加了模型的灵活性和适用性。
  • 快速部署:轻量化设计使其能够快速部署在各种平台上,包括桌面电脑和嵌入式设备等,实现即时的语音合成服务。

在技术原理方面,Fish Speech 基于多个先进的机器学习和深度学习概念:

  • 经过了长达 15 万小时的数据训练,从而能够学习到语音的细微差别和复杂模式。
  • 采用了 Transformer 架构,其自注意力机制使其能够更好地理解和生成长序列的语音数据。
  • 同时学习多个相关任务,如音素识别、韵律预测和声学特征生成等,提高了模型的泛化能力。
  • 使用先进的神经网络声码器,能够将声学特征转换为高质量的波形,进而产生自然流畅的语音。
  • 通过多语言嵌入技术,能够在单一模型中支持多种语言,实现跨语言的语音合成。

其主要功能包括:

  • 多语言支持:熟练掌握中文、日语和英语等多种语言,提供多语言语音合成能力。
  • 情感表达:能够生成带有不同情感色彩,如快乐、悲伤、愤怒等的语音。
  • 韵律控制:可以精细调节语速、音调和重音,实现更自然的语音表现。
  • 声音克隆:通过少量样本学习特定说话者的声音特征,实现个性化语音合成。
  • 实时合成:支持低延迟的实时语音生成,适用于需要即时反馈的应用场景。
  • 文本归一化:自动处理数字、缩写和特殊符号等,确保正确的语音输出。
  • API 集成:提供易于使用的 API,方便开发者将其集成到各种应用中。

项目地址: https://github.com/fishaudio/fish-speech

部署

下载项目

git clone git@github.com:fishaudio/fish-speech.git

创建环境

# 创建一个 python 3.10 虚拟环境
conda create -n fish-speech python=3.10
conda activate fish-speech

# 安装 pytorch
pip3 install torch torchvision torchaudio

# 安装 fish-speech
pip3 install -e .

# (Ubuntu / Debian 用户) 安装 sox
apt install libsox-dev

下载模型

在这个过程中,可能会用到huggingface的CLI功能:

Hugging Face的CLI(命令行界面)是一个用于自然语言处理(NLP)任务的命令行工具。它提供了一组工具和命令,可以帮助用户快速执行各种NLP任务,如文本分类、命名实体识别、问答、翻译等。

CLI的功能包括:

  1. 模型下载和管理:用户可以使用CLI下载和管理Hugging Face提供的各种预训练模型,包括BERT、GPT等。
  2. Fine-tuning:用户可以使用CLI对预训练模型进行微调,以适应特定的任务需求。
  3. 数据处理:CLI提供了一系列命令,可以帮助用户处理和准备数据,如数据拆分、数据转换、数据预处理等。
  4. 模型评估和推理:CLI允许用户对模型进行评估和推理,以测试模型的性能和效果。
  5. 任务执行:CLI提供了一些预定义的任务命令,用户可以直接使用这些命令来执行常见的NLP任务,如文本分类、命名实体识别等。

通过命令行界面,用户可以通过简单的命令和选项来执行各种NLP任务,无需编写复杂的代码。这使得使用Hugging Face的模型和工具变得更加便捷和高效。

在虚拟环境中安装Hugging Face的CLI,使用命令:

pip install -U "huggingface_hub[cli]"

在CLI中,查看帮助:

huggingface-cli --help

启动服务

在项目目录中执行如下指令就可以启动服务:

python tools/webui.py

推理过程如下:

政安晨实测之后,认为模型还有改进空间,这里我就不赘述了,感兴趣的小伙伴可以尝试着运行一下,毕竟是开源的,了解参考都很好。

感谢开源团队的辛勤付出。


相关推荐
hakesashou几秒前
Python中常用的函数介绍
java·网络·python
菜鸟的人工智能之路10 分钟前
极坐标气泡图:医学数据分析的可视化新视角
python·数据分析·健康医疗
菜鸟学Python11 分钟前
Python 数据分析核心库大全!
开发语言·python·数据挖掘·数据分析
小白不太白95012 分钟前
设计模式之 责任链模式
python·设计模式·责任链模式
WeeJot嵌入式16 分钟前
卷积神经网络:深度学习中的图像识别利器
人工智能
喜欢猪猪18 分钟前
Django:从入门到精通
后端·python·django
糖豆豆今天也要努力鸭24 分钟前
torch.__version__的torch版本和conda list的torch版本不一致
linux·pytorch·python·深度学习·conda·torch
脆皮泡泡25 分钟前
Ultiverse 和web3新玩法?AI和GameFi的结合是怎样
人工智能·web3
机器人虎哥29 分钟前
【8210A-TX2】Ubuntu18.04 + ROS_ Melodic + TM-16多线激光 雷达评测
人工智能·机器学习
码银36 分钟前
冲破AI 浪潮冲击下的 迷茫与焦虑
人工智能