Разбор популярных мифов об AI в разработке: RAG, MCP и навыки
Анализ популярных тезисов о роли ИИ в разработке: от необходимости читать сгенерированный код до взаимодействия MCP и Skills. Развенчание мифов о замене разработчиков и устаревании RAG.
GitHub Podcast разобрал пять распространенных мнений об использовании ИИ в программировании, объяснив, почему RAG не устарел, а навыки (Skills) и протокол MCP решают разные задачи.
Главные тезисы
- RAG не мертв, он обеспечивает релевантный контекст, снижая затраты токенов и ошибки.
- MCP и Skills решают разные задачи: первый дает доступ, второй объясняет процесс.
- Ответственность за сгенерированный код остается на разработчике, меняется лишь фокус ревью.
- Качество кодовой базы влияет на способность ИИ-моделей ее понимать.
Критический подход к «горячим» мнениям
Эмоциональные суждения часто упрощают сложные темы, но реальная ценность заключается в анализе контекста и условий применения. Вместо слепого принятия или отвержения популярных тезисов, стоит оценивать их применимость к конкретным рабочим процессам.
Тезис 1: «Не нужно читать код, сгенерированный ИИ»
Разработчик несет ответственность за любой код, независимо от способа его создания. Однако уровень внимания к ревью должен зависеть от контекста:
- Рефакторинг аутентификации требует более строгой проверки, чем эксперимент с CSS.
- Работа с унаследованной кодовой базой отличается от работы с новым проектом.
Эффективный подход включает предварительный анализ: чтение текущей реализации, картирование зависимостей и выявление граничных случаев до генерации кода. Если же код уже создан, внимание следует уделить обработке ошибок, правам доступа, производительности и тестам. ИИ перераспределяет усилия, но не устраняет необходимость контроля.
Тезис 2: «Компании не наймут вас без использования ИИ»
Рынок труда требует не просто использования инструментов, а понимания того, когда и как их применять. Ключевым сигналом для работодателя является суждение разработчика:
- Умение объяснить выбор между ручной работой и помощью ИИ.
- Навыки ревью сгенерированного кода.
- Честная оценка влияния инструментов на скорость, качество, безопасность и поддерживаемость.
Полный отказ от ИИ в компаниях, активно использующих его в инженерных процессах, делает кандидата несовместимым с требованиями. Однако и полная зависимость от инструментов не является идеалом. Важна флюентность в работе с инструментами и понимание границ их доверия.
Тезис 3: «Skills убили MCP»
Model Context Protocol (MCP) и Skills (навыки) решают разные задачи и не конкурируют, а дополняют друг друга:
- MCP предоставляет стандартизированный способ для агентов подключения к инструментам и данным, обеспечивая надежное взаимодействие систем.
- Skills представляют собой упакованную экспертизу: инструкции по работе команды, изменениям в проекте или использованию инструментов. Они часто пишутся в Markdown, что делает их читаемыми для людей.
MCP обеспечивает доступ, а Skills объясняют, как эффективно использовать этот доступ. Комбинация стандартов интерфейсов и контекстных инструкций создает более мощную среду, чем спор о приоритете одного из них.
Тезис 4: «RAG мертв»
Retrieval-Augmented Generation (RAG) не устарел, он просто перестал быть «новинкой» для публикаций. RAG предоставляет ИИ-системе релевантную информацию вне обучающих данных модели, включая документацию, историю поддержки и контекст кодовой базы.
Без качественной выборки (retrieval) модель полагается на внутренние знания, что приводит к потере токенов, замедлению работы и увеличению вероятности неполных ответов. Хорошая выборка сужает пространство поиска и привязывает ответы к фактам. В современных рабочих процессах агенты могут использовать MCP для доступа к инструментам, Skills для инструкций и RAG для поиска контекста одновременно.
Тезис 5: «Если нужно дообучать модель под ваш код, ваш код плох»
Хотя дообучение имеет свои причины, современные модели уже обучены на огромном количестве общих фреймворков и паттернов. Если модель не может понять кодовую базу, вероятно, с ней будут struggle и новые сотрудники. ИИ становится дополнительным тестом на поддерживаемость.
Четкая структура, консистентное именование, читаемые тесты и актуальная документация облегчают работу как для агентов, так и для людей. ИИ-ассистированная разработка вознаграждает код, чья логика очевидна.
Практический подход к развитию
Вместо участия в дебатах, эффективнее тестировать идеи на практике. Примеры проектов, такие как Pollinations AI (платформа с системой вознаграждения за вклад) и Avian Visitors (лог сборки устройства для распознавания птиц), демонстрируют создание доказательств и выявление компромиссов.
Рекомендуемые действия:
- Читать достаточно кода, чтобы владеть результатом.
- Развивать понимание AI-инструментов для объяснения своего рабочего процесса.
- Использовать MCP для стандартных интерфейсов, Skills для контекста и RAG для привязки к фактам.
- Рассматривать непонимание кода моделями как проблему поддерживаемости.