Как нейросети помогают программистам в кодогенерации и тестировании

Как нейросети помогают программистам в кодогенерации и тестировании
Фото: st.volga.news

Нейросетевые модели стали мощным инструментом программирования и перешли в разряд массовой практики. Умение ими пользоваться работодатели проверяют уже на этапе тестовых заданий. Да и дальнейшее развитие специалистов без применения таких инструментов уже выглядит практически невозможным. Вместе с инженером лаборатории «Искусственный интеллект» ПГУТИ, программистом Института прикладной математики имени М. В. Келдыша РАН и Исследовательского центра в сфере ИИ по направлению «Транспорт и логистика» НИЯУ МИФИ Константином Ивановым мы разобрали примеры применения нейросетей для кодогенерации и тестирования.

Фото: предоставлено Константином Ивановым

В  основе  — базовые знания

Нейросети сегодня стали неотъемлемой частью работы программиста  — от  генерации кода до  анализа ошибок и  тестирования. Их  возможности основаны на  больших языковых моделях (LLM), способных понимать запросы на  естественном языке и  превращать их  в  программные решения. Такие модели доступны в  разных форматах: облачные сервисы (ChatGPT, Claude, Grok) позволяют использовать их  через интернет, а  локальные версии (Qwen, Phi, Gemma) устанавливаются прямо на  рабочую станцию и  подходят для защищённых сред. Всё чаще программисты используют LLM как "второго разработчика"  — помощника, который ускоряет рутину, помогает искать ошибки и  подсказывает варианты реализации.

  "Я  обычно использую Cursor IDE  — это надстройка, созданная на  базе IDE VS  Code от  Microsoft. В  неё встроены интеллектуальные агенты на  основе LLM, между которыми можно переключаться в  зависимости от  задачи. Среди поддерживаемых  — модели от  OpenAI (GPT-5), Anthropic Claude, Google Gemini, DeepSeek и  других разработчиков. Такой выбор позволяет подбирать оптимального помощника под конкретный проект",  — отметил Константин Иванов.

Важно помнить, что интеллектуальные агенты на  базе LLM могут неправильно интерпретировать задачу или предложить нерабочее решение. Чтобы заметить и  исправить подобные недочеты, специалисту самому необходимо обладать прочной базой знаний и  пониманием принципов программирования.

  "Даже самые продвинутые языковые модели, включая так называемые thinking models, на  самом деле не  понимают текст так, как человек. Для них это не  смысл, а  последовательность числовых представлений  — токенов, между которыми они ищут статистические зависимости. Архитектура LLM основана на  механизме трансформеров, которые анализируют контекст и  предсказывают следующий элемент в  последовательности. Поэтому, когда запрос сформулирован нечетко или задача требует логического анализа, могут возникать ошибки",  — пояснил специалист.

  Работаем от  задачи

  С  LLM-нейросетями программисты работают через контекстное окно  — специальное поле для ввода запросов (промптов). Главное  — грамотно изложить задачу, чему тоже важно научиться.

  "Покажу простой пример с  локальным LLM-чатом НИЛ ИИ  ПГУТИ. Забиваем в  контекстном окне задачу: "Сделать приложение калькулятор на  Python". Сначала нейронная сеть генерирует текст, описывая то, что ей  нужно сделать, а  затем начинает генерировать  код. От  инициализации модели до  конечного результата ушло всего 29 секунд",  — рассказал Константин Иванов.

  Интеллект и  "сообразительность" нейросети во  многом определяются ее  архитектурой, количеством параметров, объемом и  качеством данных, на  которых она обучалась. Сегодня программист может выбрать как облачные API-модели, так и  локальные решения, которые работают без подключения к  интернету и  подходят для защищенных сред, где важно сохранить конфиденциальность данных.

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

Материал подготовлен при поддержке гранта Минобрнауки России в  рамках Десятилетия науки и  технологий.

 

Ещё новости о событии:

Нейросетевые модели стали мощным инструментом программирования и перешли в разряд массовой практики.
09:00 17.11.2025 Волга Ньюс Тольятти - Тольятти
Как нейросети помогают программистам в кодогенерации и тестировании - Газета Репортёр
Нейросетевые модели стали мощным инструментом программирования и перешли в разряд массовой практики.
08:48 17.11.2025 Газета Репортёр - Самара
Нейросетевые модели стали мощным инструментом программирования и перешли в разряд массовой практики.
08:21 17.11.2025 Газета Время - Самара
 
По теме