Почему код от ИИ с багами — 3 причины, и почему это не значит «ИИ тупой»

Ты просишь ИИ написать кусок кода. Он выдаёт что-то уверенное, ровное, красиво оформленное — а оно падает с ошибкой или делает не то. Обидно и сбивает с толку: выглядело же идеально. Вот что важно понять с самого начала: дело не в том, что ИИ «тупой». Дело в том, как он устроен. Когда поймёшь три причины ниже, ты перестанешь удивляться багам и начнёшь их предотвращать.
Симптом
Код от модели выглядит грамотно, но: падает с ошибкой, ссылается на несуществующую функцию, тихо делает не то, что просили, или ломает то, что уже работало. Разберём, откуда это берётся.
Причина 1. Модель угадывает правдоподобное, а не правильное
ИИ не «знает» код. Он предсказывает, какой текст вероятнее всего идёт дальше, опираясь на миллионы примеров. Обычно правдоподобное и правильное совпадают — поэтому он так часто помогает. Но иногда он уверенно придумывает функцию или библиотеку, которой не существует: выглядит как настоящая, потому что «такое часто пишут». Это галлюцинация, только в коде.
Как проверить: ошибка вида is not a function, module not found, no such method. Загугли название функции — если её нет в документации, модель её выдумала.
Как починить: скажи прямо: «такой функции нет, используй настоящий API библиотеки X» — и дай ссылку на доку. Модель опирается на факт, а не на догадку.
Причина 2. Она не видит весь твой проект
В отличие от тебя, модель не «открыта» во всех твоих файлах. Она видит только то, что ты ей дал в запросе. Если не показал свои функции, версии и структуру — она допишет код в вакууме, под некий усреднённый проект, а не под твой.
Как проверить: код хорош сам по себе, но не стыкуется с твоим — другие имена, другой стиль, зовёт то, чего у тебя нет.
Как починить: дай контекст. Вставь в запрос нужный файл, назови стек и версии, покажи похожий рабочий кусок. Чем больше модель видит твой проект, тем меньше дописывает от себя.
Причина 3. Задача была размытой — модель додумала за тебя
«Сделай форму красивой» или «почини это» — слишком размыто. Там, где ты недосказал, модель додумывает. И часто додумывает не то, что ты имел в виду. Получается рабочий код, который решает не твою задачу.
Как проверить: ошибок нет, но ведёт себя не так, как ты ждал. Признак не бага, а недопонимания.
Как починить: формулируй конкретно — что на входе, что на выходе, какие ограничения. Это половина успеха; разобрано в как написать хороший промпт.
Так что, на код от ИИ нельзя полагаться?
Можно — но как на черновик сильного джуна, а не как на готовое решение. Золотое правило: проси по маленьким кускам, читай, что получилось, и сразу запускай. Не вали всё одним огромным запросом — там баги и прячутся. Полезно и самому понимать чужой код: как читать код, написанный ИИ.
Это станет лучше с новыми моделями?
Отчасти. Модели правда реже выдумывают и аккуратнее с кодом год от года. Но первые две причины — угадывание и неполный контекст — заложены в саму природу инструмента. Поэтому привычка давать контекст и проверять останется полезной всегда.
Почему ИИ так уверен, даже когда ошибается?
Потому что уверенность интонации и правильность ответа у модели не связаны. Она одинаково гладко пишет и верный, и выдуманный код. Не верь тону — верь запуску.
Короткие уроки-истории, симулятор агента и ежедневная практика — в нашем мобильном приложении. Бесплатно.





