Telegram Group & Telegram Channel
Yue-7b - генерируем песни на русском локально

Языки: английский, китайский, японский, корейский, русский (с акцентом).
генерация:
- по жанру + тексту песни
- по референсному аудио + жанру + тексту песни (почти кавер, позволяет задать нужное направление)
- в fp16 весит 12.5 GB. в формате nf4 занимает всего 6.5 GB vram!
- на русском лучше генерирует мужской голос. В женских - сильный акцент.

## Установка под Windows (без wsl)

Нужны
- питон 3.9 (3.8 не подойдет для flash-attention)
- torch 2.5.1 (flash-attention скомпилирован лишь для нескольких версий торча)
- cuda toolkit 12.4+

conda create -n yue python=3.9
conda activate yue
pip install torch==2.5.1 torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124

качаем файл flash_attn-2.7.1.post1+cu124torch2.5.1cxx11abiFALSE-cp39-cp39-win_amd64.whl
отсюда https://github.com/bdashore3/flash-attention/releases в папку, куда у вас идет установка
pip install flash_attn-2.7.1.post1+cu124torch2.5.1cxx11abiFALSE-cp39-cp39-win_amd64.whl

git lfs install
git clone https://github.com/multimodal-art-projection/YuE
cd YuE
pip install -r requirements.txt

cd inference/
git clone https://huggingface.co/m-a-p/xcodec_mini_infer


## Фиксим поддержку русского языка в UTF8
строку 120: with open(args.genre_txt) as f:
меняем на: with open(args.genre_txt, encoding="utf-8") as f:

строку 122: with open(args.lyrics_txt) as f:
меняем на: with open(args.lyrics_txt, encoding="utf-8") as f:


## Генерация
в папке inference создаем 2 файла genre.txt и lyrics.txt
в genre пишем: vocal punk rock electric guitar male vocal
Проверяем что кодировка в файлах UTF8
в lyrics пишем: 3-4 коротких сегмента: 2 куплета + 1 припев. При 2-х сегментах, у меня почему-то не запускался инференс. Пример:

Пластмассовый мир победил
...

[chorus]
Ооо - моя оборона
...

[verse]
...


Генерацию по промпту:
python infer.py --stage1_model m-a-p/YuE-s1-7B-anneal-en-cot --stage2_model m-a-p/YuE-s2-1B-general --genre_txt genre.txt --lyrics_txt lyrics.txt --run_n_segments 2 --stage2_batch_size 4 --output_dir ./output --cuda_idx 0 --max_new_tokens 1000

Генерация по промпту + референсному аудио:
python infer.py --stage1_model m-a-p/YuE-s1-7B-anneal-en-icl --stage2_model m-a-p/YuE-s2-1B-general --genre_txt genre.txt --lyrics_txt lyrics.txt --run_n_segments 2 --stage2_batch_size 4 --output_dir ./output --cuda_idx 0 --audio_prompt_path Egor_Letov_-_Moya_oborona.mp3 --max_new_tokens 1000


--run_n_segments - количество сегментов (куплетов + припевов)
--max_new_tokens - время песни в каждом сегменте. Длина песни если сегмента 2: 1000x2 = 20s, 3000 = 60s. Чем больше время, тем больше надо vram.

## Скорость и vram на 3090:
20s аудио - 12.5 GB (15 минут)
60s аудио - 15.6 GB (32 минуты)

## 8-12 GB VRAM и 3000 серия и nf4
Если у вас всего 8-12 GB попробуйте запустить модель в кванте nf4 (load_in_4bit=True). Особого падения качества пока не заметил. 10 секунд аудио будут занимать всего 6.6 GB VRAM. Запускать в gguf пока не имеет смысла, они будут автоматом конвертироваться в bf16, надо ждать нормальную реализацию гуфов для модели. На 2080 пока не запускается, flash attention похоже не поддерживается. Без него тоже можно, но будет медленнее и надо больше vram.

Для nf4 нужно установить:
pip install accelerate bitsandbytes
в infer.py измените строки 76-82 на:
model = AutoModelForCausalLM.from_pretrained(
stage1_model,
load_in_4bit=True,
torch_dtype=torch.bfloat16,
attn_implementation="flash_attention_2",
)

Скорость на 3060: 10s = 11 минут.

примеры на английском: https://map-yue.github.io/
потестить (русского нет):
- (квоты хватит на 10+10 секунд песни, не ставьте длину больше 10 секунд - упадет по ошибке): https://huggingface.co/spaces/innova-ai/YuE-music-generator-demo
- (15 секунд, ждать очереди больше часа): https://huggingface.co/spaces/fffiloni/YuE



group-telegram.com/tensorbanana/1179
Create:
Last Update:

Yue-7b - генерируем песни на русском локально

Языки: английский, китайский, японский, корейский, русский (с акцентом).
генерация:
- по жанру + тексту песни
- по референсному аудио + жанру + тексту песни (почти кавер, позволяет задать нужное направление)
- в fp16 весит 12.5 GB. в формате nf4 занимает всего 6.5 GB vram!
- на русском лучше генерирует мужской голос. В женских - сильный акцент.

## Установка под Windows (без wsl)

Нужны
- питон 3.9 (3.8 не подойдет для flash-attention)
- torch 2.5.1 (flash-attention скомпилирован лишь для нескольких версий торча)
- cuda toolkit 12.4+

conda create -n yue python=3.9
conda activate yue
pip install torch==2.5.1 torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124

качаем файл flash_attn-2.7.1.post1+cu124torch2.5.1cxx11abiFALSE-cp39-cp39-win_amd64.whl
отсюда https://github.com/bdashore3/flash-attention/releases в папку, куда у вас идет установка
pip install flash_attn-2.7.1.post1+cu124torch2.5.1cxx11abiFALSE-cp39-cp39-win_amd64.whl

git lfs install
git clone https://github.com/multimodal-art-projection/YuE
cd YuE
pip install -r requirements.txt

cd inference/
git clone https://huggingface.co/m-a-p/xcodec_mini_infer


## Фиксим поддержку русского языка в UTF8
строку 120: with open(args.genre_txt) as f:
меняем на: with open(args.genre_txt, encoding="utf-8") as f:

строку 122: with open(args.lyrics_txt) as f:
меняем на: with open(args.lyrics_txt, encoding="utf-8") as f:


## Генерация
в папке inference создаем 2 файла genre.txt и lyrics.txt
в genre пишем: vocal punk rock electric guitar male vocal
Проверяем что кодировка в файлах UTF8
в lyrics пишем: 3-4 коротких сегмента: 2 куплета + 1 припев. При 2-х сегментах, у меня почему-то не запускался инференс. Пример:

Пластмассовый мир победил
...

[chorus]
Ооо - моя оборона
...

[verse]
...


Генерацию по промпту:
python infer.py --stage1_model m-a-p/YuE-s1-7B-anneal-en-cot --stage2_model m-a-p/YuE-s2-1B-general --genre_txt genre.txt --lyrics_txt lyrics.txt --run_n_segments 2 --stage2_batch_size 4 --output_dir ./output --cuda_idx 0 --max_new_tokens 1000

Генерация по промпту + референсному аудио:
python infer.py --stage1_model m-a-p/YuE-s1-7B-anneal-en-icl --stage2_model m-a-p/YuE-s2-1B-general --genre_txt genre.txt --lyrics_txt lyrics.txt --run_n_segments 2 --stage2_batch_size 4 --output_dir ./output --cuda_idx 0 --audio_prompt_path Egor_Letov_-_Moya_oborona.mp3 --max_new_tokens 1000


--run_n_segments - количество сегментов (куплетов + припевов)
--max_new_tokens - время песни в каждом сегменте. Длина песни если сегмента 2: 1000x2 = 20s, 3000 = 60s. Чем больше время, тем больше надо vram.

## Скорость и vram на 3090:
20s аудио - 12.5 GB (15 минут)
60s аудио - 15.6 GB (32 минуты)

## 8-12 GB VRAM и 3000 серия и nf4
Если у вас всего 8-12 GB попробуйте запустить модель в кванте nf4 (load_in_4bit=True). Особого падения качества пока не заметил. 10 секунд аудио будут занимать всего 6.6 GB VRAM. Запускать в gguf пока не имеет смысла, они будут автоматом конвертироваться в bf16, надо ждать нормальную реализацию гуфов для модели. На 2080 пока не запускается, flash attention похоже не поддерживается. Без него тоже можно, но будет медленнее и надо больше vram.

Для nf4 нужно установить:
pip install accelerate bitsandbytes
в infer.py измените строки 76-82 на:
model = AutoModelForCausalLM.from_pretrained(
stage1_model,
load_in_4bit=True,
torch_dtype=torch.bfloat16,
attn_implementation="flash_attention_2",
)

Скорость на 3060: 10s = 11 минут.

примеры на английском: https://map-yue.github.io/
потестить (русского нет):
- (квоты хватит на 10+10 секунд песни, не ставьте длину больше 10 секунд - упадет по ошибке): https://huggingface.co/spaces/innova-ai/YuE-music-generator-demo
- (15 секунд, ждать очереди больше часа): https://huggingface.co/spaces/fffiloni/YuE

BY Tensor Banana


Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260

Share with your friend now:
group-telegram.com/tensorbanana/1179

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

Update March 8, 2022: EFF has clarified that Channels and Groups are not fully encrypted, end-to-end, updated our post to link to Telegram’s FAQ for Cloud and Secret chats, updated to clarify that auto-delete is available for group and channel admins, and added some additional links. "The inflation fire was already hot and now with war-driven inflation added to the mix, it will grow even hotter, setting off a scramble by the world’s central banks to pull back their stimulus earlier than expected," Chris Rupkey, chief economist at FWDBONDS, wrote in an email. "A spike in inflation rates has preceded economic recessions historically and this time prices have soared to levels that once again pose a threat to growth." On Telegram’s website, it says that Pavel Durov “supports Telegram financially and ideologically while Nikolai (Duvov)’s input is technological.” Currently, the Telegram team is based in Dubai, having moved around from Berlin, London and Singapore after departing Russia. Meanwhile, the company which owns Telegram is registered in the British Virgin Islands. Asked about its stance on disinformation, Telegram spokesperson Remi Vaughn told AFP: "As noted by our CEO, the sheer volume of information being shared on channels makes it extremely difficult to verify, so it's important that users double-check what they read." Individual messages can be fully encrypted. But the user has to turn on that function. It's not automatic, as it is on Signal and WhatsApp.
from us


Telegram Tensor Banana
FROM American