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