Как развернуть Hunyuan на своем сервере, пошаговый гайд
Что такое Hunyuan, можно почитать ТУТ
Если вкратце — это text2video(из текстового описания в видео) или image2video(из картинки + текстового описания в видео) модель от китайских разработчиков без NSFW (без цензуры), где вы, платя только за серверы, можете генерировать видео из текста или картинки в высоком разрешении.
Но, если вы нашли этот пост, то и так знаете, что это и зачем оно вам нужно)
Чтобы развернуть ML-модель на арендованном сервере, нужно:
1. Арендовать сам сервер
2. Установить все рекомендуемые зависимости (библиотеки, драйверы для карты и CUDA)
3. Запустить сам Hunyuan в режиме, который вам нужен
Теперь по пунктам:
1. Арендуем сервер, нужен сервер с GPU A100 (80 Гб памяти)
Тут сразу несколько вариантов. Я рекомендую выбирать тот, который удобнее именно вам, в зависимости от ваших потребностей и кошелька. Какие сейчас есть варианты:
- Selectel/Яндекс (если нужно платить российской картой и нет иностранной) — это примерно 400-500 руб. в час (видеокарты дорогие). Я тестировал только Selectel, для быстрых тестов нормально.
- AWS/GCP/DigitalOcean — примерно 5 долларов, так что по сути те же деньги. Этот вариант я не рекомендую совсем.
- vast.ai — 1,3 доллара в час. По нашинским это примерно 100 руб. Это мой вариант, его и вам рекомендую.
Остальные параметры не особо важны, я рекомендую выбирать сервер с быстрым интернетом и диском не меньше 250гб, чтобы все быстро скачалось и без проблем уместилось на диск
Все ВМ можно остановить после того, как с ними поработали, тогда вы платите только за диск (в среднем около 100 руб. в сутки). При этом ВМ не уничтожается — вы сможете ее включить, когда вам будет нужно, и продолжить работу.
2. Устанавливаем все зависимости
Одна ошибка — и ты ошибся. Тут может начаться веселье, поэтому я рекомендую всегда внимательно изучать, какие конкретно версии использовались в проектах (особенно китайских — они не умеют делать оптимизацию под людей, только под GPU).
Для примера возьмем Hunyuan-I2V:
2.1 CUDA
CUDA — необходимая штука для работы с видеокартами.
Что это такое? Совсем грубо — набор инструментов и библиотек для работы с GPU. Лучше почитать в интернете, если вам интересно.
Идеальный вариант — выбрать сервер с установленной CUDA нужной версии. Почти на всех хостингах есть выпадающий список шаблонов (Templates), иначе придется качать самостоятельно (не наш вариант).
В описании мы видим вот такую фразу:
We recommend CUDA versions 12.4 or 11.8 for the manual installation.
Это враньё — с CUDA 11.8 вы будете плясать с бубном очень долго, поэтому выбирайте сервер с CUDA 12.4 (или выше, но не сильно).
2.2 Python
Также надо выбрать образ с нужной нам версией Python(3.11). Я отметил его на скрине — там и Python, и CUDA нужной версии.

2.3 Conda
Найти инструкцию можно тут. Главное в конце (пункт 7) выбрать yes. В остальном инструкция написана хорошо, так что этот пункт я пропущу.
2.4 Библиотеки
У Hunyuan есть инструкция, как установить все зависимости. Тут есть несколько нюансов. Делайте строго по порядку, но не выключайте голову — если видите ошибки, значит, вы что-то сделали неправильно из шагов выше.
- flash-attention может устанавливаться долго, но если этого не произошло за 10-15 минут, значит, лучше не ждать — где-то ошибка (у меня обычно он устанавливается за 2-3 секунды).
- xfuser — в инструкции есть строчка:
python -m pip install xfuser==0.4.0
Если вы так сделаете, у вас ничего не заработает (лол). Просто не скачивайте его — он и так идет в зависимостях к PyTorch. Он в любом случае нужен, если вы арендуете сервер с несколькими GPU (я пробовал взять 4×A100). В остальных случаях он не нужен.
- Вот это вообще можете не делать — у вас уже все должно быть
pip install nvidia-cublas-cu12==12.4.5.8
export LD_LIBRARY_PATH=/opt/conda/lib/python3.8/site-packages/nvidia/cublas/lib/
3. Осталось самое простое!
Скачать нужные модельки и запустить. Инструкция по установке моделей тут (будьте осторожны — они немного ошиблись с командами, добавили cd туда, где он не нужен).
После установки структура папок у вас должна быть такая:
├──ckpts
│ ├──hunyuan-video-i2v-720p
│ ├──text_encoder_i2v
│ ├──text_encoder_2
Даже если вы криво скачали, можно просто перенести.
Если вы все правильно сделали, можно запускаться! Попробуйте запустить их пример из демо для одной GPU.
Если у вас сервер с несколькими GPU, порядок действий тот же, но команда запуска другая.
Как только все отработает, можно забирать готовое видео из папки results!
Какие видео будет делать вы? Пишите в комментариях!
У меня также есть телеграмм канал, приходите :-)