Разработка ИИ-агентов для написания кода сталкивается с практическими ограничениями современных локальных моделей. В попытке создать автономного помощника на базе LangGraph разработчики приходят к выводу, что небольшим моделям пока не хватает стабильности для самостоятельного выполнения сложных многошаговых задач.
Изначальная идея заключалась в создании полностью автономного агента, который сам составляет план, пишет код, сохраняет файлы и проверяет результат работы с помощью инструментов MCP (Model Context Protocol). Однако на практике использование моделей с 10-35 миллиардами параметров выявило серьезные проблемы: генерация невалидного JSON при вызове инструментов, быстрая потеря контекста и уход в бесконечные циклы.
При тестировании выяснилось, что попытка программно исправить ошибку модели (например, указать ей на неверный формат вызова инструмента) часто приводит к неадекватному поведению. Агент начинает бесконечно генерировать один и тот же запрос, пока не исчерпает лимит токенов. Даже смена моделей на современные квантованные версии Qwen (до 35 миллиардов параметров) и переход на инфраструктуру vLLM не решили фундаментальную проблему: простейшие задания, разбитые на несколько шагов, заставляли модель путаться в собственном плане действий.
Решением стал отказ от полной автономности в пользу архитектуры Human-in-the-Loop (человек в цикле). В обновленной системе агент использует узел-планировщик (PlanerNode) и парсер структурированного вывода (PydanticOutputParser) для создания четкого списка задач. Однако выполнение каждого шага теперь требует подтверждения или корректировки от пользователя. Состояние агента (AgentState) было расширено: в него добавили отслеживание текущего шага, фазы работы и, что критически важно, счетчик неудачных попыток для защиты от зацикливания.
Этот кейс наглядно демонстрирует текущий разрыв между теоретическими концепциями автономных агентов и реальностью локальных развертываний. В то время как проприетарные большие языковые модели (LLM) могут удерживать контекст длинных цепочек рассуждений, локальные модели часто теряют фокус. Внедрение человека-оператора на каждом этапе резко повышает надежность системы, превращая нестабильный алгоритм в полезный рабочий инструмент.
По мере развития методов сжатия и архитектур локальных моделей мы, вероятно, увидим постепенный возврат к полной автономности. Однако в ближайшем будущем подход с обязательным участием человека останется золотым стандартом для создания надежных ИИ-помощников на потребительском оборудовании.