香港科技大學提出YuE:Suno級別開源音樂生成模型,支持中文!
YuE是港科大提出的一個開源的音樂生成基礎模型,專為音樂生成而設計,專門用于將歌詞轉(zhuǎn)換成完整的歌曲(lyrics2song)。它可以生成一首完整的歌曲,時長幾分鐘,包括朗朗上口的聲樂曲目和伴奏曲目。YuE 能夠模擬多種流派/語言/聲樂技巧。
YuE(樂)在中文中意為“音樂”和“幸?!?。對于那些覺得以 Yu 開頭的單詞發(fā)音困難的人來說,可以將其發(fā)音為“yeah”。一起來聽一下YuE為自己創(chuàng)作的歌曲~
論文介紹
從給定的歌詞生成整首歌曲音樂音頻稱為 lyrics2song。雖然基于文本的音樂生成模型已在非人聲音樂的短片段上產(chǎn)生了高質(zhì)量的結果,但生成包含人聲和伴奏部分的長達數(shù)分鐘的完整歌曲仍然是一個具有挑戰(zhàn)性的問題,我們只從幾個閉源的商業(yè)系統(tǒng)中看到了一些令人滿意的結果。
lyrics2song 的挑戰(zhàn)主要在于:
- 音樂的長上下文性質(zhì)
- 音樂信號與其他信號(語音、音頻效果)相比的復雜性
- 扭曲的語言內(nèi)容和
- 缺乏并行數(shù)據(jù)(歌詞-音頻對)。
本文提出的YuE是一系列用于 lyrics2song 的開放基礎語言模型,并入了 llama 系列。該方法可以建模長達5分鐘的音樂音頻,在整首歌曲中遵循歌詞條件,保持連貫的音樂結構,生成朗朗上口的聲樂旋律和適當?shù)陌樽唷?/span>
方法
- 我們應用語義增強的音頻標記器來降低訓練成本并加速收斂
- 我們提出了一種雙標記技術,無需修改僅使用 llama 解碼器的架構即可實現(xiàn)音軌同步的聲樂樂器建模,從而享受已建立的擴展和服務基礎設施 3. 我們引入了歌詞思路鏈,讓模型根據(jù)歌詞條件在單一上下文中逐步生成整首歌曲
- 提出了一種 3 階段訓練方案,以確保更好的可擴展性、音樂性和歌詞可控性。
硬件和性能
GPU 內(nèi)存
YuE 需要大量 GPU 內(nèi)存來生成長序列。以下是推薦的配置:
- 對于具有 24GB 或更少內(nèi)存的 GPU:最多運行 2 個會話以避免內(nèi)存不足 (OOM) 錯誤。感謝社區(qū),對于那些 GPU 資源有限的用戶,我們有YuE-exllamav2和YuEGP。雖然兩者都提高了生成速度和連貫性,但它們可能會損害音樂性。(PS 更好的提示和 ICL 幫助!)
- 對于完整的歌曲生成(許多會話,例如 4 個或更多):使用具有至少 80GB 內(nèi)存的 GPU。即 H800、A100 或具有張量并行的多個 RTX4090。 若要自定義會話數(shù)量,界面允許您指定所需的會話數(shù)。默認情況下,模型運行2 個會話(1 個主歌 + 1 個副歌)以避免 OOM 問題。
執(zhí)行時間
在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/?cnotallow=875c0131a704a7ce2658845b9fdc657b
- GitHub:https://github.com/multimodal-art-projection/YuE