政安晨【零基础玩转各类开源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

推理过程如下:

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

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


相关推荐
FL16238631295 分钟前
[数据集][目标检测]车油口挡板开关闭合检测数据集VOC+YOLO格式138张2类别
人工智能·yolo·目标检测
YesPMP平台官方7 分钟前
AI+教育|拥抱AI智能科技,让课堂更生动高效
人工智能·科技·ai·数据分析·软件开发·教育
鸽芷咕26 分钟前
【Python报错已解决】ModuleNotFoundError: No module named ‘paddle‘
开发语言·python·机器学习·bug·paddle
FL162386312932 分钟前
AI健身体能测试之基于paddlehub实现引体向上计数个数统计
人工智能
黑客-雨35 分钟前
构建你的AI职业生涯:从基础知识到专业实践的路线图
人工智能·产品经理·ai大模型·ai产品经理·大模型学习·大模型入门·大模型教程
子午37 分钟前
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
人工智能·python·cnn
风等雨归期1 小时前
【python】【绘制小程序】动态爱心绘制
开发语言·python·小程序
Adolf_19931 小时前
Flask-JWT-Extended登录验证, 不用自定义
后端·python·flask
冯宝宝^1 小时前
基于mongodb+flask(Python)+vue的实验室器材管理系统
vue.js·python·flask
大耳朵爱学习1 小时前
掌握Transformer之注意力为什么有效
人工智能·深度学习·自然语言处理·大模型·llm·transformer·大语言模型