Команда Perplexity опубликовала статью о том, как им удалось адаптировать технологию обучения моделей с триллионом параметров для работы на облачной платформе AWS. Если коротко: они взяли существующий подход, который был жестко завязан на оборудование NVIDIA, и переписали его так, чтобы он эффективно работал на стандартной сетевой инфраструктуре Amazon.
Что за проблема с триллионом параметров
Современные большие языковые модели продолжают расти. Если пару лет назад модель на 100–200 миллиардов параметров считалась огромной, то сейчас речь идет уже о триллионе и более. Проблема в том, что такие модели физически не помещаются в память одного GPU – даже самого мощного.
Поэтому их приходится «размазывать» по множеству устройств. Но когда счет видеокарт идет на сотни или тысячи, возникает другая сложность: им нужно постоянно обмениваться данными друг с другом. И если эта связь работает медленно, весь процесс обучения превращается в бесконечное ожидание.
Как это обычно решают
NVIDIA предлагает для таких задач технологию под названием NVLink. Это специальная высокоскоростная шина, которая связывает GPU внутри одного сервера или между серверами. Она работает быстро, но есть нюанс: это проприетарное решение, которое требует определенного «железа» и плохо совместимо с другими платформами.
Существует открытый фреймворк Megatron-LM от NVIDIA, который умеет обучать огромные модели, распределяя их по множеству GPU. Однако он изначально рассчитан именно на NVLink. Если у вас нет доступа к этой технологии – вы, грубо говоря, вне игры.
Команда Perplexity решила устранить эту зависимость. Они переписали часть Megatron-LM так, чтобы фреймворк мог работать через AWS EFA (Elastic Fabric Adapter) – это сетевая технология Amazon, обеспечивающая быструю связь между серверами в облаке. EFA использует стандартный протокол, который не привязан к конкретному производителю оборудования.
Теперь модели с триллионом параметров можно обучать на стандартных облачных инстансах AWS, не требуя специфического оборудования от NVIDIA. Это делает процесс более гибким: можно арендовать мощности у Amazon, обучить модель и не беспокоиться о том, что инфраструктура привязана к одному вендору.
Почему это важно 🤔
Во-первых, это снижает барьер входа. Если раньше для обучения сверхбольших моделей требовалось либо покупать дорогостоящие серверы с поддержкой NVLink, либо арендовать их у узкого круга провайдеров, то теперь можно использовать общедоступную облачную инфраструктуру.
Во-вторых, это вопрос переносимости (портативности). Когда фреймворк работает только с одной технологией, вы фактически становитесь ее заложником. Если завтра появится более выгодное предложение от другого облачного провайдера – перенести туда процесс обучения будет сложно или вовсе невозможно. Решение Perplexity делает разработку менее зависимой от конкретного поставщика.
В-третьих, это открывает новые возможности для исследователей и небольших команд, у которых нет бюджета на эксклюзивное оборудование, но есть доступ к крупным облачным платформам.
Что под капотом
Не вдаваясь в глубокие технические детали: основная работа заключалась в замене коммуникационного слоя. Megatron-LM использует NCCL (NVIDIA Collective Communications Library) – библиотеку для обмена данными между GPU. Эта библиотека оптимизирована под NVLink и может демонстрировать низкую производительность на других типах соединений.
Команда Perplexity адаптировала фреймворк для эффективного использования AWS EFA. По их словам, это потребовало переосмысления некоторых алгоритмов распределения данных и синхронизации, но в итоге удалось добиться производительности, достаточной для обучения моделей масштаба триллиона параметров.
Ограничения и вопросы
Важно понимать, что это не универсальное решение всех проблем. Perplexity не утверждает, что их подход быстрее или эффективнее, чем обучение через NVLink. Скорее, речь идет о компромиссе: вы получаете большую гибкость и независимость от оборудования, но, возможно, жертвуете частью «чистой» производительности.
Также остается открытым вопрос о том, насколько легко этот подход масштабируется на другие облачные платформы. AWS EFA – это все еще проприетарное решение одного конкретного провайдера. Если кто-то захочет повторить аналогичный трюк на Google Cloud или Azure, потребуется дополнительная адаптация под их сетевые протоколы.
Наконец, статья Perplexity – это скорее описание концепции и архитектурного подхода, а не готовый открытый инструмент. Пока неясно, планирует ли компания выкладывать код в публичный доступ или он останется внутренней разработкой.
Что это значит для индустрии
Работа Perplexity доказывает, что зависимость от закрытых технологий – не приговор. Даже в таких ресурсоемких задачах, как обучение моделей с триллионом параметров, можно найти пути к большей открытости и кроссплатформенности.
Это особенно актуально сейчас, когда стоимость обучения нейросетей продолжает расти, а конкуренция между облачными гигантами усиливается. Возможность выбирать платформу, не будучи привязанным к конкретному «железу», может стать решающим фактором для многих разработчиков.
Посмотрим, последуют ли другие компании этому примеру и насколько широко подобный подход приживется в индустрии в ближайшие годы.