当前位置: 首页 > news >正文

港科大提出开放全曲音乐生成基础模型YuE:可将歌词转换成完整歌曲

YuE是港科大提出的一个开源的音乐生成基础模型,专为音乐生成而设计,专门用于将歌词转换成完整的歌曲(lyrics2song)。它可以生成一首完整的歌曲,时长几分钟,包括朗朗上口的声乐曲目和伴奏曲目。YuE 能够模拟多种流派/语言/声乐技巧。

YuE(乐)在中文中意为“音乐”和“幸福”。对于那些觉得以 Yu 开头的单词发音困难的人来说,可以将其发音为“yeah”

论文介绍

从给定的歌词生成整首歌曲音乐音频称为 lyrics2song。虽然基于文本的音乐生成模型已在非人声音乐的短片段上产生了高质量的结果,但生成包含人声和伴奏部分的长达数分钟的完整歌曲仍然是一个具有挑战性的问题,我们只从几个闭源的商业系统中看到了一些令人满意的结果。

lyrics2song 的挑战主要在于:

  1. 音乐的长上下文性质

  2. 音乐信号与其他信号(语音、音频效果)相比的复杂性

  3. 扭曲的语言内容和

  4. 缺乏并行数据(歌词-音频对)。

本文提出的YuE是一系列用于 lyrics2song 的开放基础语言模型,并入了 llama 系列。该方法可以建模长达5分钟的音乐音频,在整首歌曲中遵循歌词条件,保持连贯的音乐结构,生成朗朗上口的声乐旋律和适当的伴奏。

方法

  1. 我们应用语义增强的音频标记器来降低训练成本并加速收敛

  2. 我们提出了一种双标记技术,无需修改仅使用 llama 解码器的架构即可实现音轨同步的声乐乐器建模,从而享受已建立的扩展和服务基础设施 3. 我们引入了歌词思路链,让模型根据歌词条件在单一上下文中逐步生成整首歌曲

  3. 提出了一种 3 阶段训练方案,以确保更好的可扩展性、音乐性和歌词可控性。

硬件和性能

GPU 内存

YuE 需要大量 GPU 内存来生成长序列。以下是推荐的配置:

  • 对于具有 24GB 或更少内存的 GPU:最多运行 2 个会话以避免内存不足 (OOM) 错误。感谢社区,对于那些 GPU 资源有限的用户,我们有YuE-exllamav2和YuEGP。虽然两者都提高了生成速度和连贯性,但它们可能会损害音乐性。(PS 更好的提示和 ICL 帮助!)

  • 对于完整的歌曲生成(许多会话,例如 4 个或更多):使用具有至少 80GB 内存的 GPU。即 H800、A100 或具有张量并行的多个 RTX4090。 若要自定义会话数量,界面允许您指定所需的会话数。默认情况下,模型运行2 个会话(1 个主歌 + 1 个副歌)以避免 OOM 问题。

执行时间

在H800 GPU上,生成 30 秒音频需要150 秒。在RTX 4090 GPU上,生成 30 秒音频大约需要360 秒。

安装试用

Windows 用户快速入门

  • 一键安装:https://pinokio.computer/。

  • Gradio与Docker结合使用:https://github.com/sdbds/YuE-for-windows

Linux/WSL 用户快速入门

  • Fahd视频教程:https://www.youtube.com/watch?v=RSMNH9GitbA

  • GUI/Gradio:https://github.com/WrongProtocol/YuE-exllamav2-UI

相关链接

  • 主页:https://map-yue.github.io/?continueFlag=875c0131a704a7ce2658845b9fdc657b

  • GitHub:https://github.com/multimodal-art-projection/YuE

http://www.lryc.cn/news/543213.html

相关文章:

  • Python学习第十七天之PyTorch保姆级安装
  • 有关与 WSL 2 的主要区别的信息,请访问 https://aka.ms/wsl2
  • 什么是 Java 中的线程安全?
  • 计算机视觉(opencv-python)入门之图像的读取,显示,与保存
  • QT:Graphics View的坐标系介绍
  • 530 Login fail. A secure connection is requiered(such as ssl)-java发送QQ邮箱(简单配置)
  • vs2015下使用openmp
  • Docker 搭建 Gitlab 服务器 (完整详细版)
  • 【万字长文】开源之播对话白鲸开源CEO郭炜--乐观主义的开源精神走得更远
  • 机试刷题_674. 最长连续递增序列【python】
  • ipe网络安全
  • QT:QPen、QBrush、与图形抗锯齿的关联
  • android keystore源码分析
  • 【12】智能合约开发入门
  • web安全——分析应用程序
  • Wpf 之Generic.xaml
  • VidSketch:具有扩散控制的手绘草图驱动视频生成
  • 解锁C# XML编程:从新手到实战高手的蜕变之路
  • kafka-leader -1问题解决
  • 超大规模分类(四):Partial FC
  • uniapp 小程序如何实现大模型流式交互?前端SSE技术完整实现解析
  • 因子分析详解:从理论到MATLAB实战
  • 【组态PLC】基于三菱西门子S7-200PLC和组态王液料混合系统组态设计【含PLC组态源码 M016期】
  • js:根据后端返回的数组取出每一个数组的keyword字段然后拼接成一个逗号分隔的字符串
  • 基于大模型的肺纤维化预测及临床方案研究报告
  • 7. 【.NET 8 实战--孢子记账--从单体到微服务--转向微服务】--微服务基础工具与技术--Ocelot 网关--路由
  • 【GESP】C++二级模拟 luogu-b3995, [GESP 二级模拟] 小洛的田字矩阵
  • 监督学习——基于线性回归的波士顿房价预测:理论、实践与评估
  • Selenium 调用模型接口实现功能测试
  • 回调函数的用法