ИИ ИИшка Про
Гайды

Как проверять код, сгенерированный ИИ

AI-редакция

ИИ-ассистент пишет код за секунды, и это удобно. Но он так же уверенно выдаёт код с ошибками, устаревшими подходами и уязвимостями — а выглядит всё одинаково правдоподобно. Разберём по шагам, как проверять сгенерированный код, чтобы он не подвёл в бою.

Почему нельзя доверять вслепую

Ключевой момент: ИИ не понимает код, а предсказывает правдоподобный текст. Он выдаёт то, что статистически похоже на правильный код, но это не гарантия корректности. Модель может уверенно вызвать несуществующую функцию, использовать устаревший подход, пропустить крайний случай или оставить уязвимость. И всё это будет выглядеть аккуратно и убедительно.

Поэтому сгенерированный код — это черновик от помощника, а не готовое решение. Ответственность за то, что попадёт в проект, остаётся на вас.

Шаг 1. Прочитайте и поймите код

Первое и главное правило: не вставляйте код, который не понимаете. Прочитайте его целиком и убедитесь, что понимаете каждую строку — что она делает и зачем. Если что-то непонятно, попросите ИИ объяснить или разберитесь сами. Код, который вы не понимаете, вы не сможете ни отладить, ни поддерживать.

Шаг 2. Проверьте, что оно вообще работает

ИИ иногда выдаёт код, который не запускается или делает не то. Обязательно:

  • Запустите код и убедитесь, что он работает без ошибок.
  • Проверьте на своих данных, а не только на примере из ответа.
  • Прогоните крайние случаи: пустой ввод, ноль, отрицательные числа, очень большие значения. Именно на них ИИ чаще всего спотыкается.

Шаг 3. Не верьте незнакомым функциям и библиотекам

Частая ошибка ИИ — выдуманные функции и методы, которых не существует, или неправильные названия параметров. Ещё модель может предложить устаревшую или несуществующую библиотеку. Сверяйтесь с официальной документацией: если функция незнакома, проверьте, что она реально существует и работает так, как описал ИИ.

Шаг 4. Отдельно проверьте безопасность

Это самое опасное. ИИ может сгенерировать код с уязвимостями, особенно если его об этом не просили. На что смотреть:

  • Пользовательский ввод — проверяется ли он, нет ли внедрения (SQL-инъекции, инъекции команд).
  • Секреты — не зашиты ли пароли, ключи и токены прямо в коде.
  • Права и доступ — не даёт ли код лишнего доступа.
  • Устаревшие небезопасные приёмы — ИИ учился на старом коде и может их повторять.

Как ИИ вообще можно обмануть через текст — в гайде про промпт-инъекции.

Шаг 5. Проверьте стиль и вписанность в проект

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

Красные флаги

Насторожитесь, если ИИ:

  • уверенно использует незнакомую функцию без пояснений;
  • предлагает отключить проверку или предупреждение, чтобы «заработало»;
  • генерирует очень длинный код для простой задачи;
  • обрабатывает секреты или пользовательский ввод без осторожности.

Что запомнить

  • ИИ предсказывает правдоподобный текст, а не гарантирует правильность.
  • Не вставляйте код, который не понимаете — это правило №1.
  • Запускайте и проверяйте на крайних случаях, а не только на примере.
  • Сверяйте незнакомые функции с документацией — их может не быть.
  • Отдельно проверяйте безопасность: ввод, секреты, права, устаревшие приёмы.

Почему модель может уверенно ошибаться в любой теме — в материале про проверку ответов ИИ. Подобрать ассистента под код поможет подборщик моделей.