26 августа 2026 г.

Почему один и тот же ИИ в разных программах работает по-разному

Андрей Присекин
Автор

Андрей Присекин

Создаю AI-агентов, автоматизирую бизнес-процессы

Один и тот же ИИ в чат-окне и в Claude Code ведёт себя по-разному не потому, что внутри разные модели, а из-за обвязки вокруг модели - её называют harness. Голая модель не откроет файл, не запустит код, не полезет в интернет. Всё это ей даёт обвязка: инструменты, память и цикл действий. Большая часть прогресса ИИ-агентов за последние два года - её заслуга, а не самих моделей.

Звучит странно, потому что мы привыкли думать в логике «какая модель самая умная». Но если ты вставишь один и тот же ключ модели в чат и в редактор кода, а результат окажется как от двух разных ИИ, значит, дело не в мозгах. Разберём по-человечески: что такое обвязка, из чего она собрана и почему именно она чаще всего решает, потянет агент твою задачу или встанет.

Модель сама по себе - это мозг в банке

Когда мы говорим «модель» - Claude, ChatGPT, Gemini, - мы имеем в виду саму нейросеть. Она умеет одно: получить текст на вход и выдать текст на выход. Всё. Она не может сама открыть файл на твоём компьютере, выполнить команду в терминале, зайти на сайт или нажать кнопку в программе.

Хорошая метафора - мозг в банке. Он умный, он способный, но он заперт. Чтобы мозг что-то сделал в реальном мире, ему нужны руки, глаза и память о том, что он уже сделал минуту назад. Ничего этого у голой модели нет. Всё это ей приделывают снаружи.

Вот эта «пристройка» снаружи и есть harness - обвязка. Anthropic описывает её прямо: это программный слой вокруг модели, который даёт ей цикл работы, инструменты, управление контекстом и ограничители. Он превращает сырой интеллект в работающего агента. IBM формулирует ещё жёстче: модель важна, но обвязка часто важнее.

Обвязка состоит из трёх частей

Если заглянуть внутрь любого агента - что Claude Code, что Cursor, что Codex, - там одна и та же тройка. Инструменты, память и цикл. Дальше по каждой отдельно, потому что именно в деталях этой тройки один агент оказывается лучше другого на той же модели.

Держи в голове главное: модель во всех этих продуктах может быть буквально одна и та же. Разница - в том, как собрана обвязка вокруг неё.

Инструменты: чем модель дотягивается до мира

Инструмент - это способ для модели сделать что-то за пределами текста. Прочитать файл, записать файл, запустить команду в терминале, поискать в интернете. Обвязка даёт модели список доступных инструментов и исполняет их вызовы.

Показательный факт от Anthropic: ещё в 2024 году Claude набирал под половину очков на инженерном бенчмарке SWE-bench, имея всего два инструмента - терминал и текстовый редактор файлов. Claude Code вырос ровно из этой пары. То есть даже минимальный набор рук резко меняет то, на что способна модель.

Отдельная история - computer use. Осенью 2024 Anthropic открыла модели возможность пользоваться компьютером как человек: смотреть на экран, водить курсором, кликать и печатать. Это тоже инструмент обвязки, просто более мощный - через него модель управляет любой программой, а не только файлами.

А чтобы каждый разработчик не изобретал коннекторы к своим базам и приложениям заново, Anthropic в конце 2024 выпустила открытый стандарт MCP - Model Context Protocol. Я про него уже писал отдельно: пишешь инструмент один раз под протокол, и он втыкается в любую совместимую обвязку без переделки.

Память: почему агент забывает и как это лечат

У модели есть контекстное окно - её рабочая память на текущую сессию. У Claude это порядка 200 тысяч токенов. Проблема в том, что окно конечно, а в конце сессии оно стирается начисто. Закрыл - и модель не помнит ничего из того, что вы только что вместе делали.

Обвязка достраивает память несколькими способами. Первый - файлы с инструкциями. В Claude Code это CLAUDE.md в корне проекта: он подгружается в начало каждой сессии ещё до твоего первого сообщения и работает как постоянная памятка про соглашения проекта. У Cursor свой .cursorrules, есть и кросс-инструментальный стандарт AGENTS.md. Модель из коробки не знает твой репозиторий - эти файлы и есть то, чем обвязка держит консистентность.

Второй способ - компакция. Когда окно подходит к пределу, обвязка сама сжимает историю в конспект: цели, принятые решения, затронутые файлы, текущее состояние. Полную переписку она заменяет этим саммари и работает дальше. Тут есть цена: точные детали вроде имён переменных и дословных ошибок при сжатии теряются.

Третий способ - поиск по проекту. Вместо того чтобы впихивать весь код в окно, обвязка даёт модели искать нужные куски. Тут любопытный поворот: по данным инженерных блогов, в 2025 году Anthropic убрала из Claude Code «умный» векторный поиск и оставила обычный grep - тупой текстовый поиск в цикле. На постоянно меняющемся коде живой grep оказался надёжнее замороженного индекса. Cursor пошёл гибридом: grep для точных символов плюс семантика для запросов по смыслу.

Цикл агента: план, действие, проверка

Третья часть - это петля, в которой модель и обвязка работают вместе ради цели. Модель решает, какой сделать шаг. Обвязка исполняет этот шаг как реальное действие. Появляется результат, модель его смотрит - и петля повторяется. Иногда пару секунд, иногда часами.

Агентный цикл: модель планирует шаг, обвязка его выполняет, модель смотрит результат и проверяет себя - и по кругу

Идея не новая. В основе лежит паттерн ReAct из научной работы 2022 года: модель чередует «рассуждение» и «действие» в одном цикле вместо того, чтобы выдать ответ одним куском. Формулировка «план - действие - наблюдение» - это уже отраслевое развитие той же мысли.

Что добавили современные обвязки - это проверку прямо внутри петли. Агент прогоняет тесты по ходу, делает скриншоты того, что собрал, а иногда поднимает отдельную модель-рецензента, которая оценивает его же работу перед следующим шагом. IBM прямо включает шаг верификации в состав обвязки. Модель, которая перепроверяет себя, идёт дольше и реже сходит с рельсов.

Одна модель, разный результат

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

Была модель в чат-окне - стала та же модель в Claude Code: тот же ключ, радикально разные возможности

Инженеры называют это «эффектом обвязки»: одна и та же модель в разных инструментах набирает заметно разный балл на одних и тех же задачах. Разрыв бывает в полтора десятка пунктов между двумя редакторами на одинаковой модели. Я про этот же механизм писал в разборе, почему высокий балл в бенчмарке не равен навыку писать код: там обвязка двигала результат теста на десятки пунктов при неизменной модели.

Поэтому вопрос «какая модель лучше» без второй половины бессмысленный. Правильный вопрос - «какая модель в какой обвязке». Модель может блистать в одном агенте и застревать в другом.

Граница между моделью и обвязкой плывёт

Интересное происходит на стыке. То, что раньше жило в обвязке, постепенно вшивают в саму модель. Anthropic приводит живой пример: в Claude Code был костыль со сбросами контекста, чтобы модель не «нервничала» под конец окна. В следующей версии модель научилась держать себя в руках сама, и костыль из обвязки просто выкинули за ненадобностью.

Работает и обратно. Консистентность на длинной задаче раньше считалась поведением модели, а теперь её всё сильнее задают конвенции обвязки и те самые файлы проекта. Планирование и самопроверку, наоборот, всё больше тренируют прямо в модели. Граница подвижная, и это нормально: обвязка отдаёт модели то, что та освоила, и берёт на себя новое.

Из-за этого «агент» - это всегда пара. Модель плюс обвязка. Когда собираешь своего агента, ты по сути и есть тот, кто проектирует эту обвязку под свою задачу.

Что это значит для тебя

Первое. Перестань выбирать ИИ только по названию модели. Если один продукт делает работу, а другой на «той же самой» модели буксует - почти наверняка дело в обвязке, а не в том, что модель поглупела.

Второе. Если сравниваешь инструменты честно - меняй что-то одно. Хочешь сравнить модели - гоняй их в одной обвязке. Хочешь сравнить обвязки - держи одну модель. Иначе намеряешь кашу и сделаешь неверный вывод.

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

← Все статьи