Обновить

Где живут LLM: разбираем инференс-кластер YADRO и гоняем в нем модели

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели11K
Всего голосов 19: ↑19 и ↓0+26
Комментарии7

Комментарии 7

По идее, что 20 инстансов DeepSeek-R1-Distill-Qwen-32B, что один полноценный deepseek-r1 - по скорости и ресурсам должно быть сопоставимо. Но качество будет за "полной" моделью.
P.S. qwen3 не тестировали? Что-то модели в целом не самые свежие...

Спасибо за комментарий!

На счет новых моделей - мы как раз сейчас тестируем новые Qwen3 и T-pro 2.0 на своих задачах.

По поводу "полная" vs "малая" модель. Во-первых, 20 инстансов обеспечивают большую пропускную способность (throughput) системы, т.к. могут одновременно обрабатывать всходящий запросы. Во-вторых, большая модель будет работать медленнее за счет большей вычислительной сложности, большей нагрузки по работе с памятью и из-за дополнительных накладных расходов на распараллеливание и синхронизацию между GPU и серверами. В-третьих, что касается качества - грубо говоря, модель в 10 раз больше по размеру не даёт в 10 раз лучшее качество. Сейчас небольшие модели всё больше догоняют по результатам тяжелые. Мы, к примеру, у себя внутри экспериментировали с одной модель на 400B параметров в задачах суммаризации и тех.поддержки и там она себя не показала чем то лучше более "скромной" модели на 32B. А по ресурсам и скорости работы естественно проигрывала. В итоге мы решили отказаться от таких больших моделей в пользу более компактных, но лучше масштабируемых.

Сейчас "большие" модели с MoE делают, так что вычислительная сложность не так сильно растет (а то и падает - Qwen3-235B-A22B будет быстрее 32B-модели - потому как активных параметров меньше). У deepseek-v3/r1 37B активных, если не ошибаюсь, что сравнимо с 32B-моделями.

Но вот потребление памяти - да, растет и сильно.

Буквально вчера обновился Qwen3-30B-A3B - по бенчмаркам обходит оригинальный Qwen3-235B-A22B (который тоже обновился неделю назад). На днях жду более компактную Qwen3-Coder ) Она будет что-то вроде Qwen3-Coder-60B-A6B, т.е. в 2 раза крупнее Qwen3-30B-A3B (судя по Qwen3-Coder-480B-A35B и Qwen3-235B-A22B-2507).

И да, новый Qwen3-30B-A3B стал лучше - как минимум одну проблему, с которой я разные LLM тестирую, он решает (на уровне "в бреде присутствует правильный ответ", но другие LLM просто бредят).

В-третьих, что касается качества - грубо говоря, модель в 10 раз больше по размеру не даёт в 10 раз лучшее качество

Да, качество растет нелинейно. И бенчмарки не сильно помогают - модели специально учатся их проходить, что искажает реальные навыки модели.

P.S. да, что-то про "20 инстансов DeepSeek-R1-Distill-Qwen-32B, что один полноценный deepseek-r1 - по скорости и ресурсам должно быть сопоставимо" я хватанул лишку, LLM не так хорошо параллелится, даже если опустить накладные расходы.

P.P.S. вот что радует - новые модели, за счет совершенствования методов обучения, значительно растут и в навыках. Что дает надежду, что на CPU можно будет "гонять" все более и более приличную модель (хотя Qwen3-30B-A3B - уже более чем приличная модель, очень хороша в технических вопросах).

P.P.P.S. у новых Qwen3 контекст в 256K нативный и расширяется до 1M (вот только не помню, где это вычитал).

Но вот потребление памяти - да, растет и сильно.

Да, и это большая нагрузка на ресурсы. Для стабильной и бесперебойной работы модели, а также масштабирования на большое число пользователей, приходится держать несколько инстансов. И для больших моделей это становится очень накладно.

P.S. да, что-то про "20 инстансов DeepSeek-R1-Distill-Qwen-32B, что один полноценный deepseek-r1 - по скорости и ресурсам должно быть сопоставимо" я хватанул лишку, LLM не так хорошо параллелится, даже если опустить накладные расходы.

Тут ещё дело в том, что один инстанс большой модели обрабатывает один батч за раз. А 20 инстансов малой модели - 20 батчей за раз.

P.P.P.S. у новых Qwen3 контекст в 256K нативный и расширяется до 1M (вот только не помню, где это вычитал).

Да, есть такой механизм (YaRN) - https://qwen.readthedocs.io/en/latest/deployment/vllm.html#context-length. Мы так в Qwen 2.5 контекст с 32k до 128k расширяем. На счёт третьего Qwen'а - пока попробуем дефолтный 256k, это и так уже превышает наш текущий максимум. К тому же эта техника не бесплатна в плане производительности.

T-pro 2.0  🚀 поделитесь потом результатами :)

Очень интересная статья!
Подскажите, если не секрет, какое железо используется для какой LLM.

Упомянули 4090, но они не поддерживают виртуализацию, следовательно их применяете для каких-то небольших нейронок в режиме 1 сервер = 1 llm? Или есть способы делить аппаратные мощности между LLM на игровых картах?

Спасибо за комментарий!

По моделям - эмбеддинги, реранкеры и модели до 8B мы запускаем на RTX4090, остальные - на H100.

На данный момент мы не разделяем GPU между несколькими моделями, но наша DevOps команда рассматривает варианты для запуска нескольких серверов в рамках одной GPU, в том числе и на 4090 (https://habr.com/ru/articles/913374/, https://github.com/NVIDIA/KAI-Scheduler/blob/main/docs/gpu-sharing/README.md). Данный режим больше рассматривается для небольших моделей эмбеддингов и реранкеров.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Информация

Сайт
yadro.com
Дата регистрации
Дата основания
Численность
5 001–10 000 человек
Местоположение
Россия
Представитель
Ульяна Соловьева