Разработчик попытался внедрить ИИ-ассистента в рабочий процесс - и получил не помощника, а источник головной боли. Задача на 20 минут превратилась в двухчасовой марафон с галлюцинациями и лишними артефактами. Но вместо того чтобы сдаться, он докопался до корня проблемы - и выводы оказались неожиданными.
Иллюзия диалога, которой не существует
Большинство пользователей воспринимают чат с языковой моделью как живой разговор. Это ловушка. Каждое новое сообщение - это не продолжение беседы, а полностью новый запрос, в который механически упакована вся предыдущая переписка. Модель ничего не «помнит». Она обрабатывает один гигантский текст заново.
В случае с CLI-агентом на базе Qwen Code картина ещё тяжелее. Только основной системный промпт инструмента занимает около 5000 токенов, а вместе со всеми встроенными инструментами - уже порядка 20 тысяч. Добавь сюда пользовательские инструкции, прочитанные агентом файлы, историю сообщений - и контекст разбухает до размеров, при которых модель начинает путаться в собственных приоритетах.
Феномен, который Stanford не смог победить
Исследователи из Стэнфорда зафиксировали эффект, получивший название lost-in-the-middle: модели распределяют внимание по U-образной кривой. Начало и конец контекста получают максимальный «фокус», середина - на 30-40% меньше. Итог: снижение качества ответа на 10-20%.
Попытки калибровать механизм распределения внимания дали прирост в 6-15%, но форму кривой не выпрямили. Чем длиннее контекст - тем острее проблема. А контекст у современных агентов длиннее, чем кажется.
Поверх этого накладывается ещё один эффект - контекстные помехи. Системный промпт Qwen Code упоминает десятки технологий: гейм-дев, бэкенд, фронтенд, разные языки и пакетные менеджеры. Всё это «активирует» нерелевантные кластеры знаний модели - и она начинает мешать синтаксис языков, придумывать несуществующие библиотеки, игнорировать инструкции. По данным исследователей из KAIST AI и LG AI Research, контекстные помехи способны обрушить точность ответов до 80% даже у топовых моделей.
Few-shot промптинг: популярный совет, который не работает
Разработчик честно прошёл по всем рекомендациям: QWEN.md, rules, skills, agents. Особое внимание уделил примерам в промптах - так советует большинство гайдов. Результат не изменился.
И это объяснимо. Исследователи из Вашингтонского университета и Allen Institute for AI проверили, что происходит, если заменить правильные ответы в few-shot примерах на случайные. Качество почти не упало. Вывод жёсткий: примеры не обучают модель - они лишь активируют уже заложенные навыки и подсказывают формат ответа. Перебить то, что усвоено на претрейнинге, одним-двумя примерами в промпте невозможно.
- Системный промпт Qwen Code - около 25 тысяч символов, порядка 20 тысяч токенов со всеми инструментами
- Lost-in-the-middle снижает качество ответа на 10-20% при длинном контексте
- Контекстные помехи могут обвалить точность на 80% даже у современных моделей
- Few-shot примеры задают формат, но не исправляют ошибочные убеждения модели
Что это значит на практике
Галлюцинации ИИ-агента - не баг и не признак «тупой» модели. Это математически предсказуемый результат: раздутый контекст, конфликт инструкций, разбросанных по кодовой базе, и нерелевантные термины, которые уводят внимание модели в сторону.
Вывод простой и неудобный одновременно: эффективно пользоваться инструментом без понимания его устройства не получится. Никакие best-practices с просторов интернета не заменят понимания того, что именно попадает в контекст модели и в каком порядке. Пока разработчики этого не учитывают - ИИ-помощник будет оставаться скорее источником фрустрации, чем реальным ускорителем работы.