Почему важна масштабируемая инфраструктура для MoE-моделей и зачем это вам
В статье рассказывается про Olmo-core 3 — открытый фреймворк для обучения больших языковых моделей с архитектурой MoE (mixture-of-experts, «смесь экспертов»). Это способ делать модели с триллиардами параметров, но так, чтобы для каждого отдельного входа задействовалось только несколько экспертов (частей модели), а не вся модель целиком. Это позволяет экономить вычислительную мощность и деньги при обучении. В России и среди русскоязычных пользователей это важно, потому что большие модели обычно доступны только крупным корпорациям с огромными ресурсами. Olmo-core 3 меняет подход к такой инфраструктуре, делая обучение эффективнее и потенциально доступнее.
Что такое mixture-of-experts (MoE) и зачем нужна Olmo-core 3
MoE — архитектура, где внутри модели есть много экспертов — специализированных частей сети. Для каждого обрабатываемого кусочка текста (токена) выбирают несколько экспертов, которые активируются, а остальные остаются неиспользованными. Это снижает нагрузку, потому что модель становится «разряженной» — не все параметры включены вместе.
Проблема в том, что при масштабировании количество экспертов растёт, и управлять ими всё сложнее. Кроме того, модель и её параметры должны храниться и обновляться в памяти множества GPU. Направлять данные к нужным экспертам и координировать работу между десятками или сотнями видеокарт — большая сложность. Это может свести на нет выигрыш по эффективности из-за издержек на коммуникацию.
Olmo-core 3 оптимизирует эту задачу: теперь можно увеличить пул экспертов с 8 до 128, при этом для каждого токена по-прежнему выбираются только 4 эксперта. Фактически модель выросла с 4,6 млрд до 47 млрд параметров, а скорость обучения упала менее чем на 5%. Это значит, что эффективность сохраняется даже при росте модели в 10 раз, что ранее было практически невозможно.
Новое в архитектуре Olmo-core 3 — переход на DDP и оптимизации для MoE
Раньше Olmo-core использовал Fully Sharded Data Parallelism (FSDP). Это подход, при котором веса модели расщепляются и собираются для каждой мини-партии данных. При большом количестве экспертов это очень медленно.
Теперь перешли на Distributed Data Parallelism (DDP), который оставляет экспертов на GPU без постоянной пересборки весов, а маршрутизация данных к нужным экспертам идёт напрямую. Это сильно ускоряет процесс.
Кроме того, используют expert parallelism — эксперты распределены по разным GPU, pipeline parallelism — разбивка слоёв модели на группы GPU и распределённый оптимизатор, который делит состояние обучения по GPU. Всё вместе это позволяет масштабировать модель без чрезмерных требований к памяти.
Для маршрутизации применяются специальные методы, которые уменьшают количество перестановок данных и держат маршруты на GPU, чтобы не отвлекаться на работу процессора.
Как эти технологии меняют возможности обучения больших моделей и почему это важно
Такая инфраструктура снижает стоимость и энергозатраты на обучение моделей с триллионами параметров — за счёт того, что не нужно запускать всю модель целиком для каждого токена, а только выборочно. Для России это шанс развивать ИИ в вузах и компаниях без доступа к чрезвычайно дорогим суперкомпьютерам.
Кроме того, открытый характер Olmo-core 3 позволяет изучать и модифицировать обучающие системы, не полагаясь только на закрытые решения крупных игроков. Это шанс для сообщества создавать и запускать масштабные модели на своих условиях.
Как использовать Olmo-core 3 на практике и где это пригодится
Если вы связаны с разработкой ИИ или хотите понять, как масштабируются современные языковые модели, Olmo-core 3 даст возможности:
- Обучать модели с большим числом экспертов, сохраняя эффективность.
- Проводить эксперименты с архитектурами MoE, чтобы уменьшить вычислительные затраты.
- Создавать кастомные модели для конкретных задач с меньшими затратами ресурсов.
Для начала можно ознакомиться с открытым исходным кодом Olmo-core 3 на Hugging Face и попробовать запустить тренировку на небольшом кластере GPU, наблюдая улучшение скорости и экономию памяти. Это полезно для исследователей и инженеров, которые хотят повысить продуктивность и снизить расходы.
Кому это актуально сейчас, а кому стоит подождать
Olmo-core 3 рассчитан на специалистов и организации, которые занимаются обучением крупных моделей с параметрами в десятки и сотни миллиардов. Если вы — пользователь ИИ или владелец небольшой команды, вам это пока вряд ли пригодится напрямую.
Однако для крупных исследовательских центров и компаний в России, где есть доступ к кластеру GPU, это фундаментальный шаг в сторону более экономного и масштабируемого обучения. Со временем доступность таких инструментов может подтолкнуть развитие отечественных ИИ-технологий и снизить зависимость от зарубежных провайдеров.
Если ваша задача — понять, как устроена современная инфраструктура больших моделей и что влияет на стоимость и скорость их обучения, то Olmo-core 3 — наглядный пример технологического прогресса.
Источник: https://huggingface.co/blog/allenai/olmocore3, автор Kyle Wiggers, AllenAI