«Теперь мы уверены, что знаем, как построить AGI в том виде, в каком мы традиционно его понимали… Сейчас это звучит как научная фантастика, и даже говорить об этом как-то безумно. Все в порядке — мы уже были там раньше и не против оказаться там снова.»
Такой пост 6 января Альтман опубликовал в своем блоге. Интересно, что перед этим он даже сказал, что AGI будет при Трампе, то есть до января 2029 года. Может показаться, что он готовится к очередному раунду приема пожертвований на GPU, и это приглашение сделать пожертвование побольше. Я уверен, что это не так.
Человечество нашло дорогу, по которой можно дальше и дальше улучшать качество моделей, и мы не видим здесь никакого предела. Про эту дорогу знает Альтман, и скоро узнаете вы.
Кто я такой? Я — Сева, сейчас руковожу внедрением разных LLM в Поиске Яндекса, 8 лет занимаюсь искусственным интеллектом. Раньше я не любил термин «искусственный интеллект», в нем как будто очень много робо-терминаторской фигни. Всегда говорил, что занимаюсь машинным обучением. Нынче уже не модно машинное обучение, сейчас говорю, что делаю ИИ, работа при этом не поменялась :) Полюбил.
В этой статье вы узнаете по каким трем фундаментальным законам живет искусственный интеллект и как OpenAI и другие компании планируют достичь этого самого AGI.
В каком это традиционным смысле Альтман понимает AGI? Давайте дадим парочку определений, убрав колдовство, мистификацию и научную фантастику.
Искусственный интеллект — это алгоритм, которые решает задачу, которую раньше мог решать только интеллект человека (определение из «Большой российской энциклопедии»). Кто-то любит здесь говорить про сознание, чувства и прочие вещи. Я, как практик, люблю говорить только о возможностях, которые эта штука дает. С точки зрения практики, ИИ бывает двух видов.
Слабый ИИ. Это интеллект, который решает какую-то узкую конкретную задачу. Это любые шахматные программы, беспилотные автомобили, рекомендательные и поисковые системы и т.д. Короче, почти весь ИИ, который вы знаете — вид слабого ИИ. В этом виде ИИ мы уже получили в конкретных задачах результаты, превосходящие любого человека. Например, приложение в моем не самом новом айфоне обыграет любого чемпиона мира по шахматам. Интересно, что шахматисты сначала расстраивались, а потом смирились и используют теперь ИИ для обучения: он помогает им находить нетривиальные ходы, продумывать позиции. Короче говоря, слабый ИИ мы делать научились.
Сильный ИИ. Его я буду называть AGI или Artificial general intelligence. Это интеллект, который решает сразу все задачи, которые мог решать человек. Вообще все. ChatGPT как раз всколыхнул фантазии в соцсетях, потому что модель умела в задачи, которые ей явно не подавали в обучающее множество. Модель каким-то образом обобщается, умеет делать то, что никогда раньше не видела в обучении. Здесь то и пошли разговоры про AGI.
Разумно сделать какую-то градацию для AGI, чтобы отслеживать прогресс наступления всеобщего блаженства. В статье от DeepMind предложили такое: давайте уберем все задачи, связанные с физическим миром, зафиксируем как-то максимально широкий список интеллектуальных задач в разных областях и введем такую градацию:
Уровень 1. ИИ решает любую задачу из этого списка также, как человек, который совсем не эксперт в теме задачи (по мнению авторов, мы находимся тут)
Уровень 2 ИИ решает любую задачу из этого списка не хуже, чем лучшие 50% специалистов в области
… каждый новый уровень наращивает этот процент ...
Уровень 5 ИИ решает любую задачу из этого списка лучше любого человека — это ASI, он же Artificial Superintelligence, он же Сверх Интеллект.
Давайте считать, что наш “реалистичный AGI” — это уровень 2: хотим чтобы ИИ был медианным специалистом по всем областям. Интересно, что сам Альтман давал похожее определение: «AGI — это система искусственного интеллекта, которая может делать то, что делают очень квалифицированные люди на важных работах».
Основной вопрос, что это за работы такие, по которым соревноваться с человеком? Он стоит у вас, но явно не у Альтмана: он уж как-нибудь подберет список работ, чтобы по ним победить человека и назвать это AGI. У кого линейка, тот и главный.
Забавно, что когда OpenAI стала коммерческой компанией, они секретным образом ввели свое новое определение AGI: «AGI — это момент, когда модели OpenAI принесут минимум 100 миллиардов долларов прибыли». Такую прибыль примерно Apple генерирует за год. О времена, о нравы!
Известно всего 2 варианта научного познания: теория и эксперимент.
Я утверждаю, что теория в искусственном интеллекте практически отсутствует.
Многие думают, что ИИ-модели придумывают ученые-теоретики-математики. Они сидят со скомканным куском бумаги, грызут карандаш и иногда свои ногти, придумывая новую модель. В реальности модели придумывают инженеры, когда проводят кучу экспериментов на огромных кластерах, которые строили другие инженеры.
Почему так происходит? Мы все быстро бежим, теория за нами не поспевает. Для теории нужны какие-то предположения об архитектуре модели, на распределение данных, методе обучения, а это все меняется через пару месяцев. Так и живем.
Я не видел ни одной практически полезной теории, которая хоть как-то объясняла, что нужно делать, чтобы вырастить качество модели. Никаких теорем о том, как правильно выбирать гиперпараметры при обучении 30 слойного трансформера. Все передается из уст в уста (из статьи к статье), где в отдельном разделе авторы моделей пишут, с помощью какого колдовства они это получили. Хорошим тоном будет еще выложить код, потому что в обучении столько нюансов, что воспроизвести статью может быть не под силу.
Когда мы работаем с ИИ единственное, на что можно положиться — на эмпирику.
С точки зрения эмпирики, прогресс ИИ двигает всего 3 закона.
Закон Мура
Закон масштабирования обучения
Закон масштабирования предсказания
Давайте про каждый подробнее.
Стоимость вычислений экспоненциально падает со временем. Можно посмотреть по историческим данным и вывести точную формулу, но нам важен только тренд. Закон эмпирический, никакой теории нет, но мы этот тренд наблюдаем уже сотню лет. Нашел в паблике цитат такую: «1 раз — случайность, 2 раза — совпадение, 3 раза — закономерность, 4 раза — закон!». 100 лет — это тогда точно закон.
Модель GPT2, которая была невероятным прорывом 5 лет назад, сейчас может воспроизвести любой студент с бюджетом в 30$. Через несколько лет я то же самое напишу, но уже для GPT3.
У него нет конкретного имени или формулировки, его много раз замечали и в покере, и в шахматах, и вот теперь в ИИ. Одна из самых известных работ на эту тему Kaplan, et al, 2020. Закон говорит, что ошибка модели зависит от трех величин: C - сколько вычислений вы использовали для обучения, D - размер датасета, N - сколько параметров в модели. Теперь самое важное: эта зависимость офигеть какая точная.
Внизу графики из статьи, вы можете заметить, как хорошо все точки кладутся на одну ровную линию (обе оси при этом логарифмические). Наклон этой линии определяет, как модель хороша при масштабировании - чем выше наклон, тем проще растить качество.
Как закон получен? Ровно так, как вы ожидали: эмпирически. Обучали кучу раз разные LLM, ставили точку на график, удивлялись происходящему.
Все 3 величины, понятно, зависимы — нельзя просто сделать триллионную модель и обучаться на одном примере. Каждый график получен в предположении, что другие величины неограничены. Например, когда смотрим зависимость от размера модели, считаем, что у нас бесконечно много данных и вычислений.
Что меня поражает и должно поражать вас: это очень ровная прямая. Я таких ровных прямых не видел, когда делал лабораторные по физике (возможно, конечно, дело во мне). Именно эта прямая вселяет уверенность, что мы понимаем, как двигаться в сторону AGI.
Про закон масштабирование сам Альтман сказал следующее:
Самое важное знание, обнаруженное в моей жизни, заключалось в том, что масштабирование моделей ИИ приводит к невероятным и предсказуемым улучшениям интеллекта. У меня был странный опыт, когда я рассказывал об этом другим людям, пытаясь уговорить этих людей дать нам деньги.
Лучше и не скажешь.
C ростом параметров/данных/GPU растут все возможные метрики на различных задачах: перевод становится точнее, ответы на вопросы корректнее, задачи по математике начинают решаться. Даже текст, который генерирует модель все сложнее и сложнее отличить от текста написанного человеком.
Все архитектуры можно и нужно масштабировать. Неважно, у вас сверточная сеть, рекуррентная LSTM-сеть или трансформер. Но все они масштабируются по-разному. Так как вычисления дешевеют, нужно брать ту архитектуру, которая масштабируется максимально хорошо. За это как раз отвечает наклон прямой в законе масштабирования. Чем больше наклон — тем эффективнее архитектура масштабируется, а значит, при добавлении параметров, данных и мощностей будет скорее расти.
Это все мы уже давно видели в задачах компьютерного зрения.
Сверточные сети — огромный прорыв в машинном обучении. Архитектура, которая уничтожила всех своих предшественников в задачах компьютерного зрения. За счет чего? За счет удачных предположений, которые оказались невероятно полезны и позволили эффективно учить такие модели на миллионах изображениях.
А что будет если изображений станет на 2 порядка больше? Не миллион, не десять миллионов, а триста миллионов? Будут ли сверточные сети самым эффективным решением, или есть более удачная архитектура, у которой лучше константа законов масштабирования? Да, есть: VIT, или Vision Transformer. Та же архитектура, что для обработки текстов, но теперь и для изображений.
До 2021 года не получалась обучить трансформеры на изображениях, чтобы побить сверточную архитектуру. В статье 2021 сопротивление сверточных сетей было сломлено. Думаю, вы догадались, как авторам это удалось — они залили более универсальную архитектуру данными и железом.
На небольших объемах данных сверточные сети обыгрывают трансформеры, но они не так быстро растут в качестве, если данные (а значит и вычислительные мощности) начинаем подливать. Все за счет лучшего масштабирования у трансформеров. И так будет с каждым.
Не случайно во всех задачах возникает именно трансформер: это действительно универсальная архитектура, которая очень очень хорошо обучается. Трансформерами даже временные ряды предсказывают вместо классической ARIMA, на них строят рекомендательные системы вместо классической матричной факторизации. Андрей Карпатый даже как-то назвал трансформер дифференцируемым компьютером, потому что он может аппроксимировать очень сложные зависимости и очень легко обучается.
Это крепко поняли ребята из OpenAI в 2019 году, когда сделали GPT2. Поняли одни из первых, поставили на это и не ошиблись — все по законам стартапов. Дальше были GPT3, ChatGPT, GPT4 и титул самой передовой компании в мире. Сейчас этот закон поняли уже все участники рынка: Google, Amazon, Илон Маск и прочие вваливают огромные деньги в кластера для обучения моделей.
Google ворвался в гонку с опозданием примерно в полтора года от OpenAI, но у него есть огромный бизнес, деньги из которого можно тратить на кластера. Google инвестирует в новые кластера миллиарды долларов, а его модели иногда уже обходят OpenAI на публичных тестах.
Amazon стал обучать свои LLM, которые пока отстают от OpenAI, но это скорее вопрос времени, учитывая финансовые возможности компании. Amazon же проинвестировал 8 миллиардов долларов в Anthropic и теперь вместе делают гига кластер для своих LLM. Anthropic, кстати, первым смог научить LLM работать напрямую через компьютер, решая кучу рутинных задач пользователей.
Маск в рекордные даже для самого себя 122 дня собрал самый большой в мире кластер из 100 тысяч H100 На нем уже обучили Grok3. Ждем выхода, должна быть сравнима по метрикам с GPT-4o. Вообщем, конкурентов у ребят из OpenAI прибавилось.
В итоге этого всего, OpenAI потерял 16% рынка корпоративного LLM, а Anthropic нарастил свою долю на 12%. В 2025 конкуренция будет еще серьезнее, разрыв в технологии будет сокращаться. Закон масштабирования обучения наконец поняли абсолютно все.
Илья Суцкевер, один из основателей OpenAI, на конференции NIPS обрадовал нас, что сытые годы прошли — масштабировать обучение и получать качество больше не получится. Почему? У нас закончились текстовые данные. Почему кончились данные, а не деньги? Закон Мура, который мы обсуждали ранее, работает — железо дешевеет, а данные мы с такой скоростью не успеваем производить.
LLM учатся на данных из интернета, а интернет у нас один (внезапно) и полон мусора. Коллеги из Epoch Ai провели оценку и прикинули, что всего 20% данных интернета пригодны для обучения. В зависимости от роста потребления, мы потратим все текстовые данные между 2025 и 2028 годах. Больше данных нет. Еще и в этом смысле данные — это нефть: у нас они есть, они двигают человечество, но запасы иссякают. Да, помимо текстовых данных у нас еще есть картинки/видео/аудио, но пока мы еще не научились извлекать так эффективно информацию, как для текстовых данных.
Существует наивное правило — на следующее поколение моделей (GPT5 и подобные) нужно в 100 раз больше всего. Больше данных, больше модели, больше вычислений. Следующее поколение моделей еще получит буст в качестве от масштабирования, благо дата-центры успешно строятся, да и данные еще остались. Но вот с GPT6 и далее будет трудно. Нам нужно масштабироваться как-то дальше, без масштабирования обучения. Благо у OpenAI и тут нашелся ответ.
Что делать, если уже не можете нарастить мощности для обучения моделей? Правильно, растить мощности для предсказания модели. Это умно называют растить test-time compute.
До этого мы всегда требовали от модели моментального ответа: она должна была сразу же с первого символа своего предсказания давать правильный ответ. Вы можете сразу же, с чистого листа, написать эссе, презентацию, программный код? Или вам надо сначала крепко подумать? Вот, LLM тоже надо.
В OpenAI показали, что этот подход дает невероятный прирост в метриках. Модель o1 из коробки начала рассуждать перед ответом на вопрос. O1 показала потрясающие результаты в сложных задачах, вроде математики и программирования, наголову обойдя всех предшественников, но отвечать она стала дольше, и пользоваться ей стало сильно дороже.
Как работает o1? OpenAI, конечно, не говорит, но мы попробуем догадаться.
Идея, что можно масштабировать вычисления в моменте предсказания не нова. Ровно также работают шахматные программы, перебирая варианты перед новым ходом. Так уже делали для нейросетей, но не для LLM, а для игры в GO. Помните AlphaGo Zero? Нейронная сеть, которая в тысячи раз меньше современных LLM, обучалась на собственных партиях и научилась играть в Го лучше любого из людей.
Что многие не знают. Если бы AlphaGo Zero не думала долго перед каждым ходом, а пыталась сразу дать ответ, она не смогла бы побить людей в го. AlphaGo сначала делает вероятностную оценку, как можно сходить, а потом запускает алгоритм Monte Carlo Tree Search. Алгоритм оценивает вероятные результаты после розыгрыша каждого хода и оценивает успешность разных ходов. Понятно, такой алгоритм требует вычислений, только уже не во время обучения модели, а во время предсказания.
Noam Brown, один из главных исследователей в OpenAI и создателей o1 модели, говорил о таком правиле: чтобы получить 120 очков Elo в го, нужно либо в 2 раза увеличить вычисления на обучения, либо в 2 раза увеличить вычисления на предсказание. Вот чтобы из состояния 3000 Elo (модель совсем без поиска) дойти до 5000 Elo, вам нужно на обучение потратить в 100 тысяч раз больше вычислений. После какого-то уровня, масштабировать обучение уже экономически будет невозможно, поэтому придется масштабировать предсказание.
Важно понять: технически вы можете растить обучение дальше, качество будет расти, просто экономически это глупо. Масштабирование модели = масштабирование обучения умноженное на масштабирование предсказания.
Как бы нам такое завести не для игр, а для LLM. Начнем с самого наивного варианта.
В статье со смешным названием Large Language Monkeys заставляли опенсорс модель DeepSeek-Coder-V2 генерировать сотни ответов на каждую задачку по программированию, а затем проверяли решение только у того кандидата, кто прошел все unit тесты. Таким жадным наращиванием вычислений не самая мощная опенсорс модель побила самую мощную на тот момент GPT-4o.
Главная хитрость этого метода: в программировании просто верифицировать решения. Когда вы выдаете разные решения, очень просто прикинуть по тестам, рабочее оно или совсем хлам. Например, для генерации сочинений так уже сделать не получится.
Из этого простого метода мы поняли, что для масштабирования предсказания LLM нам нужно ровно два компонента. Первый компонент — за счет чего мы будем растить вычисления. В статье просто генерировалась куча вариантов ответа на один вопрос. Второй компонент - как мы поймем, что мы идем в правильном направлении. В статье были unit тесты, но они есть не всегда и не всегда все покрывают.
Начнем с первого компонента. Когда человеку надо крепко подумать, он не придумывает 100 решений, а потом выбирает между ними. Он рассуждает. Кажется, что решение сложной задачи через рассуждения, чем-то похоже на игру в го. У вас есть итоговая цель (решение задачи) и логические ходы, которые вы можете делать. В этом смысле рассуждение это ничто иное как поиск. Ровно такой же поиск, который мы делали в го с помощью Monte Carlo Tree Search. Только там мы находили ход, который приблизит нас к победе в игре, а теперь надо найти мысль, которая решит задачу. Нащупали идею, да?
Теперь второй компонент. Рассуждений можно придумать бесконечно много. Нужно уметь как-то проверять, какие рассуждения правильные, а какие нет. И делать это не только юнит тестами для программирования, нужен общий подход для всех задач. И нам не очень хочется генерировать миллиард вариантов рассуждений и все их тестировать, как в статье — это очень дорого. Нужно проверять не в самом конце, когда уже готов финальный ответ, а в моменте генерации нового логического шага. Так ваша задача сильно упростится — не нужно тратить силы на цепочку рассуждений, когда уже после двух шагов понятно, что мы куда-то идем не туда. Во всех играх такой верификатор есть: если вам прилетит мат в 2 хода, то пошли вы слабо. Значит, нам надо создать такой верификатор. Тогда можем просто запустить какой-то алгоритм поиска и найти самый хороший логический ход.
Думаю, теперь то вы точно нащупали, к чему все идет.
В 2023 году OpenAI выпускает статью Let’s Verify Step by Step, в которой они строят верификатор и учат модель рассуждать. Думаю, что это статья предвестник o1, вышедшей в 2024. Статья фокусируется на решении математических задач. В статье промптом заставили модель рассуждать шаг за шагом, а затем каждый шаг рассуждения рассуждения разметили разметчиками - приближает ли он к решению проблемы или он вообще ошибочный.
В итоге разметили датасет PRM800K, в котором 800 тысяч таких размеченных логических шагов. На этом датасете обучили верификатор, который предсказывает корректность каждого шага рассуждений. Когда такой верификатор есть, мы уже можем выбрать решение, у которого нет никаких логических ошибок. Все ровно как в играх. Такой метод позволяет на 25% поднять точность решения математических задач.
Теперь все будут масштабировать также. Примерно таким же образом, как мы с вами обсудили, уже делают опенсорсные решение. Модели в облаке, конечно, будут стоить сильно дороже…
Конечно, такой сложный поиск требует дополнительных ресурсов. OpenAI в ананосе o1 показал график, как растет качество модели при масштабировании по двум осям: обучения и предсказания.
Теперь вы понимаете, почему такой дикий прирост происходит именно для программирования и математики. Там очень понятно, как строить верификатор.
Спустя всего 3 месяца после релиза o1 вышла модель o3 (решили сразу замахнуться на o3, чтобы избежать конфликта с британской телеком компанией o2). Здесь про AGI шутить перестали даже скептики.
O3 смогла побить человека на задачах, которые 5 лет не могли покориться машинам - визуальным головоломкам. Такой набор задач предложили в статье в 2019 году и назвали ARC-AGI. Автор определял AGI как способность осваивать новые навыки, которых ранее не было в обучающем множестве. Поэтому ARC-AGI так сложно давался моделям. Каждая задача в этом наборе уникальная — она отдельно разрабатывалась и все задачи тестируют разные аспекты интеллекта. Сама проверочная выборка, разумеется, нигде не была опубликована.
GPT3 в 2020 году решал ровно 0 таких задач. GPT-4o в 2024 году решал целых 5%.
Среднестатистический человек решает 75% задач. O1, немного подумав, решал уже 31% задач. O3, крепко крепко подумав, правильно решает 88% задач.
Крепкое думанье стоит денег. Пока модель рассуждает, она пишет тексты, расходует GPU. Чтобы сделать предсказание модели o3 на на одном примере из ARC-AGI, OpenAI тратила 1000 долларов. Для сравнения, сам автор соревнования говорит, что ему люди решали эти же самые задачки по 5 долларов за штуку. Пока выглядит, что ИИ дороже людей, но думаю, мы сможем чуть-чуть оптимизировать.
Конечно, побить человека на ARC-AGI не значит, что o3 это AGI. Об этом говорят и сами авторы соревнования. Это просто очень сложный бенчмарк, который спроектирован таким образом, что прошлые поколения моделей не могли с ним справиться. Мы научились эффективно (1000 долларов за пример, ха-ха) масштабировать предсказание модели. Тем самым, смогли решать те задачи, которые год назад нам казались нереальными. Кстати, авторы ARC-AGI, они уже выпустили анонс, что готовят новый крепкий орешек для моделей — ARC-AGI-2, в котором модели смогут решить ну максимум 30% задач. Выпустят то они выпустят, но не думаю, что с таким прогрессом он продержится больше года.
Что важно: o3 вышло спустя всего 3 месяца после релиза o1 и уничтожила o1 по метрикам. Мы только начали масштабировать предсказания, только завели самые первые алгоритмы - у нас огромное поле непаханное для экспериментов. В 2025 году нас ждет огромное множество рассуждающих моделей.
Масштабированием обучения мы занимаемся несколько лет и там прогресс явно медленнее идет: GPT-5 мы 2 года ждем и инвесторы уже беспокоятся...
Я легко умещу основную идею в один абзац. Даже немного стало обидно, что идея не так велика, как мне казалось изначально.
Выберите правильные алгоритмы, которые вы можете масштабировать. Дальше масштабируйте обучение модели и масштабируйте предсказание модели. Да, и еще не забывайте про закон Мура — он поможет вам не разориться.
Примерно тоже самое говорил Ричард Саттон в своем Bitter Lesson еще в 2019:
Главное, что следует помнить — великую силу методов, которые продолжают масштабироваться с увеличением вычислений, даже когда доступные вычисления становятся очень большими. Два метода, которые масштабируются произвольно таким образом: это поиск и обучение.
Поиск и обучение. Ровно те два метода, о которых мы рассуждали в статье. Мы мастерски научились масштабировать обучение. Пришло время поиска.
Друзья, спасибо, что дочитали эту статью до конца! Буду рад любым комментариям и замечаниям.
Подписывайтесь на мой телеграм канал, где я рассказываю про самое важное из мира искусственного интеллекта, а главное — как это воплощать на практике.
P.S. Огромное спасибо за редактору Юлии Булгатовой.