Как ИИ используют в программировании
Короткий ответ: как помощника, который быстро пишет черновик, объясняет и ищет ошибки, — но каждую строку, которую он предложил, программист читает, запускает и проверяет сам.
Где ИИ помогает
- Подсказки в редакторе. Расширения для редакторов кода дописывают строку или целую функцию, пока вы печатаете.
- Объяснение кода. «Объясните, что делает эта функция, построчно» — быстрый способ разобраться в чужом коде.
- Поиск ошибок. Вставьте код и текст ошибки: модель часто подскажет причину.
- Тесты. Модель набрасывает проверки для функции, включая случаи, о которых легко забыть.
- Рутина. Перевод кода с одного языка на другой, регулярные выражения, SQL-запросы, документация.
- Агенты. Некоторые инструменты сами вносят правки в проект и запускают команды — под присмотром человека.
Где подводит
- Выдуманные функции и библиотеки. Модель может уверенно вызвать функцию, которой нет, или посоветовать установить несуществующий пакет. Злоумышленники пользуются этим: регистрируют пакеты с такими «выдуманными» именами и кладут в них вредный код. Прежде чем ставить незнакомый пакет, найдите его страницу в официальном каталоге и документацию.
- Устаревший код. Знания модели заканчиваются датой среза — она может предлагать старые версии библиотек и устаревшие способы.
- Уязвимости. Сгенерированный код может быть небезопасным: подстановка данных пользователя прямо в SQL-запрос, отсутствие проверок, пароли в тексте программы.
- Код «почти работает». Модель хорошо справляется с типичным случаем и хуже — с краевыми: пустой список, ноль, очень большие числа, неверный ввод.
Не вставляйте в чат-бот пароли, ключи API, токены доступа, файлы .env и закрытый код компании. Отправленный ключ считайте раскрытым: отзовите его и выпустите новый.
Как работать правильно
- Сообщайте контекст: язык и его версию, библиотеки, что код должен делать, текст ошибки целиком.
- Читайте предложенный код до конца и понимайте каждую строку, прежде чем вставлять в проект.
- Запускайте и проверяйте на своих примерах, особенно на краевых случаях.
- Просите объяснение, а не только код: «Почему здесь ошибка? Как это исправить и почему так?»
- Пользуйтесь системой контроля версий (Git), чтобы любую правку можно было откатить.
Если вы только учитесь
Сначала напишите решение сами, даже неуклюжее, и только потом попросите модель его проверить и объяснить ошибки. Код, вставленный без понимания, ничему не учит, а на собеседовании и экзамене модели рядом не будет. Хороший запрос для учёбы:
Вот программа на Python, которая должна считать среднее значение списка.
Не переписывайте её целиком. Укажите ошибки и объясните, как их найти
самостоятельно.Основы программирования с нуля — в теме Python.