一、介绍
YuE(乐・悦)是由香港科技大学与 Multimodal Art Projection(M-A-P)团队联合开发的开源 AI 音乐生成模型,能够生成包含声乐与伴奏的高质量音乐,支持多种语言(如英语、普通话、粤语、日语、韩语)和音乐风格(如流行、爵士、说唱、民谣等),最长可生成5分钟的完整歌曲。
其技术突破体现在三大核心模块:
- 语义增强音频分词器
传统音乐生成模型面临 “歌词与旋律脱节” 的问题,例如中文歌词的 “押韵” 与旋律节奏不匹配。YuE 通过语义增强音频分词器,将歌词的语义信息(如情感、主题)与音乐信号(如节拍、和弦)深度绑定。例如,当输入 “孤独的夜晚” 时,模型会自动匹配 minor 调式和缓慢节奏,生成符合意境的旋律。 - 双分词技术与音轨同步
为解决声乐与伴奏的协调性问题,YuE 提出双分词技术:在不修改 LLaMA 解码器架构的前提下,同时生成主唱和伴奏的音轨。例如,生成摇滚风格歌曲时,模型会同步生成失真吉他 riff 和鼓点节奏,确保两者在节奏和旋律上无缝衔接。 - 歌词链式思维生成
针对长上下文音乐生成的连贯性挑战,YuE 引入 歌词链式思维(Lyrics-CoT)技术。模型将歌词拆分为多个段落(如主歌、副歌),逐段生成旋律,并通过跨段落注意力机制保持整体结构统一。例如,在生成 5 分钟的叙事歌曲时,副歌部分会重复主歌的核心动机,增强记忆点。
二、部署流程
环境推荐配置
系统:Ubuntu22.04,
显卡:4090,
显存:24G,cuda12.4.1
1. 基础环境
查看系统是否有Miniconda3的虚拟环境
conda -V
如果输入命令没有显示Conda版本号,则需要安装。
2.更新系统命令
输入下列命令将系统更新及系统下载
apt-get update && apt-get install ffmpeg libsm6 libxext6 -y
3.创建虚拟环境
创建名称为“yue”的虚拟环境并激活
conda create -n yue python=3.11 -y
conda activate yue
4.下载模型
输入下列命令下载YuE模型同时进入项目中
git clone https://gitclone.com/github.com/multimodal-art-projection/YuE.git;cd YuE
5.下载模型依赖包
输入下列命令:
pip install -r requirements.txt
建议使用这行命令,提升下载速度:
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
直到“Successfully”出现,下载才结束:
6.下载分词器
cd YuE/inference/
rm -rf xcodec_mini_infer
git lfs install
git clone https://huggingface.co/m-a-p/xcodec_mini_infer
三、命令演示
输入下列命令:
python infer.py \
--cuda_idx 0 \
--stage1_model /root/sj-tmp/m-a-p/YuE-s1-7B-anneal-en-icl \
--stage2_model /root/sj-tmp/m-a-p/YuE-s2-1B-general \
--genre_txt ../prompt_egs/genre.txt \
--lyrics_txt ../prompt_egs/lyrics.txt \
--run_n_segments 2 \
--stage2_batch_size 4 \
--output_dir ../output \
--max_new_tokens 3000 \
--repetition_penalty 1.1 \
--use_audio_prompt \
--audio_prompt_path ../prompt_egs/pop.00001.mp3 \
--prompt_start_time 0 \
--prompt_end_time 30