Всем привет. Вот мы и дожили до того дня, когда искусственный интеллект начинает совершать открытия, двигать прогресс и развивать самого себя. Это первые небольшие шаги, но теперь они реальны. Отныне это не просто футуристические надежды и обещания из теоретических статей. Сегодня поговорим о нашумевшем ИИ-агенте AlphaEvolve, которого Google DeepMind представил публике 14 мая. Внутри компании эта система используется уже в течение нескольких месяцев и успела принести плоды. В сегодняшнем выпуске рассматриваем их публикацию об этих результатах.
Название рассматриваемой статьи: «AlphaEvolve: A coding agent for scientific and algorithmic discovery». (by Google DeepMind)
*https://www.youtube.com/watch?v=shorRscncxs
**https://300.ya.ru/v_hxXe4k1U
Таймкоды
00:00:10 Введение в Alpha Evolve
- Google представил Alpha Evolve 14 мая.
- Внутри компании система используется уже несколько месяцев.
- Результаты представлены в презентации и научной статье.
00:00:39 Принцип работы Alpha Evolve
- Система эволюционирует код, совершая открытия, которые ускользали от человечества десятилетиями.
- Основана на больших языковых моделях и эволюционных подходах.
- Решает сложные задачи, от научных проблем до оптимизации вычислительной инфраструктуры.
00:03:11 Компоненты Alpha Evolve
- Постановка задачи: исследователь определяет критерии оценки и начальное решение.
- Автоматический оценщик: оценивает эффективность предложенных решений.
- Эволюция кода: специальные блоки кода отмечаются для улучшения.
- Промт-инжиниринг: формирование заданий для LLM с учётом контекста и предыдущих решений.
00:05:01 Оценка и оптимизация
- Каскад оценки: решения проходят через простые и быстрые тесты, затем более сложные.
- Обратная связь от LLM: оценка простоты кода и других метрик.
- Множественные метрики: оптимизация нескольких показателей одновременно.
00:05:46 Эволюционная база данных и распределённый конвейер
- Хранение успешных и неудачных решений с их оценками.
- Асинхронная и параллельная работа на множестве вычислений.
- Развитие идей проекта Funsarch: работа с целыми файлами кода на любом языке.
00:06:46 Практические результаты
- Ускорение перемножения матриц: улучшение алгоритма Штрассена до 48 скалярных умножений.
- Новые открытия в математике: решение более 50 задач, включая контактные числа и проблему минимального пересечения Эрдиша.
- Оптимизация экосистемы Google: планирование задач в дата-центрах, инженерия ядер для Gemini, проектирование аппаратных схем, оптимизация кода компилятора.
00:11:55 Причины успеха Alpha Evolve
- Эволюционный подход: хранение и использование лучших предыдущих решений.
- Контекст в промтах: подробная информация о задаче важна для LLM.
- Эволюция метапромтов: LLM сама улучшает инструкции для себя.
- Эволюция всего файла: возможность изменять весь код позволяет находить более сложные улучшения.
- Мощный LLM: комбинация больших и более быстрых моделей даёт лучший результат.
00:12:59 Перспективы
- Дистилляция знаний: передача знаний, полученных Alpha Evolve, в следующее поколение базовых LLM.
- Цикл самосовершенствования: оптимизация системы, на которой обучает Gemini, может стать ещё короче и эффективнее.
00:13:44 Ограничения Alpha-Evolf
- Alpha-Evolf требует автоматического оценщика для работы.
- В математике, информатике и некоторых инженерных задачах это работает хорошо.
- В естественных науках, где эксперименты требуют физической работы, это сложнее.
- Возможно будущее за объединением Alpha-Evolf с системами, которые могут оценивать идеи на более высоком концептуальном уровне или взаимодействовать с человеком-экспертом.
00:14:12 Возможности Alpha-Evolf
- Alpha-Evolf демонстрирует мощь комбинации больших языковых моделей, автоматической оценки и эволюционных алгоритмов.
- Он не просто пишет код, но и открывает новое знание, решает десятилетиями стоявшие проблемы и оптимизирует современные технологии.
- Это шаг к созданию ИИ, который может стать партнёром человека в научных исследованиях и инженерном деле.
- Будущее, где ИИ помогает расширять границы познания, становится реальностью.
Расшифровка видео
0:01
[музыка]
0:10
Всем привет и добро пожаловать на борт.
0:13
Сегодня поговорим о нашемевшем иагенте
0:15
Alpha Evolve, которого Google представил
0:18
публике 14 мая, то есть несколько дней
0:20
назад. Внутри компании эта штука
0:23
используется уже в течение месяцев,
0:25
поэтому успела принести некоторые
0:27
реальные плоды. Об этих результатах
0:30
Google сообщил в двух публикациях: в
0:32
виде презентации для широкой публики, а
0:34
также в виде более подробной научной
0:36
статьи, которую мы и рассмотрим. В
0:39
общем, начинаем. Представьте себе
0:41
систему, которая не просто пишет код, а
0:44
эволюционирует его, совершая открытия,
0:46
которые ускользали от человечество
0:48
десятилетиями, и даже оптимизирует
0:51
технологии, на которых работает она
0:53
сама. Звучит фантастично, но отныне это
0:56
реальность. В своей новой статье
0:58
исследователи из Google Deep Mind
1:00
представляют Alpha Evolve,
1:02
революционного агента, основанного на
1:05
больших языковых моделях, которые
1:07
используют эволюционные подходы для
1:09
решения сложнейших задач. От открытых
1:11
научных проблем до оптимизации
1:13
критически важной вычислительной
1:15
инфраструктуры, эта система
1:16
демонстрирует поразительные способности.
1:19
Давайте взглянем, как этот агент устроен
1:22
и на что способен. Научные открытия и
1:25
разработка новых алгоритмов — это обычно
1:28
долгий изнурительный процесс: идеи,
1:30
гипотезы, эксперименты, неудачи и
1:33
возвращения к началу. Человеческий мозг
1:35
великолепен, но у него есть свои
1:37
пределы. Последние годы большие языковые
1:40
модели, такие как GPT или GMI, показали
1:43
невероятные способности в генерации
1:45
текста, кода и даже в решении некоторых
1:48
задач. Но можем ли мы заставить их
1:50
делать настоящие новые открытия
1:52
самостоятельно, а не просто использовать
1:55
их в качестве инструмента для анализа
1:57
данных? На радость так называемым
1:59
скептикам вроде Гарри Маркуса ничего
2:01
подобного до сих пор не получалось.
2:03
Просто попросить большую языковую модель
2:06
открыть что-то новое обычно не работает.
2:09
Нужен более структурированный подход. И
2:11
вот тут на сцену выходит Alpha Evolve от
2:13
Google. Его суть — это оркестровка целой
2:16
системы из LLM. которые автономно
2:19
улучшают алгоритмы, внося прямые
2:22
изменения в их код. Ключевое слово здесь
2:25
эволюционный подход, что и отразилось в
2:27
его названии. Афы Evolve постоянно
2:30
получают обратную связь от одного или
2:33
нескольких оценщиков и итеративно
2:35
улучшает алгоритм, что потенциально
2:37
ведёт к новым научным и практическим
2:40
прорывам. Давайте немного заглянем под
2:42
капот. Представьте себе такой цикл. Есть
2:46
некий код, который решает задачу. Alpha
2:48
Evolve берёт этот код и просит LLM
2:51
улучшить его. LLM предлагает изменения.
2:56
Изменённый код запускается, его
2:58
эффективность оценивается. Если он стал
3:00
лучше, отлично, он становится новой
3:03
базой для дальнейших улучшений. Если
3:05
нет, пробуем другие варианты. Это как
3:08
цифровой дервинизм для программного
3:10
кода. Теперь чуть подробнее. Основные
3:13
компоненты его работы таковы. Первый.
3:16
Постановка задачи. Человек-исследователь
3:19
определяет, что именно: критерии оценки,
3:22
начальное, возможно, очень простое
3:24
решение и по желанию дополнительную
3:27
информацию о проблеме. Главное, нужен
3:30
автоматический оценщик в статье
3:32
называемый функцией, который может
3:34
сказать, насколько хорошо работает
3:36
предложенное решение. Далее. API для
3:40
кода. Alpha Evolve не обязательно
3:42
переписывает весь код. Исследователь
3:45
может пометить специальные блоки,
3:47
например, комментариями
3:49
evolveblogst и #evolveblog end, которые
3:53
и будут эволюционировать, а остальной
3:55
код служит
3:57
каркасом. Далее промпт инженеринг на
4:00
стероидах. Чтобы LLM генерировал
4:02
осмысленные улучшения, ему нужен хороший
4:05
промт. Задание Альpha Evolve формирует
4:09
его очень хитро. Он берёт несколько
4:11
лучших, ранее найденных решений из своей
4:14
базы данных, добавляет системные
4:16
инструкции, как именно предлагать
4:18
изменения, и может включать явный
4:20
контекст: описание проблемы, уравнения,
4:23
научные статьи в PDF и даже идеи,
4:26
предложенные самим LЛМ на предыдущих
4:28
шагах. Авторы эту часть процесса назвали
4:31
словосочетанием эволюция метапромптов.
4:34
Даже если бы статья была бесполезной и
4:36
её стоило прочитать лишь ради этого
4:38
впечатляющего термина.
4:40
Далее, креативная генерация LLM, в роли
4:44
которой в статье используется комбинация
4:46
быстрый GMI 20 Flash и мощный GMI 2.0
4:50
Pro, получает этот богатый промпт и
4:52
генерирует не просто новый код, а так
4:55
называемый DIV, то есть набор
4:57
инструкций, что именно нужно найти в
4:59
этом коде и на что это заменить. Это
5:02
позволяет точечно улучшать большие
5:04
кодовые базы. Далее, оценка. Новые
5:08
решения оцениваются автоматически. Тут
5:11
тоже есть хитрости. Во-первых, каскад
5:14
оценки. Решение сначала проходит через
5:17
простые и быстрые тесты, и только если
5:19
они перспективны, отправляются на более
5:21
сложные и долгие. Во-вторых, обратная
5:24
связь от LLM. Иногда важны не только
5:27
численные метрики, но и, например,
5:29
простота кода. Это тоже может
5:31
оцениваться отдельный LLM. В-третьих,
5:35
множественные метрики. Alpha Evolve
5:37
может оптимизировать сразу несколько
5:39
показателей, что часток приводит к более
5:42
рабастым, то есть крепким и интересным
5:44
решениям. Следующий компонент-
5:47
эволюционная база данных. Все успешные и
5:50
не очень решения, с их оценками,
5:52
хранятся в специальной базе. Её задача-
5:55
не просто хранить, а оптимально
5:57
вспоминать предыдущие идеи для будущих
5:59
поколений, балансируя между улучшением
6:02
уже известного, то есть эксплуатацией, и
6:05
поиском совершенно новых путей, то есть
6:08
исследованием. Далее, распределённый
6:11
конвейер. Всё это работает асинхронно и
6:14
параллельно на множестве вычислений,
6:16
чтобы максимизировать количество идей,
6:18
которые можно проверить за отведённое
6:20
время. Alpha Evolve — это значительное
6:23
развитие идей, заложенных в предыдущем
6:25
гугловском проекте Fun Search. Если Fun
6:28
Search эволюционировал одну небольшую
6:30
функцию на Питоне, то Alpha Evolve
6:33
работает с целыми файлами кода на любом
6:35
языке, обрабатывает сотни строк и может
6:38
оптимизировать несколько метрик
6:39
одновременно, используя значительно
6:42
более мощный LLM и более богатый
6:45
контекст. Ну что ж, теория — это хорошо.
6:48
А что на практике? К счастью, Альфа
6:50
Evolve уже действительно приносит плоды,
6:53
а не только дарит надежды и обещания. И
6:55
некоторые его результаты очень даже
6:57
впечатляют. Назову некоторые из них.
7:00
Начну с того, что произвело наибольший
7:02
фурор в интернете, причём вполне
7:05
заслуженно. Ускорение перемножения
7:07
матриц. Перемножение матриц — это одна
7:10
из самых фундаментальных операций в
7:12
компьютерных науках от машинного
7:14
обучения до графики. С
7:17
1969 года алгоритм Штрассена был одним
7:21
из эталонов. Он позволял перемножить две
7:23
матрицы 4х4 за 49 скалярных умножений
7:27
при рекурсивном применении. Долгие 56
7:31
лет эта планка для матриц общего вида
7:33
над полем с характеристикой ноль
7:35
оставалась
7:36
непреодалённой. И вот Альфа Evolve,
7:38
начав с обычного градиентного алгоритма
7:41
для поиска тензорных разложений, нашёл
7:43
способ перемножить две комплексные
7:45
матрицы. 4х4 всего за 48 скалярных
7:49
умножений. Это первое улучшение за более
7:51
чем полвека, и это не единственный
7:53
случай. Alpha Evolve улучшил известные
7:56
результаты для четырнадцати различных
7:58
размеров матриц. Представьте, LLM не
8:01
просто написал код, а модифицировал сам
8:04
алгоритм поиска этого кода, добавив
8:07
оригинальные идеи, как показано в статье
8:09
на рисунке
8:11
Следующий вклад- новые открытия в
8:14
математике.
8:15
Альфа Evolve применили к более чем 50
8:18
открытым математическим задачам из
8:20
разных областей. Анализ, комбинаторика,
8:23
теория чисел, геометрия. В 70% случаев
8:27
он переоткрыл лучшие известные решения,
8:30
а в 20% случаях превзошёл их, найдя
8:33
новые доказуемо лучшие конструкции,
8:36
например, контактные числа или числа
8:38
контакта Kiss and Numbers. Сколько
8:41
одинаковых сфер могут одновременно
8:43
касаться центральной сферы того же
8:45
размера? В одиннадцатимерном
8:47
пространстве предыдущий рекорд был
8:50
Alpha Evolve нашёл конфигурацию из
8:54
593
8:56
сфер. Проблемы минимального пересечения
8:59
Эрдиша. Alpha Evolve установил новую
9:02
верхнюю границу, немного улучшив
9:04
предыдущий рекорд. Задача упаковки.
9:07
Например, упаковка двенадцати единичных
9:10
шестиугольников большой шестиугольник.
9:12
Alpha Evolve нашёл более плотную
9:14
упаковку, чем была известно
9:17
ранее. Важно отметить, что многие из
9:19
этих задач были предложены и
9:21
сформулированы для Alpha Evolve
9:23
известными математиками, такими как
9:26
Terenceo. Это подчёркивает потенциал
9:28
синергии между ИИ и человеческой
9:31
экспертизой. Следующий вклад-
9:34
оптимизация экосистемы Google. Alpha
9:37
Evolve не только решает абстрактные
9:39
задачи, но и приносит реальную пользу в
9:41
инженерных
9:42
приложениях. Перечислю некоторые из
9:45
статьи. Первая польза планирование задач
9:48
в дата-центрах. Эффективное
9:51
распределение задач по машинам в
9:53
дата-центрах Google — это суперсложная
9:55
проблема. Неэффективное распределение
9:58
ведёт к застрявшим ресурсам. Например,
10:00
когда на машине кончилась память, а
10:02
процессор свободен. Альфа Evolve, начав
10:05
с существующей эвристики, открыл новую
10:08
удивительно простую функцию. После
10:10
внедрения эта евристика постоянно
10:12
высвобождает в среднем
10:15
0,7% вычислительных ресурсов Google по
10:17
всему миру. Это огромная экономия и
10:20
повышение
10:22
эффективности. Вторая польза инженерия
10:25
ядер для GMI. Обучение гигантских
10:28
моделей вроде GMI требует колоссальных
10:31
ресурсов. Оптимизация ядер
10:33
низкоуровневых программ для ускорителей
10:35
критически важна. Alpha Evolve взялся за
10:39
оптимизацию стратегии тайлинга, то есть
10:41
разделение больших матричных операций на
10:44
более мелкие для одного из ключевых ядер
10:47
GMI. Каков результат? Ускорение ядра в
10:50
среднем на 23% и, как следствие,
10:53
снижение общего времени обучения GMI на
10:56
1%. И самое интересное, Gini благодаря
11:00
Alpha Evolve оптимизировал процесс
11:02
собственного
11:04
обучения. Третья польза- проектирование
11:07
аппаратных схем. Alpha Evolve попросили
11:10
оптимизировать Verog CД, язык описания
11:13
аппаратуры для арифметической схемы TPU.
11:17
Он нашёл способ упростить код, убрав
11:19
ненужные биты. Это демонстрирует его
11:22
способность работать на очень низком
11:24
уровне и помогать в проектировании
11:27
чипов. Четвёртая польза, оптимизация
11:30
кода, сгенерированного
11:32
компилятором. Даже код, который
11:34
генерирует компиляторы и который уже
11:36
сильно оптимизирован, Alpha Evolve смог
11:39
улучшить. Для популярного механизма
11:42
Flash Attention он ускорил ядро на 32%,
11:46
а код предобработки и постобработки на
11:48
15%. Это открывает путь к встраиванию
11:51
Alpha Evolve в сами
11:54
компиляторы. Почему это работает так
11:56
хорошо? Исследователи провели
11:59
эксперименты, отключая разные части
12:01
Alpha Evolve, чтобы понять, что именно
12:04
делает его таким мощным. Оказалось, что
12:06
важен каждый
12:08
компонент. Первый эволюционный подход.
12:12
Просто многократно спрашивать LLM,
12:14
начиная с одного и того же, гораздо
12:16
хуже, чем хранить и использовать лучшие
12:18
предыдущие
12:19
решения. Второй контекст в промтах.
12:23
Давать LLM подробную информацию о
12:26
задаче, примеры и так далее чрезвычайно
12:29
важно. Третий. Эволюция метапромптов.
12:32
Позволять LLM самой улучшать инструкции
12:35
для себя тоже даёт
12:37
прирост. Четвёртый. Эволюция всего
12:40
файла. Возможность изменять весь код, а
12:43
не только одну функцию, как Fun Search,
12:45
позволяет находить более сложные и
12:47
взаимосвязанные
12:49
улучшения. Пятый. Мощный LLM.
12:53
Использование комбинации больших и более
12:55
быстрых моделей даёт лучший результат,
12:57
чем только маленькие модели. Alpha
13:00
Evolve — это не первая попытка
13:01
использовать большие языковые модели для
13:04
научных и программных задач, но он
13:06
выделяется своим масштабом гибкостью и
13:08
широтой применения. Он расширяет идеи
13:11
Fun search, но также отличается от
13:13
систем символьной регрессии или агентов,
13:16
которые общаются на естественном языке
13:18
для генерации
13:19
гипотез. Каковы перспективы? Во-первых,
13:23
дистилляция. Можно ли передать знания,
13:25
полученные Alpha Evolve в следующее
13:27
поколение базовых LLM, сделав их умнее,
13:30
как говорится, из коробки. Во-вторых,
13:33
цикл самосовершенствования.
13:35
Alpha Evolve уже оптимизировал части
13:38
системы, на которой обучается GMI. Этот
13:41
цикл может стать ещё короче и
13:43
эффективнее. В-третьих, основное
13:46
ограничение. Alpha Evolve нужен
13:48
автоматический оценщик. Это хорошо
13:51
работает для математики, информатики и
13:53
некоторых инженерных задач. Но в
13:55
естественных науках, где эксперименты
13:58
требуют физической работы, это сложнее.
14:00
Возможно, будущее за объединением Alpha
14:03
Evolve с системами, которые могут
14:05
оценивать идеи на более высоком
14:07
концептуальном уровне или
14:09
взаимодействовать с
14:11
человеком-экспертом. Подводя итог, можно
14:13
сказать, что Alpha Evolve демонстрирует
14:16
поразительную мощь комбинации больших
14:18
языковых моделей, автоматической оценки
14:20
и эволюционных алгоритмов. Он не просто
14:23
пишет код, он открывает новые знания,
14:26
решает десятилетиями стоявшие проблемы и
14:29
оптимизирует самые современные
14:31
технологии. Это ещё один шаг к созданию
14:33
Ии, который может стать настоящим
14:35
партнёром человека в научных
14:37
исследованиях и инженерном деле.
14:40
Будущее, где Ии помогает нам расширять
14:42
границы познания, стало не просто на шаг
14:44
ближе. Наконец оно становится нашим
14:47
настоящим. Похоже, на сегодня всё.
14:50
Мнение можете оставлять в комментариях.
14:52
До следующих выпусков.

