Итамар Фридман из CodiumAI: «Программирование будущего — это не написание строк, а управление ИИ-агентами»

Eye on AI 731 53 мин 5 мин 13.06.2024
Главное

В эпоху бурного развития генеративного искусственного интеллекта написание кода стало одной из самых перспективных областей для автоматизации. Итамар Фридман, сооснователь и генеральный директор компании CodiumAI, делится своим видением того, как мультиагентные системы помогут разработчикам достичь амбициозной цели — написания кода с «нулевым количеством багов».

🎯 Миссия: код без ошибок и проблем 2:11

Итамар Фридман поставил перед собой и своей командой задачу, которая кажется почти невыполнимой в современной разработке: достижение уровня «Zero Bugs» (ноль багов) . По его мнению, простого написания работающего кода недостаточно; необходимо стремиться к «целостности кода» (Code Integrity), что включает в себя отсутствие не только ошибок в логике, но и любых проблем с безопасностью, производительностью и соответствием лучшим практикам .

Для реализации этой концепции CodiumAI развивает не просто очередной чат-бот для генерации функций, а полноценную мультиагентную платформу . Фридман выделяет два ключевых инструмента, которые уже используют сотни тысяч разработчиков:

Фридман отмечает, что на текущий момент инструменты CodiumAI имеют более 600,000 установок, что подтверждает огромный спрос на автоматизацию контроля качества .

🏗️ От проектирования чипов к разработке ПО 5:47

Путь Фридмана к созданию ИИ-инструментов для программистов начался с работы в индустрии аппаратного обеспечения. В компании Mellanox (позже поглощенной NVIDIA) он занимался верификацией чипов . Этот опыт сформировал его подход к программному обеспечению: в мире «железа» спецификации настолько строги, что можно математически доказать корректность работы модуля .

По словам гостя, софтверной индустрии есть чему поучиться у создателей «железа» в вопросах тестирования и верификации. Однако он признает, что в ПО всё сложнее, так как входными данными часто являются не четкие биты, а туманные «пользовательские истории» (user stories), написанные людьми .

До основания CodiumAI Фридман прошел через несколько этапов:

  1. Получил магистерскую степень в области машинного обучения и оптимизации .
  2. Был техническим директором в двух стартапах, один из которых купила Alibaba Group .
  3. Работал в Alibaba Cloud, где занимался созданием систем AutoML для тонкой настройки моделей машинного обучения в период с 2017 по 2021 год .

Сам проект CodiumAI был запущен в августе 2022 года — буквально за несколько месяцев до мирового бума ChatGPT .

🔮 Будущее: исчезнут ли программисты? 9:09

На вопрос ведущего Крейга Смита о том, наступит ли день, когда обычный человек сможет просто надиктовать задачу и получить готовый код, Фридман дает осторожный прогноз. Он считает, что это произойдет, но не в ближайший год .

Фридман разделяет задачи на две категории:

  1. Простые независимые задачи (уровень Upwork): создание небольшого лендинга или изменение страницы. Здесь автоматизация достигнет высокого уровня через 3–5 лет. Технические менеджеры смогут «присматривать» за ИИ-разработчиком, лишь изредка внося правки .
  2. Энтерпрайз-разработка: здесь всё гораздо сложнее. В крупных корпорациях из Fortune 100 нельзя просто нажать кнопку «сгенерировать и отправить в продакшен» .

По мнению Фридмана, ключевым элементом станет платформа верификации. Даже если технический менеджер сможет описать спецификацию на естественном языке, системе потребуетсяdashboard, который подтвердит: «Все требования соблюдены, существующие функции не сломаны» . Разработчики не исчезнут, но их роль изменится: они будут решать самые сложные задачи, которые не под силу автоматике, и выступать в роли «пилотов» в высокотехнологичном коктейле .

🧪 AlphaCodium и «проектирование потоков» (Flow Engineering) 22:49

Одним из главных исследовательских достижений компании стал проект AlphaCodium. Это ответ на AlphaCode от Google DeepMind — системы, предназначенной для участия в соревнованиях по программированию на платформе Codeforces .

Фридман критикует подход DeepMind в некоторых аспектах:

CodiumAI предложила альтернативу — Flow Engineering (проектирование потоков). Вместо того чтобы просто слать один сложный промпт (Prompt Engineering), AlphaCodium заставляет ИИ имитировать процесс работы реального программиста .

Этот процесс включает в себя около 100 дискретных шагов :

  1. Внимательное чтение задачи.
  2. Разбор крайних случаев (edge cases).
  3. Предложение нескольких вариантов решения и анализ их плюсов и минусов.
  4. Написание тестов до написания самого кода.
  5. Итеративное исправление ошибок на основе результатов тестов.

Такой подход позволил AlphaCodium превзойти результаты DeepMind, используя значительно меньше вычислительных ресурсов и работая без специфического дообучения (fine-tuning) . Принципы «потокового проектирования» теперь интегрируются во все коммерческие продукты CodiumAI .

🧠 Система 1 и Система 2: как ИИ учится думать медленно 32:35

Фридман опирается на концепцию психолога Даниэля Канемана о двух системах мышления .

Фридман утверждает, что даже если обучить модель на «идеально чистом коде», это не решит проблему ошибок на 100% . Проблема не в данных, а в методе использования модели. Для создания надежного ПО нужен «агент», который использует внешние инструменты для проверки своих гипотез, подобно тому как человек гуглит информацию для верификации своих мыслей .

🛠️ Особенности продуктов и моделей 42:30

Инструменты CodiumAI уникальны тем, что они ориентированы на «покрытие поведением» (Behavior Coverage). Вместо скучной статистики по покрытию строк кода тестами, ИИ предоставляет описание на естественном языке: что именно проверяет каждый тест и какие ветки логики задействованы .

Технические нюансы работы платформы:

В завершение беседы Итамар Фридман призвал разработчиков не бояться за свои рабочие места, но активно осваивать ИИ-инструменты. Через пять лет программирование будет напоминать «оркестровку» или управление кабиной пилота сложного авиалайнера, где рутинные проверки автоматизированы, а человек берет на себя управление только в критические моменты .

💬 Цитаты

«Если вы дадите мне на проверку 20 строк кода, я напишу 5 комментариев. Если 500 строк — я скажу 'выглядит нормально'. Это огромная проблема для индустрии.»

Итамар Фридман 46:11

«Разработчик не исчезнет, он просто получит более сложные задачи. Простые вещи будут автоматизированы техническими менеджерами.»

Итамар Фридман 15:12
👥 Спикеры
📚 Упомянутые книги
🔗 Упомянутые сайты и проекты
📖 Термины
Flow Engineering
Метод проектирования работы ИИ, при котором задача разбивается на жесткую последовательность аналитических шагов вместо одного запроса.
Pull Request (PR)
Запрос на применение изменений кода в основной проект, во время которого обычно проводится проверка качества.
Code Integrity
Совокупность характеристик кода, включающая его корректность, безопасность и соответствие требованиям.
📊 Цифры
🗓 Хронология
  1. 2017 - 2021 Итамар Фридман работает в Alibaba Cloud над системами AutoML.
  2. Август 2022 Основание компании CodiumAI.
  3. Декабрь 2023 Выход AlphaCode 2 от Google DeepMind.
  4. Январь 2024 Публикация результатов AlphaCodium, превзошедших показатели DeepMind.
⚖️ Другая сторона
Искусственный интеллект Itamar Friedman CodiumAI AlphaCodium Flow Engineering Code Integrity