今天發現到有個專案叫YuE(樂),可以本地部屬用來生成音樂,就像suno那樣的服務。
[更新]
目前發現安裝完成運行會寫失敗,原因不明。即使選最慢的模式有達到要求的24GBRAM 10GB VRAM也是報錯。
之後嘗試看看int8的版本試試,也失敗了。
後來爬文說失敗原因可能是歌詞太短!!我已經把專案刪了,只能改天試試看(這個就不重試了,即使跑起來那個速度也不行)
[更新]
改測試YuEGP版本,確實有裝起來了。也能跑,但太慢了~ 使用範例的歌詞與參數 (RTX3060 12GB)顯卡,跑了55分鐘還寫大概要20分鐘,等於1個多小時才能跑的出30秒的音樂。(官方範例寫4090約360秒能跑出30秒的音樂,好像也合理兩張卡確實性能差了12.5倍左右)
只能說顯卡跟我一樣的就別浪費時間測試官方版本跟YuEGP版本的了 (我在Issues裡面有找到一個YuE-exllamav2版本說能讓性能大幅提升?,還在測試中,最下方有附上實測)
[更新]
跑了一個多小時真的有跑出結果來,音樂居然是60秒的,聽起來是OK就是要跑太久了(一直抱怨????)
官方版的
安裝方式:
首先到它的github window版的連結
步驟一別理它,它這樣刪除一半,還以為要執行安裝conda install pytorch torchvision torchaudio cudatoolkit=11.8 -c pytorch -c nvidia pip install -r <(curl -sSL https://raw.githubusercontent.com/multimodal-art-projection/YuE/main/requirements.txt) 這段,後來發現完全不需要....
我們只需要在電腦建立一個目錄,呼叫CMD (例如在F:project\AI 建立YuE資料夾),打開CMD
執行將專案clone下來
git lfs install
找到install-uv-qinglong ,右鍵 用Powershell執行,它就會自動化建立虛擬環境,安裝必要的包之類的
(不過它默認會將一些資料裝在C:,要確認C:是否夠大,或者用文本編輯器改一下路徑)
再來用文本編輯器打開 2.run,可以把$stage1_model "m-a-p/YuE-s1-7B-anneal-zh-cot",改成zh,保存後在右鍵用PowerShell執行
會自動下載必要模型,要抓一陣子。(模型大概12G左右)
這個是一個範例,無介面版的推理。
接下來可以嘗試運行,2、run_gradio,一樣用Powershell執行,就有介面版的可以用
我花了兩個多小時,在自行部屬環境還跑不通.....浪費一堆時間跟硬碟空間。後來發現Windows安裝不用這麼麻煩....
但我後來發現我這版本需要的GPU比較高,不知道跑不跑得動,還有另一個版本
這個似乎只要比較少GPU,改天再試試看差異
可以參考這個安裝
https://www.youtube.com/watch?v=zw46L4pDFWo
YuE-exllamav2版本的
昨晚弄到半夜4點一直安裝失敗,今天起來後終於安裝好了,這個版本的確實比較快嗎?,它沒提供UI介面,有看到另一個版本的加上的UI,但那個要用docker安裝,我就沒裝了,改用AI寫一個簡單的UI。
專案github
安裝步驟
先說一下環境,我是採用python3.12、CUDA12.1
1.建立虛擬環境
python -m venv myevnv
2.進入虛擬環境
myevnv\Scripts\activate
詳細python虛擬環境使用介紹:https://blog.aidec.tw/post/python-create-venv
3.安裝exllamav2
pip install exllamav2
pip install flash-attn
4.下載推斷程式碼和 tokenizer
git lfs install
git clone https://github.com/sgsdxzy/YuE-exllamav2.git
cd YuE-exllamav2
5.安裝環境依賴
pip install -r requirements.txt
這步驟可能會報錯,打開requirements.txt,將scipy==1.10.1 改成 scipy>=1.10.1,再次pip install -r requirements.txt
6.運行推理
python src/yue/infer.py --stage1_use_exl2 --stage2_use_exl2 --stage2_cache_size 32768 [original args]
才怪!千萬不要直接這樣運行推理,它會使用 JIT 編譯,就會陷入無盡的編譯錯誤,CUDA12.1 只支援visualstudio 2022舊版本的,但現在的版本都太新了,超出CUDA12.1的預期,怎麼改都會失敗,我已經重新裝了好多個版本都失敗,改環境變數....。
最後發現,它有提供一個whl版本的....可以略過JIT編譯這環節
到這邊來選擇對應的版本
我選的是exllamav2-0.2.7+cu121.torch2.5.0-cp312-cp312-win_amd64這個版本的
下載好以後,放到這個專案目錄來,在CMD虛擬環境輸入,就會安裝所需的
pip install exllamav2-0.2.7+cu121.torch2.5.0-cp312-cp312-win_amd64.whl
到這個環節還不能進行推理,因為這個版本不會自己下載模型
我們得將這兩個git clone下來
https://huggingface.co/m-a-p/YuE-s2-1B-general
https://huggingface.co/m-a-p/YuE-s1-7B-anneal-en-cot
一樣在CMD這個專案的目錄,輸入
git clone https://huggingface.co/m-a-p/YuE-s2-1B-general
git clone https://huggingface.co/m-a-p/YuE-s1-7B-anneal-en-cot
大概有10幾個GB,要等一陣子,抓好以後可以建立一個新的目錄叫Model,把這兩個放入
推理改成這樣,指定model路徑 跟添加lyrics genre路徑
python src/yue/infer.py --stage1_model "你的目錄\YuE-exllamav2\Model\YuE-s1-7B-anneal-en-cot" --stage2_model "你的目錄\YuE-exllamav2\Model\YuE-s2-1B-general" --stage1_use_exl2 --stage2_use_exl2 --stage2_cache_size 32768 --genre_txt prompt_egs\genre.txt --lyrics_txt prompt_egs\lyrics.txt
但跑完後感覺有點被騙了,進度條第一段確實快,但第二段反而要跑57分鐘,這樣加起來不就比原本的版本還慢!
[重要更新]
上面的模型錯了,用了上面的會使用原來的模型,速度就跟其他專案一樣,要改用它,手動抓下來
https://huggingface.co/Doctor-Shotgun/YuE-s1-7B-anneal-en-cot-exl2/tree/4.25bpw-h6
https://huggingface.co/Doctor-Shotgun/YuE-s2-1B-general-exl2/tree/8.0bpw-h8
一樣放到Model,推理改這樣
python src/yue/infer.py --stage1_model "你的目錄\Model\YuE-s1-7B-anneal-en-cot-exl2" --stage2_model "你的目錄\Model\YuE-s2-1B-general-exl2" --stage1_use_exl2 --stage2_use_exl2 --stage2_cache_size 32768 --genre_txt prompt_egs\genre.txt --lyrics_txt prompt_egs\lyrics.txt
Model路徑
速度飛快,大概兩階段加起來8分鐘,可以生成一段50~60秒的音樂
model1 使用4.25bpw 生成50~60秒(兩段)的約八分鐘,假如生成4段需要跑90分鐘左右
model1 若使用8.0bpw生成50~60秒(兩段)的約20分40秒
缺點是沒有UI介面,lyrics歌詞填中文會報錯的樣子(在windows編輯輸入中文會導致編碼問題)
目前可以通過修改src/yue/infer_stage1.py,改成utf-8 就能通過中文了
with open(args.genre_txt, "r", encoding="utf-8") as f:
genres = f.read().strip()
with open(args.lyrics_txt, "r", encoding="utf-8") as f:
lyrics = f.read().strip()
試聽一下成果
還用AI搞了一個簡易的UI出來
已經將GUI放在Github,有興趣的人,可以自行去下載
https://github.com/aidec/YuE-exllamav2-GUI-easy
文章轉載或引用,請先告知並保留原文出處與連結!!(單純分享或非營利的只需保留原文出處,不用告知)
原文連結:
https://blog.aidec.tw/post/yue-install-win
若有業務合作需求,可寫信至: opweb666@gmail.com
創業、網站經營相關內容未來將發布在 小易創業筆記