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

Источник: https://www.youtube.com/watch?v=Hf4IW_XcyTc
Канал: Eye on AI
Опубликовано: 13.06.2024

---

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

## 🎯 Миссия: код без ошибок и проблем
[[JUMP:02:11]]

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

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

*   **Codiumate:** Плагин для сред разработки (IDE), таких как VS Code и JetBrains, предназначенный для помощи отдельным программистам в планировании задач и анализе написанного кода [03:17].
*   **PR Agent:** Инструмент для командной работы, который интегрируется в GitHub, GitLab или Bitbucket. Он анализирует запросы на слияние (Pull Requests), помогает описывать изменения и находить проблемы до того, как код попадет в основную ветку [03:45].

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

## 🏗️ От проектирования чипов к разработке ПО
[[JUMP:05:47]]

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

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

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

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

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

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

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

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

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

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

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

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

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

*   Оригинальный AlphaCode требует миллионы запусков модели (inference) для решения одной задачи [25:27].
*   Модели DeepMind часто требуют специфической тонкой настройки под конкретные типы задач [25:13].

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

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

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

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

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

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

*   **Система 1 (быстрая):** Интуиция, мгновенные ответы. Это то, как работают современные LLM по умолчанию — они просто предсказывают следующий токен. Фридман считает, что в таком режиме и люди, и ИИ склонны к галлюцинациям [37:31].
*   **Система 2 (медленная):** Рациональный процесс, следование алгоритмам и правилам. Именно это обеспечивает «проектирование потоков» [33:56].

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

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

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

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

*   **Гибкость моделей:** Платная Enterprise-версия позволяет клиентам выбирать между моделями OpenAI, собственными моделями CodiumAI или другими топовыми решениями [47:46].
*   **Безопасность:** Компания предоставляет возможность запуска моделей на собственных серверах клиентов (On-premise) в изолированной среде (air-gap), что критически важно для корпораций, опасающихся утечки интеллектуальной собственности [42:03].
*   **Собственные разработки:** Для специализированных задач (анализ кода, поиск багов) CodiumAI тренирует свои модели, которые в этих узких нишах показывают результаты не хуже, а иногда и лучше, чем GPT-4 Turbo [42:17].

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