GPU云主机
微信客服
领取新人福利
进官方活动群
在服务器Ubuntu22.04系统下的
Cosyvoice的部署
欢迎使用我们公司服务器来部署和使用Cosyvoice大模型。通过本指南,您将学会如何在Ubuntu 22.04系统下安装和配置Cosyvoice大模型,并使用webui进行交互。如果您对我们的服务器感兴趣,可以在官网处获取服务器资源,我们还提供详细的部署帮助文档,帮助您轻松上手。
Cosyvoice 介绍

       CosyVoice 是由阿里巴巴通义实验室推出的一款先进的多语言、音色和情感控制的语音合成模型。它支持中文、英文、日语、粤语和韩语等多种语言,能够通过少量原始音频快速生成模拟音色,包括韵律和情感细节。CosyVoice 的技术原理包括自回归变换器、语音量化编码、流匹配(Flow Matching)技术以及基于ODE的扩散模型和HiFTNet基础的声码器。

      项目地址:https://github.com/FunAudioLLM/CosyVoice

部署框架

在这个框架中,每个组件都有其特定的角色和功能,它们通过Web UI这个桥梁相互连接,共同为用户提供服务。用户通过浏览器与Web服务器交互,而Web服务器则负责与后端的Cosyvoice模型进行通信,以完成图片生成的任务。

•  用户(User):
用户是最终与系统交互的人,他们使用Web UI来生成图片。
• 浏览器(Browser):
用户通过浏览器访问Web服务器。浏览器充当客户端,发送HTTP请求并接收响应。
• Web服务器(Web Server):
运行Ubuntu服务器上的软件,通常是Web框架的一部分,比如Flask或Django。它处理来自浏览器的HTTP请求,提供Web UI,并与后端服务交互。
• Cosyvoice模型(Cosyvoice Model):
CosyVoice模型是一个用于生成自然和逼真人声的大语言模型,它能够理解和生成语音,为用户提供流畅且具有表现力的语音合成体验。
• Web UI(Web User Interface):
用户通过Web UI与系统交互。Web UI是Web服务器提供的前端界面,允许用户上传图片、设置生成参数等。


Cosyvoice模型的优点和缺点
Cosyvoice 模型具有以下一些优点和缺点:
• 优点:
多语言支持:CosyVoice支持中、英、日、粤、韩五种语言的生成,效果显著优于传统语音生成模型 。
音色和情感控制:仅需3~10秒的原始音频,CosyVoice即可生成模拟音色,包括韵律、情感等细节,并支持跨语种语音生成 。
细粒度控制:CosyVoice支持以富文本或自然语言的形式,对生成语音的情感、韵律进行细粒度的控制,在情感表现力上得到明显提升 。

• 缺点:
推理时间:有用户反映在进行声音克隆时,llm和flow阶段消耗了较多的时间,推理速度较慢,尤其是在使用A800-80G显卡时,整体推理时间可能达到数秒 。
模型大小:CosyVoice的模型文件较大,例如llm模型达到1.2GB,flow模型也有401MB,这可能导致加载和推理过程需要较多的内存和计算资源
部署流程解释介绍
1. 购买 GPU 服务器
• 在点动云官网购买并配置服务器:

• 操作系统选择:
     选择一个适合您需求的操作系统,通常推荐使用 Ubuntu 22.04 LTS,因为它提供了长期支持和稳定性。
• 购买和部署:
    完成购买流程,启动服务器,并进行初步配置。
    FinalShell是一款服务器管理工具,支持SSH和远程桌面,使用FinalShell远程连接配置服务器。


二、Ubuntu 22.04基本环境配置
• 更换Ubuntu镜像源:
     通常为了加速下载,可以更换到国内镜像源,如清华镜像源。
• 更新包列表:
     使用sudo apt update命令来更新软件包列表。
• 使用wget下载驱动包:
     通过wget命令下载NVIDIA显卡驱动安装包。
• 更新软件列表和安装必要软件、依赖:
     使用sudo apt update和sudo apt install命令安装所需的软件和依赖。
• 卸载原有驱动:
     如果有旧版驱动,需要先卸载。
• 安装驱动:
     执行下载的驱动包进行安装。
• 安装CUDA:
     CUDA是用于通用并行计算的编程模型和API,需要根据显卡型号选择合适的版本安装。
• 环境变量配置:
     配置环境变量以确保系统能够正确使用CUDA和显卡驱动。

三、安装miniconda环境
• 下载miniconda3:
     从官网下载miniconda3的安装脚本。
• 安装miniconda3:
     执行下载的脚本进行安装。
• conda配置:
     配置conda的通道、环境等。

四、安装Cosyvoice
• 克隆仓库:
     使用git clone命令从GitHub克隆Cosyvoice仓库。
• 创建虚拟环境:
     使用conda或python的venv模块创建虚拟环境。
• 安装依赖:
     安装所需的Python库和工具以及Cosyvoice运行所需的其他Python依赖库。
• 设置清华源、更新pip:
      更换pip的源到清华,以加速下载。
• 创建模型放置文件夹:
     在适当的位置创建文件夹以存放AI模型文件。
• 下载模型:
     下载Cosyvoice需要使用的模型文件。
• 改端口启动:
     修改配置文件或启动命令,以指定Cosyvoice服务运行的端口号。

部署流程概述
   更换源和更新:优化软件包管理器使用的源,确保软件包列表是最新的。
   安装显卡驱动和CUDA:确保GPU能够被系统识别并用于高性能计算。
   配置环境变量:让系统知道如何找到并使用新安装的软件。
   安装miniconda:创建一个独立的Python环境,避免不同项目间的依赖冲突。
   安装Cosyvoice:获取Cosyvoice代码,创建适合其运行的环境,准备好所需的模型文件,最终启动Cosyvoice服务。

部署具体流程
一、FinalShell的下载及使用:
   FinalShell是一款服务器管理工具,支持SSH和远程桌面,提供多标签管理、命令自动提示、SFTP、性能监控等功能,适用于开发运维,界面友好,在很大程度上可以免费替代XShell。
   FinalShell的下载:https://www.hostbuf.com/t/988.html

   FinalShell的基本使用:

   连接Linux服务器

   进行如下设置:
    名称:  自定义
    主机:  填写你的服务器的公网IP
    端口:  填写服务器端口
    备注:  自定义
    方法:  密码
    用户名:默认是root
    密码:  填写服务器的登录密码

新建完后双击或者右键点击连接
二、ubuntu22.04基本环境配置
1.更换清华Ubuntu镜像源
•删除原来的文件
rm /etc/apt/sources.list

•开始编辑新文件
vim /etc/apt/sources.list
先按i键,粘贴以下内容
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# 以下安全更新软件源包含了官方源与镜像站配置,如有需要可自行修改注释切换
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse

确保内容跟上述图片一致
按esc键,再输入冒号+wq保存

2. 更新包列表
•打开终端,输入以下命令
sudo apt-get update

sudo apt upgrade
更新时间较长,请耐心等待

3. 安装英伟达显卡驱动
3.1使用wget在命令行下载驱动包

wget https://cn.download.nvidia.com/XFree86/Linux-x86_64/550.100/NVIDIA-Linux-x86_64-550.100.run


3.2更新软件列表和安装必要软件、依赖
sudo apt-get install g++
更新时间较长,请耐心等待


点击回车enter即可

sudo apt-get install gcc


sudo apt-get install make


点击回车enter即可
成功安装

3.3卸载原有驱动
sudo apt-get remove --purge nvidia*


•使用vim修改配置文件
sudo vim /etc/modprobe.d/blacklist.conf

•按i键进入编辑模式,在文件尾增加两行:
blacklist nouveau
options nouveau modeset=0

按esc键退出编辑模式,输入:wq保存并退出

•更新文件
sudo update-initramfs -u
这里等待时间较久
•重启电脑
sudo reboot
这里需要等一会才能连上


3.4 安装驱动
•授予执行权限
sudo chmod 777 NVIDIA-Linux-x86_64-550.100.run

•执行安装命令
sudo ./NVIDIA-Linux-x86_64-550.100.run


这里一直按回车就行,默认选择

一直按回车enter键,直到安装成功

•检测显卡驱动是否安装成功
nvidia-smi


3.5 安装CUDA
wget https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda_12.4.0_550.54.14_linux.run


•执行安装命令
sudo sh ./cuda_12.4.0_550.54.14_linux.run

•输出accept开始安装
•然后注意这里要按enter取消勾选第一个选项,因为之前已经安装了驱动
•接着选择Install开始安装
•安装完成
3.6 环境变量配置
•以vim方式打开配置文件
sudo vim ~/.bashrc

•按i键进入编辑模式,在文件尾增加下面内容
export PATH="/usr/local/cuda-12.4/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda-12.4/lib64:$LD_LIBRARY_PATH"

按esc键退出编辑模式,输入:wq保存并退出

•更新环境变量
source ~/.bashrc

•检测CUDA是否安装成功
nvcc -V


三、安装miniconda环境
1.下载miniconda3
wget https://mirrors.cqupt.edu.cn/anaconda/minicond/Miniconda3-py310_23.10.0-1-Linux-x86_64.sh


2. 安装miniconda3
bash Miniconda3-py310_23.10.0-1-Linux-x86_64.sh -u

直接一直enter键,到输入路径和yes
这边建议路径为:miniconda3
直接回车enter即可,再次输入yes
成功安装

•  切换到bin文件夹
cd miniconda3/bin/

•  输入pwd获取路径
pwd
复制这里的路径


•  打开用户环境编辑页面
vim ~/.bashrc 
点击键盘I键进入编辑模式,在最下方输入以下代码
export PATH="/root/miniconda3/bin:$PATH"

按esc键退出编辑模式,输入:wq保存并退出


• 重新加载用户环境变量
source ~/.bashrc


• 初始化conda
conda init bash


• 验证是否安装成功
conda -V


3.conda配置
• 配置清华镜像源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ 
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ 
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/


• 设置搜索时显示通道地址
conda config --set show_channel_urls yes


• 配置pip镜像源
pip config set globalThis.index-url https://pypi.tuna.tsinghua.edu.cn/simple


四、安装Cosyvoice
1.克隆仓库
• github克隆
git clone --recursive https://github.com/FunAudioLLM/CosyVoice.git

• 国内github镜像克隆
git clone https://mirror.ghproxy.com/https://github.com/FunAudioLLM/CosyVoice.git

• 进入到Cosyvoice文件夹内
cd CosyVoice
git submodule update --init --recursive

2.创建Cosyvoice需要的环境
conda create -n Cosyvoice python=3.9
conda activate Cosyvoice

• 安装依赖库
conda install -y -c conda-forge pynini==2.1.5
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com
sudo apt-get install sox libsox-dev
sudo yum install sox sox-devel

• git模型下载,请确保已安装git lfs

git lfs install
mkdir -p pretrained_models
git clone https://www.modelscope.cn/iic/CosyVoice-300M.git pretrained_models/CosyVoice-300M
git clone https://www.modelscope.cn/iic/CosyVoice-300M-SFT.git pretrained_models/CosyVoice-300M-SFT
git clone https://www.modelscope.cn/iic/CosyVoice-300M-Instruct.git pretrained_models/CosyVoice-300M-Instruct
git clone https://www.modelscope.cn/iic/CosyVoice-ttsfrd.git pretrained_models/CosyVoice-ttsfrd

4.下载模型与启动
python3 webui.py --port 50000 --model_dir pretrained_models/CosyVoice-300M
命令中的 --port 50000: 设置服务器监听的端口为业务端口,此处改为业务端口。启动成功后,访问http://主机IP:端口