Эксперимент: 11 LLM провалили рефакторинг реального кода, их оценки противоречивы
Сравнительный тест 11 крупных языковых моделей, включая американские и китайские, показал их неспособность идеально реорганизовать сложный "божественный узел" из реального кода LangGraph агента. Взаимные оценки моделей оказались непоследовательными, что ставит под вопрос надежность автоматизации такой задачи.
Эксперимент на Habr проверил, могут ли языковые модели реорганизовать реальный сложный код. В качестве теста взяли так называемый «божественный узел» (god node) из проекта на LangGraph — монолитную конструкцию, которую нужно было разбить для лучшей читаемости и поддержки.
Задачу предложили крупным моделям: пяти американским и шести китайским. Ни одна не выдала безупречного решения. Все варианты рефакторинга содержали недостатки: логические ошибки, потерю исходной функциональности или неоптимальную архитектуру.
Затем устроили второй этап — взаимную оценку. Моделям показывали решения других и просили их раскритиковать. Результаты оказались показательными. Оценки противоречили друг другу: решение, которое одна модель хвалила, другая называла ошибочным. Эта несогласованность подчеркивает субъективность суждений ИИ даже при анализе одного и того же кода. Это создает проблему для автоматизации код-ревью или выбора лучшего варианта без человека.
Автор статьи попытался разобраться в этих оценках. Четкого лидера выявить не удалось. Некоторые модели давали технически обоснованные комментарии, другие — поверхностные замечания. Качество ответа зависело не только от возможностей модели, но и от точности формулировки запроса и предоставленного контекста. Использование ИИ для таких задач требует от разработчика умения правильно ставить задачу, а также интерпретировать и перепроверять результаты.
Эксперимент показывает, что текущие языковые модели — это мощные, но несовершенные инструменты-ассистенты. Они могут предложить варианты или указать на возможные проблемы, но финальное решение, оценку качества и ответственность за внедрение несет человек. Автоматизация рефакторинга сложной бизнес-логики остается трудной задачей. Сравнение моделей должно включать не только генерацию кода, но и проверку способностей к критическому анализу, работе с унаследованным кодом и выдаче последовательных рекомендаций. Пользователям стоит рассматривать предложения ИИ как отправную точку для размышления, а не как готовую истину, и всегда тщательно тестировать измененный код.


