
Разработчики всё чаще подключают ИИ к задачам — от обработки данных до генерации тестов. На первом просмотре такой код выглядит аккуратно и логично. Но при рабочей нагрузке в нём часто вскрываются ошибки, которые модель не учла.
Расскажем, почему код от ИИ выглядит корректным даже при логических пробелах, что такое LLM‑интеллект, как ИИ‑грамотность связана с переоценкой качества кода и какие инженерные практики помогают выстроить работу с моделью.
Материал подготовлен на основе экспертной колонки старшего вице‑президента Сбера, руководителя блока «Технологий» Кирилла Меньшова, опубликованной в Ferra.
Почему код от ИИ выглядит корректным, даже когда в нём есть ошибка
Сценарий знаком многим командам. Разработчик просит ИИ‑ассистента помочь с обработкой данных в заданном формате. Модель за секунды выдаёт решение — 30 аккуратных строк кода с обработкой ошибок и ясной структурой. Код уходит на проверку, и коллеги принимают его без замечаний.
Через неделю приходит отчёт об ошибке. Система падает на сложном сценарии, который не попал в логику решения. Например, модель не учитывает вложенные структуры данных. Синтаксис остаётся корректным, стиль — аккуратным, но логика оказывается неполной.
Исследования показывают: с генеративным ИИ производительность разработчиков растёт на 15–20%, но качество своих решений они переоценивают на 25–30%. ИИ ускоряет работу, но не делает проверку внимательнее. Вместо готового решения человек получает прототип, который не выдерживает рабочую нагрузку.
Особый риск в том, что разработчики, подробно знакомые с устройством ИИ‑ассистентов, склонны переоценивать такой код чаще других. Именно в этих случаях затем проявляются логические ошибки, которые раньше оставались незаметными.
Понимание архитектуры нейросети не помогает предсказать её ошибки. Зато оно легко создаёт иллюзию полного контроля. Большие языковые модели — LLM — часто воспринимают как обычный инструмент разработки: компилятор, линтер или статический анализатор. Но LLM — это вероятностный генератор паттернов, а не система, которая понимает смысл кода.
Такая модель не знает контекст конкретной архитектуры и не различает ситуацию «код запускается» и ситуацию «код работает правильно». Поэтому для работы с ней нужен отдельный навык — LLM‑интеллект.
Что называют LLM‑интеллектом
LLM‑интеллект — это способность разработчика эффективно взаимодействовать с языковыми моделями за счёт понимания их когнитивной архитектуры, метакогнитивного контроля над генерацией и адаптивной настройки запросов к модели. Он включает в себя:
-
понимание задачи, требований, пограничных случаев и критериев качества;
-
карту сильных и слабых сторон модели, которая формируется только через опыт;
-
понимание того, как строить диалог с моделью: когда использовать цепочку рассуждений, когда давать примеры, а когда достаточно попросить улучшить код.
Когда опытный разработчик работает с джуном, он постепенно понимает, что тому нужно объяснять подробнее, где тот ошибётся и как воспримет обратную связь. В психологии это называют теорией разума — способностью моделировать чужие когнитивные процессы. Тот же принцип применим и к ИИ, но с важной поправкой.
GPT не понимает код по‑человечески, но у него есть предсказуемая когнитивная архитектура. Его «мышление» опирается на частоту паттернов в обучающих данных, а не на корректность алгоритма. Поэтому модель уверенно генерирует шаблонный код, но хуже справляется с нетривиальной бизнес‑логикой, малоизвестными библиотеками и задачами, где нужно не только написать модульный тест, но и понять, что именно стоит тестировать в конкретной системе.
Почему ИИ‑грамотность не гарантирует точную самооценку
Знание того, как работают attention и RLHF, ещё не означает умения работать с ИИ в разработке. Даже чтение статьи Attention is All You Need не заменяет практику. Механизм attention помогает модели учитывать связи внутри последовательности, а RLHF настраивает ответы через обучение с подкреплением на основе человеческой обратной связи. Но техническое знание об ИИ и навык работы с ним — разные компетенции.
Исследования показывают метакогнитивный разрыв: высокая ИИ‑грамотность связана и с большей уверенностью, и с большей ошибкой в самооценке. Те, кто знает теорию, чаще пропускают этап критического анализа и принимают сгенерированный код за корректный.
Эксперименты показывают и другое: ИИ сглаживает эффект Даннинга‑Крюгера. Джуниоры и сеньоры одинаково переоценивают качество сгенерированного кода — на 25–30%. Модель выравнивает производительность, но одновременно создаёт иллюзию корректности.
Когда человек компетентнее ИИ, связка даёт синергию: разработчик задаёт архитектуру и проверяет логику, а модель ускоряет реализацию. Когда ИИ сильнее человека в узкой области, эффект становится обратным: разработчик начинает «улучшать» код, добавляет лишние проверки или переписывает решение в менее удачном стиле. Поэтому роль инженера здесь не сводится к управлению промптами.
Какие практики помогают развивать LLM‑интеллект
Можно выделить шесть инженерных практик, которые помогают развивать LLM‑интеллект:
-
Рассматривать ИИ как джуна, а не как компилятор: задавать спецификации, передавать контекст и пограничные случаи, затем проводить проверку кода.
-
Сначала описывать интерфейсы и типы, а потом переходить к генерации кода.
-
Калибровать доверие к модели и обновлять представление о её сильных и слабых сторонах после каждого инцидента.
-
Запрашивать объяснение сложных решений, чтобы лучше понимать логику ответа модели.
-
Проводить слепую проверку кода перед коммитом, не опираясь на исходный запрос.
-
Не передавать модели архитектурные решения и оставлять за человеком топологию системы, базы данных и кэширование.
Что это меняет для разработки
В ближайшие 5–10 лет разработка с поддержкой ИИ станет стандартом — так же, как уже стали стандартом среды разработки с автодополнением, статические анализаторы и процессы CI/CD, то есть непрерывной интеграции и доставки кода. Но разницу между обычным использованием модели и осмысленной работой с ней определит не сам факт применения ИИ, а качество взаимодействия с ним.
LLM‑интеллект в этой логике — не знание трансформерных архитектур само по себе, а умение строить для ИИ теорию разума, держать под контролем собственную уверенность, подбирать способ взаимодействия с моделью и вовремя корректировать уровень доверия к её ответам. Такой навык появляется не из чтения научных работ, а из практики, разбора того, что сработало, систематизации удачных паттернов и постоянного обновления собственной ментальной модели ИИ.
Автор: Sber


