В новом выпуске подкаста Eye on AI ведущий Крейг Смит побеседовал с генеральным директором компании Diffblue Мэтью Лоджем о будущем искусственного интеллекта и программирования. В центре дискуссии оказалось концептуальное противостояние двух ключевых подходов: обучения с подкреплением (Reinforcement Learning) и больших языковых моделей (LLM). Эксперт подробно разобрал, почему хайп вокруг генеративного ИИ временно затмил более точные инженерные методы, и объяснил, как синергия этих технологий определит эволюцию разработки программного обеспечения.
🎯 Точность против универсальности: фундаментальный раскол ИИ 0:00
Главное различие между обучением с подкреплением и большими языковыми моделями кроется в их целеполагании. Как объясняет Мэтью Лодж, алгоритмы обучения с подкреплением (RL) всегда ориентированы на достижение конкретной цели и максимальную точность. В случае автоматического тестирования цель — приблизиться к 100-процентному покрытию кода, а в задачах оптимизации — сделать алгоритм быстрее предыдущей версии.
В отличие от RL, большие языковые модели вообще не имеют конкретной цели. По словам Лоджа, их задача — быть максимально универсальными. При работе с текстом или кодом LLM просто предсказывают, какой токен должен идти следующим, основываясь на статистических вероятностях. В этой парадигме разработчики осознанно жертвуют точностью ради универсальности.
Из-за этого фундаментального сдвига возникают ключевые проблемы генерации кода с помощью популярных нейросетей. По наблюдениям Мэтью Лоджа, большие языковые модели почти всегда создают синтаксически корректный код, но регулярно ошибаются в семантике. У них отсутствует внутренняя модель языка или понимание логики программы; они лишь воспроизводят паттерны, которые видели в обучающей выборке.
Ведущий подкаста Крейг Смит подтверждает этот тезис личным опытом: он описал многочасовые попытки создать приложение с помощью AutoGPT и GPT-4. Каждый раз, когда система сталкивалась с ошибкой, Крейг отправлял баг-репорт обратно в GPT-4, модель предлагала правки, но этот процесс превращался в бесконечный цикл, который так и не привёл к работающему результату. Лодж отмечает, что в таких сценариях LLM не понимает, что делает код — она просто перебирает альтернативные текстовые паттерны в надежде угадать верный.
⚡ Сила направленного поиска: кейсы AlphaDev и AlphaCode 6:35
В качестве альтернативы хаотичному перебору LLM Мэтью Лодж приводит в пример алгоритмы направленного поиска на основе обучения с подкреплением. Традиционный брутфорс-перебор (как в шахматном суперкомпьютере Deep Blue от IBM 30 лет назад) проверяет абсолютно все варианты. Однако в более сложных средах вроде игры Го пространство возможных ходов превышает количество атомов во Вселенной. Здесь на сцену выходит RL: оно определяет области пространства решений, где наиболее вероятно находятся лучшие варианты, концентрирует поиск там и полностью игнорирует заведомо проигрышные ветки.
Ярким примером успешного применения этой технологии исследовательским подразделением Google DeepMind стал проект AlphaDev. Разработчики применили обучение с подкреплением к базовым алгоритмам компьютерных наук — сортировке и хэшированию, которые вызываются в мире миллионы раз в секунду. AlphaDev мутировал код на уровне ассемблера, удаляя или меняя инструкции и проверяя результат.
Результаты работы AlphaDev:
- Для больших массивов данных алгоритм быстрой сортировки (quicksort) стал работать на 1,7% быстрее.
- Для малых наборов данных производительность увеличилась на 70%.
Лодж противопоставляет этот подход другому проекту DeepMind — AlphaCode, который создавался для побед в соревнованиях по программированию. AlphaCode сочетает в себе свойства LLM и RL: модель генерирует огромное количество вариантов программ под заданную спецификацию, а затем проводит кластерный анализ, чтобы отсеять семантические дубликаты и выбрать финальных кандидатов. Однако Лодж подчеркивает, что этот метод работает исключительно в условиях идеальных, недвусмысленных конкурсных спецификаций, что делает его малоприменимым в реальной коммерческой разработке.
🛠 Автономное тестирование: как Diffblue автоматизирует Java 8:05
Компания Diffblue, возглавляемая Мэтью Лоджем, родилась как спин-офф Оксфордского университета в 2016 году. Продукт компании использует обучение с подкреплением для полностью автономного написания юнит-тестов для приложений на Java. Процесс устроен как строгий цикл: система анализирует сигнатуру метода, делает предположение о структуре теста, компилирует его и запускает против целевого кода.
На основе полученных метрик покрытия ветвей алгоритм прогнозирует, как должен выглядеть более эффективный тест. Этот цикл повторяется примерно 10 000 times для каждого метода. В результате заказчик получает стабильные регрессионные тесты, способные мгновенно отлавливать нежелательные изменения в поведении софта.
По словам Лоджа, технологии автоматизации кода на базе RL имеют глубокие академические корни:
- Еще в 2012 году исследователи из Шеффилдского университета запустили опенсорсный проект EvoSuite.
- Проект доказал жизнеспособность генерации тестов с помощью генетических алгоритмов и RL задолго до бума современных нейросетей.
✈ Безопасность и «полетный конверт» для искусственного интеллекта 15:39
Обсуждая риски масштабного внедрения ИИ, Лодж проводит прямую аналогию с критически важными для безопасности системами (safety-critical systems), с которыми он работал на заре своей карьеры программиста — софтом для космических станций, Boeing 777 и систем fly-by-wire от Airbus. Главный принцип таких систем — строгое удержание параметров в пределах так называемого полетного конверта (flight envelope). Выход за его границы означает катастрофу и гибель людей.
Чтобы гарантировать безопасность, авиационный софт делают строго детерминированным, что позволяет применять к нему математические доказательства правильности. С большими языковыми моделями ситуация обратная: они представляют собой гигантские черные ящики со статистическими моделями, внутреннюю логику которых человек понять не в силах. По мнению Лоджа, если индустрия начнет массово подключать LLM к реальным физическим или критическим бизнес-системам без внешних верифицирующих контуров, это неизбежно приведет к неконтролируемым сбоям.
При этом генеральный директор Diffblue призывает не поддаваться медийной истерии о скором «конце света» из-за ИИ, напоминая, что LLM не являются новой формой сознания. Реальную краткосрочную угрозу он видит в простоте генерации дезинформации и фейков, неотличимых по стилю от текстов реальных людей.
🧠 Иллюзия эмерджентности и голливудские аналогии интеллекта 25:39
В вопросе о том, обладают ли современные модели зачатками реального разума, Мэтью Лодж солидарен с известным лингвистом Ноамом Хомским, который крайне скептически оценивает «интеллект» нейросетей. Лодж иронично замечает, что современные искусственные нейросети похожи на человеческий мозг примерно так же, как голливудский фильм, «основанный на реальных событиях», похож на реальную историю.
Спикер подверг критике популярную гипотезу об «эмерджентном поведении» крупных моделей (когда у нейросети якобы внезапно появляются свойства, которым ее не обучали напрямую). Лодж ссылается на исследование Стэнфордского университета, которое математически доказало, что эмерджентность в LLM — это методологическая иллюзия, артефакт выбора метрик оценивания, а не реальный технологический скачок.
Человеку свойственно антропоморфизировать ИИ и искать скрытый разум там, где его нет. В связи с этим Лодж рекомендует книгу Нассима Талеба «Одураченные случайностью». Как трейдер может 10 лет успешно зарабатывать на бирже благодаря чистой удаче и считать себя гением, так и пользователь GPT, получив один удачный ответ, поспешно делает вывод о наличии у машины сознания. Кроме того, Лодж напоминает, что продвинутые модели вроде GPT-4 активно дообучаются на правильных ответах, написанных людьми. Этот процесс (RLHF) маркетологи называют обучением с подкреплением на основе отзывов людей, хотя технически это просто этап тонкой настройки (fine-tuning) на готовых шаблонах.
Будущее ИИ-архитектур спикер видит в ансамблевом подходе, а не в бесконечном масштабировании одних лишь языковых моделей. Он приводит цитату крестного отца глубокого обучения Джеффа Хинтона, который указывал на то, что человеческий мозг выполняет колоссальный объем неязыковых задач. Например, человек учится играть в баскетбол и забрасывать мяч в кольцо не по книгам — этот тип моторного и пространственного обучения полностью отсутствует в современных LLM.
👨💻 Скептицизм разработчиков и реальная эффективность Copilot 36:35
Внедрение автоматизации в среду программистов традиционно натыкается на жесткий профессиональный скепсис. Лодж вспоминает, как в 2020 году команда Diffblue подготовила колонку для Wall Street Journal, утверждая, что спустя 10 лет после тезиса Марка Андриссена «программное обеспечение пожирает мир», наступает эпоха, когда «софт начинает пожирать сам себя». Редакторы газеты проявили крайнее недоверие, и компании стоило больших усилий доказать, что автономное написание кода — это реальный и важный бизнес-тренд. Разработчики помнят провал так называемых CASE-инструментов (computer-aided software engineering) 20-летней давности, которые пытались генерировать код по блок-схемам, но делали это настолько плохо, что индустрия надолго заработала иммунитет к подобным обещаниям.
Также Мэтью Лодж выразил скепсис по поводу термина «промпт-инжиниринг». По его мнению, слово «инжиниринг» подразумевает строгую методологию и предсказуемость, чего в работе с LLM нет и в помине. Из-за стохастической природы моделей микроскопическое изменение в формулировке запроса может привести к колоссальным и непредсказуемым изменениям в выдаче. Единственное работающее правило «промпт-дизайна» — давать модели как можно больше контекста и примеров в рамках доступного лимита токенов.
Спикер также прокомментировал громкие маркетинговые заявления корпораций о производительности генеративного ИИ:
- Microsoft утверждала, что инструмент GitHub Copilot уже пишет до 61% кода на Java. Лодж считает эту цифру манипулятивной, замечая, что в таком случае рынок труда для Java-разработчиков давно бы рухнул.
- Официальный отчет подразделения Microsoft Research показывает, что реальный коэффициент принятия (acceptance rate) кодовых подсказок от ИИ колеблется в скромном диапазоне от 0,33 до 0,55.
В финале беседы Мэтью Лодж отметил, что написание текстовых строк кода — это механическая, наименее важная часть работы программиста. Суть профессии заключается в системном аналитическом мышлении, декомпозиции сложных проблем и архитектурном планировании. Происходящие изменения эксперт сравнивает с историческим переходом от ассемблера к языкам высокого уровня (Pascal, C, Java). Программисты прошлого тоже заявляли, что вручную распределяют память эффективнее компилятора, но колоссальный выигрыш в продуктивности заставил индустрию подняться на новый уровень абстракции. Похожий шаг вверх по лестнице абстракции происходит в программировании и сейчас.