Як перажыць сцісканне: лесвіца для доўгіх сесій агента
Як доўгія сесіі агента застаюцца даступнымі па кошце і звязнымі: хвост кэша як арэнда, пяць прыступак да сціскання, дэлегаванне як мяжа памяці і кошт аднаўлення.
Альпіністы не несу всю апаратуру на гору; яна застаецца там. Дзягучы паход дзеліцца на станцыі, кожная з якіх заправляецца тым, што неабходна для наступнага етапу. Усё, што не патрэбна, застаецца ніжэй, і ўвесь час можа быць выкарыстоўвана, калі група будзе мусіць вярнуцца, але ніколі не несацца вышэй. Тое, што дасягае вершыны, — гэта тое, што перазстало пасля рашэння кожной станцыі пра тое, што залішыць.
Вікна кантэксту паводзіцца так сама. Ёго ўместнасць фіксаваная, а маршрут — ні, і раней чым пазней трэба ўсё-такі ўсё, што не патрэбна, залішыць.
Зберагчыкаванне запытоў вялікі ўжо дало аднаковае правіла для прыстроёў агента: ніколі не ануляваць кэш. Зберагчыць стабільную частку і перадаваць змяны толькі напрыканце. Аднак гэта правіла ставіцца да сесіі як да статычнага фота, хоця сесіі маюць часовую высоту. Кожная сесія старэе. Размова расце, пакуль вікно не запоўніцца і не будзе павінна быць складзена.
Складванне зменшыць вікно; гэта ўжо механічны працэс. Цена ў такім случае не така відразу зрозумелая, адколькі складванне вымушвае кэш стаць недзейным. За гэта плацяцца раз, а тое, што застаецца, перапісуецца, і сесія продовжваецца. Усё-такі недзейнасць кэша — гэта дадзейны прыемлівы эфект. Справжняя проблема — выбор таго, што застосуецца далей. Хорашая компактнасць — гэта не проста выдаленне: гэта сконцентраванне історыі ў такой форме, якая дазволяе агенту продаваць працу. А длігая сесія складваецца не проста раз. Яна складваецца, працюе, знову складваецца, і раней чым пазней знову складваецца ўнутрь сябе.
Гэта перакантроввае пытанне планавання. Запытанне пра тое, калі выконваць складзенне, мае меншое значэнне, чым запытанне пра тое, што застаецца пасля паўтаральных раундаў складзення і што было втрачана да таго часу. Час — гэта пытанне костоў, таму што за кожную недзейснаець вырачваецца плата. Якасць складзення — гэта пытанне ідэнтычнасці, таму што яна вялічыць, чы рэжым пасля таго застаецца тым самым, які і пачынаўся. З гэтых двух прычын складзенне павінна стаць прыорытэтам, а не апошнім пунктам у лестніцы прыорытэтаў.
Дзе накапліваецца рахунак
Кожны запыткі дзеліцца на два раёны вырачэння. Адным ёсцца прыфікс, які застаецца з раунда ў раунд. Іншым ёсцца хвост, які продовжвае растаць.
У прыфіксе знаходзяцца прапанні сістэмы, апісанні інструментаў, кантэкст стабільнага хранілішча і файлы правілаў. Ён запісваецца адной раз, кэшуецца, а пазней чытаецца знову за малую частку первачальнай цены. Яго размах застаецца тым самым.
Заўсёды застаецца толькі хвост: дыялог, вызовы інструментаў, ўсунутыя іх рэзультаты, блакі з мыслямі і разлікі. Ён толькі расшырваецца.
Аднак сама расшырэння не ёсць проблемай. Проблемай ёсць паўтаральнае зараджанне. Новая паведамленне не праграмаецца сама. Сістэма перасылае адпаведны прыметнік, платае за яго збераганы тарыф за чытанне і доплатае за запіс новага матэрыялу, і весь хвост перавозіцца праз кожнае з гэтых чытанняў. Такім чынам, 150 000 токенаў хвоста — гэта не нерухомы баланс, які застаецца ў вікні; за яго знову ставіцца плата ў кожны раз, незалежна ад таго, чыяму модэлю ён патрэбен для наступнага запітання. Старая історыя фактычна здаецца на весь час сесіі.
У вікні на 200 000 токенаў вялікая частка прастору ужо зайнята. Залежна ад сістэмы і іншых фактараў, колькісць прастору, якая насправды ўвесь час ў наявнасці, можа зменшыцца да прыблізна 7 500–15 000 токенаў.
Кэшы таксама выгораюць. Актывацыя падтрымлівае тымчасовы перыод іх існавання, тое значыць, пауза можа прымусіць наступны запіс стаць «холадным» запісам. Час, які людзі прасціваюць, — гэта скрытыя вітраты кэша, пра якія ніхто не адказвае.
Якшча дывіцца так, то складзенне непатрэбных дадзеных таксама ёсць операцыяй над кэшам. Одноразовыя вітраты на анулювання заменяюцься заканчэннем платы за ўтрыманне кэша. Гэта вся справа, і існуюць дышэўшыя спосабы дзеяння прыемнае яго застосавання.
Лесць з пяці крокаў
Існуе пяць спосабоў проты росту непатрэбных дадзеных. Ооні ўсё менш яўляюцься альтэрнатывамі, чым сходнік: чым вышэй падымаешся, тым больш існуючай історыі паўстанае пахісленне.
Першы пункт: ніколі не ствараць такі тэксты. Абмежыце выходны тэкст за дапамою інструмента. Інструмент для рэдагавання тэкста ад Anthropic падтрымляе параметр max_characters, а ў ўсімі пошуковых функцыях — параметр max_uses. Codex за замовчаннем абмежвае выходны тэкст кожнага інструмента прыблізна на 10 000–16 000 токенав, прычыму яны ўжо не беруцца ў расчыткі стыснення. Аднойчы строгейшы спосаб — выкарыстоўванне функцыі вырывкі: залішаюцца пачатак і канец, а серэдзіна выкарыстоўваецца нешта, на падставе гэтага, што тое, як запускаецца команда і дзе яна завершаецца, мае большое значэнне, чым тэкст, які з’яўляецца між німі. Недзела гэтага падходу — адсечка тэксту раней, чым стане вядома, што ёсць важлівым, а абсэнцыя відпаведнага фрагмента ў лог-даных горшы, чым ўзагалі ўжо няма такіх даных.
Другі ўровень: выклікайце даны. Калі не патрэбны всі спостэрэнні, не трэба іх зберагаць. Калі рэзультат інструмента перасілае практычны ліміт, сістэма запісвае яго на дыск і залічвае кансэлькцыю. Полны артыфакт застаецца, тады калі жывы кантэкст — ні. Гэта разлічаецца ад обрывкавання, таму што нічога не выкідаецца. Журнал будовы з 500 тысячаў ліній можа застацца на дыску, тады калі кантэкст мае толькі яго шлях, метаданы або індэкс для пошуку, а пазней інструмент для пошуку або чытання выкарыстоўвае толькі неабходны фрагмент. Зберагаюце артыфакт, а спостэрэнні — адмаўляйце. Так чыста аддзеляецца зберагачча ад кантэкста, таму інфармацыя застаецца стойкай, не ствараючы дапэўнага навантажэння праз празьнейшыя крокі.
Справа ў тым, што прыстрой для зберагачвання павінен забезпечыць можлівасць знайсці гэты контэнт знову. Зберагачванне матыяў мае сэнс толькі тады, калі агент можа шукаць тое, што было захавана, чытаць гэты матыял і разумець яго значэнне; без гэтага пераплыв кантэксту ператвараецца на файлавую сістэму з недоступнымі матыяламі.
Збліжэнне падходаў разных прыстроёў для зберагачвання ўражаючае. Claude Code запісвае любы рэзультат працы інструмента, які перавышае розмер апошніх 100 каляў, на дыск і вяртае прадзірнік і шлях да гэтага рэзультата, а Hermes таксама прыменяе цяжыню 100 каляў для кожнага рэзультата. Оба прыстройства ствараюць аднаковыя аўтаматызаваныя правілы для інструментаў чытання, таму што чытанне, якое прыводзіць да зберагачвання, дае шлях, які агент чытае толькі знову; чытанне, якое прыводзіць да зберагачвання на шлях, які ужо чытаны, знову прыводзіць да зберагачвання, і так без канца. Такія ціклы лёгка ўвайсці. Ядзін інструмент, чыя мэта — вярнуць контэнт, — гэты, які ніколі не павінен здзейсніваць зберагачвання.
Трэці ўзлёт: не прабачаць нічога знекальванага. Аддаюце заданне падрабочам агенту. Ужо будучы апранутым у стандартныя інструменты, ён можа чытаць файлы, пераглядаць лог-файлы і аналізаваць базу дадзэння, збіраючы вялікі прыватны кантэкст, пры чым нічога з гэтага не потрапляе ў логіяры родныя агента. Калі заданне завершана, яго тэрмін дзеяння абрыгуецца, і перадаецца толькі значэнне, якое ён вярнуў. Вэндоры Harness зробілі гэтыя функцыяны аднымі з найбольш популярных у цім годзе.
Існуее меры, таму што адкрыцце новага ўсё рошчэй, чым змены. Рабочы, які чытае некалькі файлоў, проста вымушвае паўтарыць аперацыю. Рабочы, які правяць некалькі файлоў, залічае шкоду пасля таго, як яго задача завершылася, таму важліва, якому модэлю даваць права на змены. Старыя арміі ілуструюць гэта: разведчыкі былі шырокі, заменныя людзі, яых падсылалі наперад, таму што адследжванне коштае мало, а атрыбуты можна пераканаць, тады як справжнія рашучыя дзеянні даваліся найлепшым камандырам, таму што іх нельзя было вярнуць назад. Той самы падзел прыменяецца і тут. Даеце разведку дышэўскаму, недорогаму кантэксту, зберагаеце найсільнейшы модэль для крока, які змініць свет, і трыважыце галоўны элемент у перакананні. Галоўны элемент плаціць за адказ, а не за расследаванне.
Чэтырты ўзлёт: заменіце яго на паказвік. Калі контэнт ужэ зберагаецца на довгачасова, будзь то як файл, артыфакт, створаны справаздача чы рэзультат вычыслаў, для дыялогу патрэбна толькі асоціяцыя з яным. Перачытанне значыць вярнуцца туды, дзе знаходзіцца матэрыял, а не носіць яго з сабой. Адзін з інструментаў памяці Anthropic робіць самэ гэта, а OpenAI падтрымляе падобную дзеяльнасць за дапамой вызову функцый. Дорогі стан дыялогу стае дышэўскай асоціяцыяй з довгачасовым станом. Існуе адна застэрэжнае заўважэнне: заўтрэчкі будуць толькі тады, калі базовы контэнт застаецца за межамі вікна. Калі яго зноў прачытаюць, ён знову стае тэйлам і негаючы начыннае плаціць «арэндную плату» негаючы.
Пятыя ступень: адзін раз пасля зьнімаюць яе. Адчысціць, складзіць у компактны фармат або згорнуць. Толькі гэтая ступень панавае тое, што ужо знаходзіцца ў кэшы. Адзін раунд прыменяецца да замены накопічанай історыі на ўсё меншы об’ём дадзеных, з надзеяй, што наступны раунд зможа працаваць на адной з гэтых версій. Полны тэкст можа застацца на дыску, але жывы кантэкст будзе іншым.
З гэтага момента эканоміка ператвараецца на ставку. Чы рэнт, які быў заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заў
Найдэшавейшы кантэкст — гэта не скомпрэсаваны кантэкст. Гэта кантэкст, які ніколі не павінен быў існаваць.
Наборы інструментаў як ставка на тое, дзе плаціць
Места, дзе знаходзіцца адзінак інструмента, мае значэнне. Адзінакі знаходзяцца ў прыфіксе — гэта фіксаваная плата, якая запісваецца раз і зберагаецца. Рэзультаты знаходзяцца ў хвосце — гэта зменная плата, якая платыцца ўсё час. Таму выбір набора інструментаў — гэта ставка на тое, якая зона павінна практычваць вартасць інфармацыі. Мало інструментаў значыць маленькі прыфікс, але больш первісных спазыраў у хвосце; многа інструментаў значыць дадатковыя токены прыфікса, якія вітрачаюцца, каб атрымаць меньшыя, болей структураваныя спазыры.
Terminus 2 — гэта крайняя форма лёгкасутоўства: адна тэрмінал-сістэма без додатковых элементаў, створаная на прымысле Unix, што адна загальная змена можа быць складаная без лімітаў. Codex часта атрымліваецца ў той жа групе, хоць гэта толькі часткова справядліва. Яго власны прыфікс зовсім не маленькі — у ям ўсёрэшце прысутная апошнія 20 інструментаў, набор для калькуляцый з удзелам калькулятораў і пара версій v1/v2. Ён утрымваецца ад занадто вялікага размеру за дапамогою відкладання: інструменты MCP і канектары індэксуюцца ў пошуковым машыні і запускаюцца толькі тады, калі гэта неабходна. Codex насправды ставіць свою акцэнт на мінімізацыю элементаў у канцы. apply_patch ілуструе гэта, адколькі короткі аналіз разніцы заменяе тыясячы токенав перапісанага файла, а ліміты на выход дажджэння кожнага інструмента не дазволяюць накаплівацца неапранутым дадзенням. Оба рэшэнцыяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяя
Claude Code і Hermes выдзеляюць большэйшы час на спецыялізаваныя інструменты, якія вяртаюць структураваныя даны заместо необработаных. Каталог Claude Code вырашае 40 едыніц, калі урахавіць LSP, рэжым планавання, worktrees і cron, а Hermes — апошнія 55 едыніц, якія падзелены на наборы інструментоў для тэрміналу, файлоў, памяці, навыкаў, дэлегавання і іншага. Тыповым прыкладам ёсць Grep, які вяртае толькі паспадобныя фрагменты, а не цэлы файл: такі падход дапамагае захаваць больш стабільную структуру, ўтрымваючыся ад тысяч фрагментаў неабходных для обработкі даных.
Таму парадаўжнае выраўнанне не стосуецца колькасці інструментаў. Йдзе пра тое, чы розтрачэнне дадатковых рэсурсаў на прыметнікы дастаткова зменшыць рост дадатковых частак тэксту, каб адкласіць ўзгортанне. Гэта той самы компрэс між аптымальнаю готавасцю і выкарыстоўваннем рэсурсаў толькі тады, калі гэта неабходна, але на вышэйшам рэвэле. Anthropic чыста адзначае гэта ў сваім механізме адкладанага завантажэння: адзначэнні інструментаў можна знаходзіць тады, калі яны неабходны, а не включаць іх у кожны запіт. Claude Code робіць гэта за дапамогою механізма ToolSearch, які залучае назвы інструментаў, якія завантажаюцца пазней, і не паказвае ўсіх ўсіх ўпорадакоўваючых параметраў, пакуль мадэль не запытае пра іх, сама актываючыся, калі адзначэнні інструментаў MCP заполняюць апошнія 10% вікна кантэксту. Нават архітэктура архіваў выбрана так, каб захаваць прыметнікы, адтолькі што абаронна сортаванне па абэцэды разлічае блокі адзначэнняў на байтах, таму яны можна зберагаць у кэшы. Прыметнікі спраектаваны так, каб заставацца актываўнымі, незалежна ад ўжоўвышэння ўжоўвышэння ўжоўвышэння.
Аксія застаўаецца корыстной, але змінюецца ў сваій ролі. Яна не выявляе, чы хацяць стварыць компактную версію. Яна выявляе, сколькі історыі спачатку накаплюецца. А гэтая історыя не ўніверсальная. Рэзультаты пошуку часта можна знову вырахаваць, а рашэнні — ні. Шлях да файлу можна восстановіць, а прычыну адхілення ад падходу — можа не буць. Чым дольшы час працюе сесія, тым дорожэ стае плутаць гэтыя два відзэны памяці.
Дэлегаванне як межа памяці
Дэлегаванне выдзеляецца як спосаб, які пазбавляецца історыі, не чынячы нічога з кэшу родніка, і гэта ценіцца больш, чым зніжка за выканання працы. Падагент мае свае сае вікно кантэксту. Яно можа стварыць вялічэзны «хвост», запаўніць вікно, стварыць внутршню компактную версію, а потым знікнуць, усё гэта без перапісвання жаднага слова з історыі родніка.
Адаптавацыя патрабуеяць змены ў адной з распалоўчых думак. Прывабліва ўява пра розгалужэнне на аднаковыя модэлі, калі дзеця інерытуе накопаны «хвост» абяцелі разам з яе «тэплым прыфіксам». Аднак большасць перакананых способаў адбывання гэтага не робяць гэтага. Claude Code, OpenCode, Codex і Hermes кожны стварае адзінэчны кантэкст працавальніка, а не копію всего «хвоста» абяцелі. Дзеякія з іх могу выкорыстоўваць іншы модэль: Codex выбірае модэль пад час стварэння, а Claude Code дазваляе кожнаму падагенту выбраць сонет, опус чы хайку. Гэта не ёсць універсальным рашэннем, а у Hermes’ delegate няма прымытнага спосабу змяніць модэль. Тое, што пераходзіць між разнымі рэшэннямі, — гэта адзінэчны кантэкст, а не выбор модэля.
Гэта указвае на ўсё большыя масштабы, чым проста роздзеленне задач. Хвост дзецяві можа быць адмованы: ён можа прачытаць чатырнацце файлаў, аналізаваць лог-файлы і стварыць правілы называння, а весь кантэкст знікае, калі вяртаецца абзац. Дэлегаванне выступае як межа памяці. Абяцель выдае задачу і адзначае, што ёй патрэбна, што фактычна ўзроўнавалася з падготавкай дадзеных загадзя, адтуды ўрабоцкі элемент знае, хто будзе чытаць яго рэзультат і якое рашэнне ён павінен падтрымаць. Калі падагент вяртаецца, абяцель зазвычай пераканальвае рэзультат. Такое дзеянне выкарыстоўвае калькі крокаў і ўсё ж ёсць розумным.
Кампактаванне адбываецца у зворачным напраменні, пасля таго, як праця завершылася. Яго трэба стварыць у вастрых формуліровках для чытальніка, якога яшчэ няма, ўбачаючы можлівыя пытанні, якія могу з’явіцца пазней. Компрэсія загадзя мае прыямую перавагу — ёсць вядомы чытальнік. Гэта дае прынцып бюджэтавання: трэба бюджэтаваць на тое, што вернёцца, а не на сам працэс. Рабочы можа выкорыстоўваць сотні тысяў токенав без таго, каб хоць адны з іх сталі часткай главнай памяці. Адзін вернуты тэкст стае часткай памяці. Чатырыста токенав адпаведзі ўлетаюць у «хвост» главнай памяці і оплачваюцца за кожны наступны крок, таму за довгі сеанс необработаны разлік можа коштаць больш, чым дорогі рабочы, які вяртае адну корыстную фразу. Аналіз ёсць врэменным, а адпаведзь — часткай історыі, і гэтая адпаведзь у свою чаргу должна перазстаць пасля працэсу складання.
Што надаюць платформы
Платформа модэлю вялічыню тых механізмаў, якія ўстройства павінны стварыць самыя, вызначае.
Anthropic праследуе два відэны дапамогі, спрамованыя на рашыненне разных проблем. Першы, clear_tool_uses_20250919, ўжоўсяць нейканалі. Калі запыт перасягне паказаны ліміт (за замовчаннем 100 тысяч токэнаў уводу, пры чым застаюцца тры пасляпэўнія відэння інструменту), ён ачышчае старыя рэзультаты інструменту на серверы і ставіць заместак на кожны такі месца. Яго опцыя clear_at_least дазволяе распаўсціць вартасць анулювання, выклекаючы неабходнасць ачышчэння мінімальнай колькасці дадзеных. Другі, compact_20260112, ўжоўсяць як моцны інструмент: ён здзейснюе повнае стыканне на боку сервера, якое стварае новую версію кантакту, а не проста фрагмент у існуючай.
Claude Code ўтварае гарны прыклад для аднароджэння, адколькі нават прыстрой для падключэння, створаны компаніяй, якая дастае гэтыя прымітывы, выглядае так, як будзе сама кераваць своім болей важкім фарматам /compact на свайной стороне. Падтрымка гэтага функцыяналу даецца за дапамою рэверс-інжынірынгу ў спялочы, які берае свае начало з аднаго публічнага коду на GitHub, а не з публічных дасяглібнаў Anthropic. Адчысцэнне малай кількасці дадзеных выконваецца на серверэ, тады як рашэнне пра тое, які стан размовы застаецца, керуецца кліентам.
OpenAI сфокусаваецца на стысненні. Яго канцэнтры /v1/responses/compact вяртае зашыфраваны, незрозумелы блоб, які кліент перадае без аналізу ўнутрошняй часткі, часткова ў цылі заблокавання спосабу введэння інструкцый, калі падмененыя падсумкі моглі б уплынуць на пазнейшыя крокі. Тут няма нічага, што адпавядаў бы точнаму чыстэнню, таму Codex сам павінен кераваць розмерам выходных даных інструмента, а пад обомі шляхамі існуе проста альтэрнатыва: калі вокно апэндзіўна перапоўняецца, Codex адкідае старэйшы элемент історыі і пробуе знова.
DeepSeek адказвае значная менш захопленымі можлівасцямі ў адзычэнні кантэксту. Яго кэшаванне прыфікса на стороне сервера зніжвае вітраты, але не рашае проблему фіксаванага вікна, таму кожны інструмент, які там вікорыстоўваецца, выконвае весь працэс сціскання. Oficыяльны інструмент DeepSeek стварае такі працэс і робіць гэта без знішчэння чаго-небудзь: запісаныя здарэнні залішаюцца ў журнале і можна да яных дасягнуць. Адна з трэціх-сторонніх інтэрфейсаў тэрміналу, якія былі перакананы, прыхоўдзіць гэту працу і ніколі не стыскае даныя абочна.
Важна не якосць канцэнтрацыйнага канцэнтры якога-небудзь API, а тое, хто несе адпаведнае адпаведнае за адліквідаванне таго, што застаецца. Hermes ўоскрэсляе адпаведнае лімітнае разлікаванне, таму што ён абарачвае кальколькі прадаўцоў і не можа прыпускаць, што хто-небудзь з іх аддае правільныя прымітывы. Таму ён выкорыстоўвае савой кліентскі кампрэсар як базовую практыку, прыменяючы два праграмы: 50% на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адліквідаванне на адлікві
Усе вышэйзначанае выклікалася на тыя падставы, што сесія ніколі не зупіняецца. Але сесіі зупіняюцца. Ноутбукі закрываюцца, працэсы завершаюцца, заданні CI выходзяць, і хтось пішчыць /resume, спадзяючыся продыржыць там, дзе ўсё засталося.
Гэта найпростэйшы каманд для вярнення да сесіі, але ёй супакоўваецца найдорожэйшы працэс вярнення. Ён складаецца з семі сімвалоў, укладзеных па шырокай гілцы, і выглядае як /help або /clear; ён не мае аргументаў, падтверджэння і жадных перакосаў. Нічога ў ям ня паведамляе пра яго цэну, а інтэрфейс налаштаваны так, каб вярненне здавалася безкоштовным.
Размову можна вярнуць, але кэш — ня можна. Сесія, якая была вярнута, — гэта не працэс, які быў паставлены на паузу. Сістэма перадае з дыска тэкст размовы і занова стварае історыю паведамленняў, таму дыялог вяртаецца з аховвання, а «тэплы прыфікс» — ня вяртаецца. За гэта следуюць два разныя косты відновлення.
Першым ўмовнікам являецца грошы. Кэш прыметак Anthropic за замовчаннем жыве пяць хвілін, або гадзіну, калі была адзначэна можлівасць большога запісу, і толькі актывацыя працэса апдэйтуе яго. Стан «без дзеяння» — гэта крайняя форма спакою, калі абсолютна жадна процэса не выконваецца. Прыметак, які раней быў дышэўкім, зноў стае недоступным, і наступны раз даводзіцца плаціць пэўную суму, каб яго знову створыць. Найдорожэйшым варыянтом ёсць вярнуцься да сесіі, якая працавала калькі дзён, і гэта ўсё ж такі важлівы аргумент для астаточнага керавання сесіямі.
Другій элемент — інформацыя. Калі транскрыпцыя большая за доступныя рамкі, можа знадобіцца яе складзець прытым, перш чым будзе выконана якая-небудзь новая дзеянне. Гэта ўзычайна рызыкаваны спосаб складання, адколі стысненне відбываецца раней, чым хтось зможа знову візначыць, што ёсць важлівым. У транскрыпцыі можа быць наявным обмежэнне, якое пояснюе выбор, здарылы дзевяць крокоў назад, але яго можа не быць у стыснутай версіі. Агент працюе далей з меншымі рамкамі і правдопадобной історыяй, якая не павінна прынцыпова быць той історыяй, якая зробіла паканальныя рашэнні разумнымі.
Што бы не перазсталі пасля складвання, тое перазстае і пасля вярнення да стану, і гэта ўсё сутлейшая прычына стойкасці стану. Правілы, якія знаходзяцца ў коране праекта, можна зноў запісаць з дыска, файлы можна перачытаць зноў, спіс задач можна перзбудаваць, а створаны журнал будовы можна зберагчыць і апыляцца на яго. Рашэнне, якое існуе толькі ў размове, не мае зовнішньага джэрага. Калі яно існавало толькі таму, што яго зафіксаваў транскрыпт, яго трэба зноў стварыць пасля вярнення, а калі складванне яго адмяніла, яно можа знікнуць назаўсёды.
Такім чынам, рангаванне стосуецца не толькі цены, але і стойкасці. Ад найстойкішага да найболей кранібаго: стан, які можна перзбудаваць, стойкі зовнішні стан, жывы стан размовы, а потым транзыентныя спазыркі. Чым ніжэй знаходзіцца элемент, тым больш ён падвержаны рызыку складвання.
Два спосабы, якімі складванне паспяшае
Працэс складвання можа зазнаць няўспэх двума спосабамі. Актуальны варыант лёгка ўпазнаваць: працюе процедура стыснення, пасля чаго вялікі об’ём выходных дадзеннях адразу заполняе вікно, прыстрой знову стыскае дадзеныя, з’яўляюцца тыя ж выходны даны, і цыкл павтараецца, як будзь-колі спроба вычысці воду з чалавека, калі ў ям ужо прасвердлююць адверста. Claude Code перастае працаваць над павторнымі спробамі, утрамачваючы тым самым колькасць віконаных запытань, і мае вбудованую логіку для выяўлення таго, што ён застраг і не працюе далей. Гэта правільна поведынка, але сам цыкл ёсць сігналам таго, што вікорыстоўваецца неправільны падход. У ідэале агент трэба б празыходзіць да іншага падходу, а не павтараць вікорыстоўвання таго ж інструмента. Калі адзін занадта вялікі файл продовжае прымусваць процедуру стыснення, зменшэння порога не ёсць рашэннем. Рашэннем будзе чытанне толькі часткі лінакоў, пошук у межах адмежаванага дыяпазона, націсленне на стойкія выходны даны або перадача файла падагенту, чыя вікно можа быць зменена. Калі толькі пачынаецца налагоджэнне працэса стыснення, запытайцеся, чы не лежыць рашэнне на трохі вышэй у іерархіі або ж у цэлкам іншым падходзе.
Павольныя проблемы ўскладненыя. Пры стысненні губяцца даны, а длігія сесіі ніколі не стыскаюцца толькі раз. Яны стыскаюцца, працуюць, зноў стыскаюцца, працуюць, і знову стыскаюцца: падсумкі на падсумках.
Паўторныя стысненні
Першы спосаб перакладу можа быць выдатным, але ўсё рава прынесці паслаблы рэзультат у трэці раз. Другі апрацоўвальнік ніколі не бачыць первіснай інформацыі, толькі варыянт, выбраны першым апрацоўвальнікам. Трэцій не бачыць ні таго, ні другога, толькі ўсведамленне другога апрацоўвальніка аб рашэнні першага. Паглядзіце, які эфект гэта мае на факты і прычыны. Першы спосаб перакладу могаў бы застаўіць фразу «Выбраны падход B». Другі — фразу «B ёсць чынныя рэалізацыя». Трэцій — фразу «У рэалізацыі вікорыстоўваецца B». Кожна з гэтых фраз ёсць правдзівай, але прычына, чаму падход A быў адхілены, знікае. Сістэма не втрачае самае рашэнне, але втрачае тое, што робіла рашэнне зрозумелым, і гэта ёсць самае большае нашкоджэнне, якое наносяць паўторныя апрацоўкі.
Што павінна застацца
У розных структурах апрацоўкі інформацыі структураваныя підсумкі зводзяцца прыбліжна да адных і тых жа катэгорыяў:
- Мета: што прагчацься адсягнуць?
- Стан: што было выявлена або зменена?
- Праца і заведамыя задачы: што ужо зроблена і шта застаецца?
- Нераскрытыя пункты: якія запытанні яшчэ не рашаны, абмежаны або находзяцца на рассмотрэнні?
Абазаванні разлічаюцца ў разных рэшэннях, але структура падтрымліваецца, што свідчыць пра тое, што гэта максымальна простая форма, якую сесія павінна зберагчы. Дзеяныя рэшэнні таксама дадаюць крокі з вярнення файлоў, ўпрымкі для перзагрузкі рабочага набора пасля зберагчэння.
Спаднія матэрыялы
- Созданне сандбокса для агента-кодавальніка і падтрымка лёгкага кантэкстнага вікна — Дадзіце сандбокс у вобразе рэбрыка або пульперапу агенту і керуйце кантэкстам за дапамогою файлоў-выліву, фрагментаў, стыснення і вставкі пасля фіксацыі, якая падтрымлівае кэш прыметак.
- Harness Engineering: Рэйтайм, які ператварае LLM у агента — Чым насправды керуецца для працы кодавальнага агента: ціклы, распадзел інструментаў, які вытрымае некальканосныя запыты, а таксама разрэшэнні тыпу allow/ask/deny, паказаныя на прыкладзе або 600 ліній чыстага Python.
- Стварэнне сістэмы керуэння агентамі AI для падпрыемства: політыкі, затверджэнні і ацэнкі — Практычны аналіз кантрольнага плана, які керуе AI-модэлем: рэўістар інструментаў, двухэлементны механізм прыняцця рашэнняў, затверджэнні, контракты ў Python з адзінаковымі тыпамі, тэсты, ацэнкі і развяртанне.