kosareva.cloud
kosareva.cloud/ news/ skill-state-kak-agentu-rabotat-dolgo-i-ne-perechityvat-vsyu-istoriyu-na-kazhdom-
AI API · · ·8 мин

SKILL.state: как агенту работать долго и не перечитывать всю историю на каждом шаге

SKILL.state: как агенту работать долго и не перечитывать всю историю на каждом шаге

Кратко. Исследователи Google и Университета Пердью предложили хранить ход работы ИИ-агента в обновляемом структурированном состоянии вместо растущего чата. В складской симуляции на 200 шагов такой агент потратил 122 384 токена против 6 175 509 у варианта с памятью-сводкой — примерно в 50 раз меньше. Это результат конкретного сравнения в эксперименте, а не обещанная экономия для любого агента.

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

Что такое SKILL.state

SKILL.state — предложенная в исследовательской работе архитектура исполнения навыка агента: вместо полной истории модель на каждом шаге получает постоянную инструкцию, текущее структурированное состояние задачи и последнее наблюдение от инструмента. Модель предлагает следующее действие и изменение состояния; программа проверяет изменение и сохраняет его. Промежуточные рассуждения в следующий запрос не передаются.

Здесь «навык» — инструкция для повторяемой процедуры, а «состояние» — данные, без которых нельзя выбрать следующий шаг. Это не новая модель и не настройка её контекстного окна. Меняется программа, которая вызывает модель и собирает запросы.

Допустим, агент проверяет заявки на возврат. В состоянии могут лежать номер заявки, найденный заказ, результат проверки условий и статус подтверждения оператором. Ответ инструмента «заказ найден, оплата подтверждена» обновит соответствующие поля. В следующем запросе модели уже не понадобится вся переписка о поиске заказа. Это пример проектирования, а не проверенный нами сценарий из работы исследователей.

Чем это отличается от обычной памяти агента

Подход Что передают модели на следующем шаге Что может пойти не так
Полная история Инструкция и накапливающиеся действия, ответы инструментов и рассуждения Контекст растёт; старый ответ может противоречить новому
Сводка и последние сообщения Инструкция, пересказ прошлого и короткий хвост диалога В пересказе можно потерять важный идентификатор; сводка тоже расходует токены
SKILL.state Инструкция, актуальные поля состояния и последнее наблюдение Нужно заранее продумать поля и правильно обновлять их

Исследователи сравнивали и вариант, в котором структурированное состояние добавляли к истории диалога. Само наличие JSON рядом с длинной перепиской не даёт той же экономии: принцип SKILL.state в том, что прошлые шаги больше не отправляются модели.

Что на самом деле показали тесты

Самая заметная цифра взята из симуляции управления складом с Gemini 3 Flash. На горизонте 200 шагов вариант с памятью-сводкой израсходовал в среднем 6 175 509 токенов и получил оценку 0,84; SKILL.state — 122 384 токена и 0,94. Оценка здесь означает долю корректных действий в симуляции, а не долю полностью решённых пользовательских задач. Результаты приведены как среднее по пяти запускам с разными исходными условиями.

Если сравнить SKILL.state с агентом, который хранит полную историю, на тех же 200 шагах получится 122 384 против 2 608 755 токенов: экономия тоже велика, но это уже около 21 раза, а не 50. На 100 шагах авторы отдельно выделяют сравнение с вариантом, который держит и состояние, и историю: 65 408 против 1 062 387 токенов, примерно в 16 раз меньше. Поэтому число «в 50 раз» нельзя переносить на любую модель и задачу.

Есть и более близкие к работе агента публичные тесты. В InterCode CTF исследователи получили 387 тысяч токенов у SKILL.state против 977 тысяч у агента с полной историей; доля решённых задач составила 54,2% против 43,2%. В тесте обслуживания клиентов τ-Bench Airline расход составил 2,88 млн против 4,85 млн токенов, а доля успешных сценариев — 32,4% против 21,8%. Выигрыш в этих условиях заметен, но меньше «пятидесятикратного».

Меньше токенов само по себе не объясняет качество. При примерно одинаковом бюджете в складском тесте на 100 шагов простая обрезка истории получила оценку 0,18, короткая сводка — 0,52, а SKILL.state — 0,94. Важные сведения должны пережить обрезку; хранить их в явных полях оказалось полезнее, чем просто сокращать текст.

Как попробовать подход в своём агенте

Начните с одной повторяемой процедуры, для которой понятны этапы и нужные данные. Для обработки обращения это могут быть ticket_id, customer_id, verified_facts, pending_action и operator_approval. Названия условные: схема зависит от вашей задачи.

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

Для действий с деньгами, доступами и пользовательскими данными одной схемы мало. Сохраняйте независимый журнал событий вне промпта для аудита и отладки; подтверждение оператора тоже должно проверяться вашим приложением. SKILL.state сокращает то, что отправляют модели, но не отменяет проверки прав и хранения истории там, где она нужна бизнесу.

Если агент использует модели через API kosareva.cloud, менять нужно прежде всего свой цикл вызовов: хранение состояния, состав запроса и проверку патча. Подключение модели через API само по себе не включает SKILL.state. Расход следует замерять на собственной процедуре с одинаковыми задачами, выбранной моделью и качеством результата — сравнение из статьи не заменит такой тест.

Где метод может не подойти

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

Метод также не заменяет журнал, когда нужно объяснить последовательность действий или восстановить источник ошибки. В исследовании рассматривали одного агента; одновременную запись нескольких агентов в общее состояние не проверяли. В отдельных тестах структурированный подход тоже уступал: в симуляции репозитория на 25 шагах оценка SKILL.state составила 0,88 против 0,94 у варианта с состоянием и историей. Для одной из открытых моделей на 100 шагах складского теста SKILL.state лишь сравнялся с этим вариантом по оценке 0,42. Значит, качество патчей нужно проверять на выбранной модели, а не предполагать заранее.

Частые вопросы

SKILL.state — отдельная нейросеть?

Нет. Это способ организовать работу агента вокруг структурированного состояния. Модель выбирают отдельно, а хранение состояния и проверку его изменений реализуют в программе агента.

Правда ли любой агент станет тратить в 50 раз меньше токенов?

Нет. Число получено на складской симуляции из 200 шагов при сравнении с конкретным агентом, который хранил сводку истории. На других тестах и с другими вариантами памяти экономия была иной.

Можно ли просто сократить историю до нескольких последних сообщений?

Можно, но так легко потерять ранние факты. В контрольном тесте авторов обрезка истории с близким бюджетом получила оценку 0,18 против 0,94 у SKILL.state.

Нужно ли удалять историю действий из базы данных?

Нет. Исследование говорит об истории в запросе к модели. Отдельный журнал событий может оставаться необходимым для аудита, расследования ошибок и восстановления действий.

Можно ли использовать этот подход через kosareva.cloud?

Да, как собственную архитектуру приложения, которое вызывает модели через API. Приложение само хранит состояние, передаёт модели актуальные поля и проверяет патчи; это не переключатель в API.

Вывод

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

Источники

/ Попробовать

Заведите аккаунт за минуту

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

Дальше — ФИО и телефон в кабинете. Нажимая «Продолжить», вы соглашаетесь с офертой и политикой конфиденциальности.

или быстрый вход
Для бизнеса

Подключите бизнес ко всем нейросетям

Один договор с закрывающими документами, выделенный менеджер, ЭДО через Контур.Диадок или СБИС и специальные цены при больших объёмах. Оставьте контакты — пришлём проект договора и тестовый ключ.

  • ✓Персональный менеджер с реакцией до 15 минут в рабочее время
  • ✓Кастомный SLA с финансовыми санкциями за нарушение uptime
  • ✓ЭДО через Контур.Диадок / СБИС
  • ✓Постоплата по факту, акты раз в квартал
  • ✓Защищённый канал + IP-белый список + аудит-логи
  • ✓SSO через SAML / OIDC для корпоративных аккаунтов

Ответим за 4 рабочих часа проектом договора в PDF.
Не передаём данные третьим лицам и не звоним без вашей просьбы.

Отправляя заявку, вы соглашаетесь с политикой обработки персональных данных.