LLM

Эксперимент: 11 LLM провалили рефакторинг реального кода, их оценки противоречивы

Сравнительный тест 11 крупных языковых моделей, включая американские и китайские, показал их неспособность идеально реорганизовать сложный "божественный узел" из реального кода LangGraph агента. Взаимные оценки моделей оказались непоследовательными, что ставит под вопрос надежность автоматизации такой задачи.

Иллюстрация к новости: Эксперимент: 11 LLM провалили рефакторинг реального кода, их оценки противоречивы

Эксперимент на Habr проверил, могут ли языковые модели реорганизовать реальный сложный код. В качестве теста взяли так называемый "божественный узел" (god node) из проекта на LangGraph - монолитную конструкцию, которую нужно было разбить для лучшей читаемости и поддержки.

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

Затем устроили второй этап - взаимную оценку. Моделям показывали решения других и просили их раскритиковать. Результаты оказались показательными. Оценки противоречили друг другу: решение, которое одна модель хвалила, другая называла ошибочным. Эта несогласованность подчеркивает субъективность суждений ИИ даже при анализе одного и того же кода. Это создает проблему для автоматизации код-ревью или выбора лучшего варианта без человека.

Автор статьи попытался разобраться в этих оценках. Четкого лидера выявить не удалось. Некоторые модели давали технически обоснованные комментарии, другие - поверхностные замечания. Качество ответа зависело не только от возможностей модели, но и от точности формулировки запроса и предоставленного контекста. Использование ИИ для таких задач требует от разработчика умения правильно ставить задачу, а также интерпретировать и перепроверять результаты.

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

Вопросы читателей по теме

Все вопросы

Как переводить тексты с помощью нейросети?

спрашивает Павел, Казань 119 просм.

Марина Соколова: Для перевода текста нейросети действительно дают более естественный результат, чем классический машинный перевод, потому что учитывают контекст всего предложения, а не переводят слово за словом. Из специализированных сервисов лучше всего с этим справляется DeepL - для европейских языков он заметно точнее старого Google Translate, особенно с идиомами и порядком слов. Если нужно перевести не разовую…

Как правильно писать промпты для нейросети?

спрашивает Станислав, Омск 145 просм.

Сергей Орлов: Схема есть, и она простая: роль, контекст, задача, формат. Модель не читает мысли, она отвечает ровно на тот запрос, который вы напечатали, поэтому чем конкретнее формулировка, тем предсказуемее результат. Роль - это кем модель должна "быть" для конкретной задачи: не "напиши текст", а "ты юрист, который проверяет договор аренды". Контекст - вводные, которые модель иначе…

Что такое ChatGPT?

спрашивает Ольга, Краснодар 165 просм.

Дмитрий Волков: ChatGPT - это чат-программа компании OpenAI, которая умеет вести диалог на естественном языке: отвечать на вопросы, писать тексты, объяснять темы, помогать с расчетами и кодом. Работает через сайт или мобильное приложение, доступ бесплатный на базовом уровне. Внутри у него языковая модель GPT - программа, обученная на огромном объеме текстов из интернета, книг и статей. Она…

Как выглядит ChatGPT?

спрашивает Павел, Тюмень 128 просм.

Марина Соколова: Внешне ChatGPT устроен проще, чем кажется: это диалоговое окно, а не программа с панелями инструментов вроде Word или Photoshop. Слева расположена узкая колонка с историей переписок - там хранятся все прошлые чаты, каждый можно переименовать или удалить. Сверху есть кнопка "новый чат" и переключатель модели: обычно указано название вроде GPT-4o или GPT-5, в платной версии…