Когда речь заходит об искусственном интеллекте, обычно говорят о самих моделях: какая умнее, какая быстрее отвечает, какая лучше пишет код. Но за кулисами этой гонки стоит совсем другая работа – кропотливая, малозаметная и при этом фундаментальная. Её выполняют люди, которые занимаются тем, что принято называть ядрами (kernels) – низкоуровневыми программными компонентами, напрямую управляющими тем, как видеочипы выполняют вычисления.
Именно этим занимается команда Together AI. И если вы слышали про FlashAttention или ThunderKittens – знайте, что это их работа.
Зачем вообще нужны «ядра»?
Проще говоря: GPU – это очень мощное оборудование, но чтобы оно работало в полную силу именно для задач ИИ, нужно писать специальный низкоуровневый код, который указывает чипу, что делать и в каком порядке. Этот код и называют ядрами.
Большинство разработчиков ИИ-систем работают на уровень или два выше: они используют готовые библиотеки и фреймворки, которые уже берут на себя всю эту «ручную» работу с оборудованием. Но кто-то должен писать и эти библиотеки. Кто-то должен следить за тем, чтобы новые архитектуры GPU использовались максимально эффективно – а не так, что половина возможностей чипа просто простаивает.
Команда Together AI занимается именно этим промежуточным слоем – между оборудованием и теми моделями, которые на этом оборудовании работают.
FlashAttention: когда оптимизация меняет всё
Одна из самых известных работ этой команды – FlashAttention. Если коротко: это способ значительно ускорить одну из ключевых операций в современных языковых моделях – механизм внимания (attention). Эта операция очень важна для того, чтобы модель «понимала» связи между словами и частями текста, но при этом она же является одной из самых ресурсоёмких.
FlashAttention переосмыслил то, как именно эта операция выполняется на GPU: вместо того чтобы постоянно перекладывать данные между разными видами памяти чипа (что медленно), алгоритм перестроил порядок вычислений так, чтобы данные как можно дольше оставались в быстрой памяти. Результат – ощутимое ускорение и снижение потребления памяти.
Это не просто техническая деталь. FlashAttention повлиял на то, как устроены многие современные модели, и стал одним из тех «тихих» изобретений, которые практически незаметны для конечного пользователя, но критически важны для всей индустрии.
ThunderKittens: инструмент, который пишет инструменты
Другой проект команды – ThunderKittens – решает более широкую задачу. Писать эффективные ядра вручную крайне сложно: нужно глубоко понимать архитектуру конкретного GPU, следить за тем, как данные перемещаются внутри чипа, учитывать десятки ограничений. Это работа, требующая узкой экспертизы и занимающая много времени.
ThunderKittens – это своего рода фреймворк, который упрощает написание таких ядер. Он предоставляет более удобные строительные блоки, при этом не жертвуя производительностью. Проще говоря: раньше написать хорошее ядро мог только очень узкий специалист с огромным опытом, а ThunderKittens снижает этот барьер.
Это важно, потому что GPU постоянно обновляются, появляются новые архитектуры – и каждый раз нужно заново адаптировать ядра под новое оборудование. Инструмент, который делает этот процесс быстрее и доступнее, имеет реальную практическую ценность для всей отрасли.
Разрыв между теорией и практикой
Есть интересный феномен в мире GPU: производители публикуют впечатляющие цифры производительности своих чипов – и эти цифры реальны, но достигаются только при идеальных условиях. В реальных задачах ИИ оборудование нередко используется на 30–50% от своих возможностей, а иногда и меньше.
Работа команды Together AI как раз и состоит в том, чтобы сокращать этот разрыв. Каждая оптимизация, каждое улучшение ядра – это шаг к тому, чтобы реальная производительность приближалась к теоретическому максимуму. И в условиях, когда стоимость вычислений остаётся одним из главных ограничений в развитии ИИ, такая работа напрямую влияет на то, что вообще становится возможным.
Почему это важно за пределами одной компании
Together AI позиционирует себя как открытую платформу: значительная часть их разработок публикуется в открытом доступе. FlashAttention и ThunderKittens доступны всем – и уже используются в исследованиях и продуктах по всему миру.
Это формирует любопытную модель: небольшая команда узких специалистов создаёт инфраструктурные решения, которыми пользуется вся индустрия. Крупные лаборатории, стартапы, академические исследователи – все они в той или иной степени опираются на работу, которая была сделана в таких командах.
Проще говоря, прогресс в ИИ зависит не только от того, кто придумывает новые архитектуры моделей или собирает наборы данных. Он зависит и от тех, кто занимается тем, чтобы всё это эффективно работало на реальном оборудовании. И команды вроде этой – важная часть этой цепочки.
Что дальше?
По мере того как GPU становятся всё сложнее, а модели – всё больше, работа на уровне ядер только усложняется. Новые чипы приносят новые возможности – и новые ограничения, которые нужно учитывать. Одновременно растёт спрос на эффективность: обучение и запуск больших моделей остаются дорогостоящими, и любое улучшение в использовании оборудования напрямую влияет на экономику всей отрасли.
В этом смысле команды, работающие на стыке оборудования и программного обеспечения, вряд ли окажутся невостребованными. Скорее наоборот – их роль будет только расти по мере того, как ИИ-системы становятся сложнее и масштабнее.
Это та часть индустрии, которую редко видно в новостях. Но именно она во многом определяет, насколько быстро и экономично работают модели, которыми пользуются миллионы людей каждый день.