Абвязка — гэта прадукт: практычны гід па абвязках у агентным AI
Што такое абвязка агента і сем яе частак, ад інструментаў і кантэксту да абмежаванняў і ацэнак, а таксама субагенты, тыповыя збоі і фрэймворкі, якія варта ведаць.
Крыніцы: The Harness Is the Product: An End-to-End Guide to Harnessing in Agentic AI
Уявіце сабе, калі аднолькі той самы мадэль мовы даецца двум разным камандам. Каманда А стварае агента, які лагодзіць багі ў вялічызненай базе дадзеных, запускае набор тэстаў і надае адлагоджаны запрос на з’еднанне коду. Каманда Б стварае чат-асістэнта, які за калькі лістоў траціць контроль над размовай і з радасцю выдумвае правілы компаніі. Вагі мадэлі ідэнтычныя, але рэзультаты абсалютна разныя.
„Харнес“ — гэта усё, што створваецца наваколе модэлі. У ёй ёсць цыкл, які дазваляе модэлі дзеяць, інструменты, якія яна можа выкорыстоўваць, спосаб керавання ўсім кантэкстам, захоўнікі, якія не дазваляюць яй рабіць чагось нерозумнага, а таксама зворотныя звязкі, якія паведамляюць яе, чы робіць яна успех. Тое, што будзе пасля, пачынаецца з нуля, раскрывае, што такое агент, і праглытае ў сябе элементы „харнеса“, модэлі працы, такія як падагенты і компактаванне, калькі вядомых сістэм і фрэймворкі, якія існуюць сёньня. Прычыннае агентскае досвідзе не трэба.
Асновы
Што значыць агентская ШЫ
Без усіх агітатыв, агент — гэта проста:
Агент — гэта мовны модэль, які працуе ў цыкле, выкорыстоўваючы інструменты, пакуль не будзе досягнута мета.
Для этага патрабуецца тры наявнасці: мадэль, якая можа разважаць і выбіраць наступны крок, інструменты, якія мадэль можа выкорыстоўваць, такія як пошук у інтэрнэце, доступ да файлаў, выконанне коду, запыты да базы дадзеных або адправка пісьма, і цыкл, які вяртае рэзультат кожнага інструмента, ўжо каб мадэль могла адначасова вырашыць, што робіць далей.
Чат-бот адпавядае адно раз і зупіняецца. Агент продовжае: ён выконвае дзеянне, аналізуе рэзультат, а потым выконвае ўжо адно. Самэ гэта цыклы робяць прогнозавальны прыстрой здатным выпрацоўваць рэальную работу, а рэшта данай статты раскрывае гэта падробней.
Што такое «харнес»
Уявіце сабе «харнес» як срэду выканання для гэтага цыклу. Мадэль выбірае, што трэба зрабіць далей, а «харнес» выканання гэтых дзеянняў і стараецца, каб увесь працэс быў безпечны, доступны, прозрачны і керованы. Назва нагадвае тэстовы «харнес» у програмнай апаратурэ або прыбор на кані: чыстая сіла патрабуе структуры, каб была спрамована на корыстную работу.
У конкрэтных выражэннях, «харнес» выкананае запыткі інструмента, якія прасіць мадэль, кантролюе тое, што бачыць мадэль на кожным кроцы, аплікуюць правыя, распрацоўвае абыякавасці, павторныя спробы і бесканечныя цыклы, сочыць за прагрэсам і ведае, калі заданне завершана чы рашчасці зупыніцца і папросіць чалавека.
Адны корыстны спосаб прымэты: мадэль не мае памяці между павторнымі запыткамі. Кожны раз, калі яе запытаюць, яна пачынае з нуля, чытае дадзеныя ёй тэкст і выдае адзін рэзультат. Усё іншае — скрыпт, атрабуты, сцэна і захоўнай механізм — гэта «харнес». Якшто перакрысіць гэта, той самы актор будзе выступаць абсалютна інакш.
Чаму «харнес» мае значэнне
Выдзеляюцца тры практычныя прычыны.
Разлік у рэзультатах модэляў зменшаецца, тады як разлік у рэзультатах інструментаў — ні. Модэлі новай генерацыі становяцца все бол схожымі па первісных можымасцях. У тэстах, якія ацэнююць спроможнасць рашаць рэальныя проблемы програмнага забезпечэння, адны і той жа модэль можа паказаць значна разныя рэзультаты, залежна толькі ад інструментаў, якія ў яго ўжоўваюцца — крашчых засобаў, інструкцый і цыклаў зворачнай свярзкі. У певны момент саме інструменты стаюць тым, што адлічвае модэлі адзін ад другога.
Дзялёныя задачы падчырвоняюць маленькія бяды. Калі модэль ёсць 99 процэнтов надзеяным на кожны крок, задача з 50 крокаў будзе выканана толькі прыблізна у 60 процэнтаў случаў, адтолькі што 0,99 у ступені 50 дорэвнае прыблізна 0,605. Перакананне, павторныя спробы, контрольныя пункты і корэкцыя курсу — гэта інструменты, якія борацца з гэтым нарастаючым эфектам. Яны розлічваюць дэмаверзію ад рэальнага продукту.
Свабода патрабуе захадоў. Кожны агент, які можа выкананыць каманды, пераказваць грошы чыстараыць інформацыю для кліянта, павінен маты ліміты дазволаў, сэндбоксы і журналы аўдыту. Ўсе гэта ўходзіць у склад «харнесу», а мадэль не дапамагае ў стварэнні нічога з гэтага.
Структура «харнесу»
Агенты для кодавання, даследжэнняў і падтрымкі зазвычай маюць семь складовых. Яны пераказаны тут адна за адной.
1. Сістэмны запрос, стаўкі
У гэтым раздэле агенту аб’являюць яго ролю, ліміты, правілы поведзення і мэту кожнага інструмента. У распрацаваных продуктах тэкст налічвае тыячы слоў і падтрымваецца з тым жа акцэнтам, як і код, включаючы тон, безпеку, час для запытанняў і спосабы рашэння пры неясных інструкцыях.
Новачак можа напісаць простае рэчыце, якае сказвае, што агент — гэта корыстны асістэнт для напісання коду. У тое жа час інструкцыя для працы пераказвае конкрэтныя правілы: адкрываць файл перш чым яго рэдагаваць, вяршыць толькі маленькія змяны, запускаць тэсты пасля кожной змяны, зупініцца і даць звестку пасля двух няудачных запускаў тэстаў, а таксама ніколі не даваць змяны безпосерэдна у галоўную гілку, пасля чаго прыводзяцься ўвесь шырокі спіс такіх жа правілаў.
2. Слой інструментаў, «раны»
Інструмент — цэла функцыя, якую модэль можа вызваць; яна візначаецца іменем, апісаннем і схемай тыпаў для яе аргументаў. Модэль прасіць пра вызов у структураваным выходзе, пасля чаго інструмент выкананы і рэзультат адправлены назад.
Дызайн інструментаў — гэта недаацэнаваная спэцыяльнасць. Яна адпавядае дызайну API для абліковача, які розумее все буквальна:
- Апісанні выступаюць як інструкцыі. Модэль выбірае інструменты на адваге апісанняў, таму нечыстае апісанне можа прывесты да няправільнага інструмента.
- Калькі з правільным фарматам лепшыя, чым многі перакрытыя калькі. Чрозмерна калькі спантажуюць модэлі так сама, як меню з чатырьохдзесятам пунктамі спантажуе абеднікаў.
- Верніце паказанні пра бягучыя проблэмы, якія модэль можа выкарыстоўваць для дзеяння. Паведамленне пра тое, што файл ў рэжыме толькі для чытання і што павінна быць спачатку запрошана даступнасць, лепшая, чым проста трагет-трэйс.
- Робіце небяпечныя калькі абмежанымі. Калькі, якія адправляюць толькі загадзя затверджаныя праекты, набагато безпечнейшыя, чым тые, якіе выкананяюць даколькі хочаць код.
Важным развіццем у гэтым аблаке ёсць Протакол кантэксту модэлі, які Anthropic адкрыў у 2024 годзе, і які ўжо адхватыла большая частка індустрыі. Ён стандартызуе спосаб, якім прадаўцы калькі выкладзаюць іх для выкарыстоўвання любым агентам, фактычна як універсальны з’еднальнік: напісаце інтэграцыю раз і падключыце яе да будзь-каго інструментарыя.
3. Калектываванне кантэксту, рабочая памяць
Аркаў кантэксту — гэта весь перцэптыўны свет модэлі. Зазвычай ў такіх аркаўх колькісць токэнаў становіць ад калясцоў тысяч да мільйона, што здаецца вельмі велікім кантэкстам, пакуль агент не прачытае чацверо файлаў і не запрацюе шасць команд.
Выбір таго, што модэлі будзе відбівацца на кожным кроцы, верагодна, ёсць найважлівейшым элементам у сістэме, і спецыялісты сэрцава называюць гэта інжыніерыяю кантэксту, якая пераважна заменіла інжыніерыю запрошэнняя як ключовую навык. Тэхнікі развіваюцца ад простых да сложных: трункцыя (залічванне толькі няўзгодніх паведамленняў або часткі файла), адзыскванне (індэксаванне базы знанняў і выкарыстоўванне толькі таго, што зараз неабходна) і компактаванне. Праз компактаванне, калі аркав практычна запоўніваецца, модэлі пішае статысцыю сесіі, гэтая статысцыя заменяе первісны тэкст, і праца продаўжваецца. Самэ так агенты можу працаваць над заданнем гадзінамі.
4. Памяць, давялітній сховішч
Кантэкст застаецца пры адной сесіі, а памяць застаецца. Зазвычай яе выкарыстоўваюць у кількох шарах:
- памяць праекта, напрыклад, файлы інструкцыйяў у рэпазітарыі, якія навучаюць агента для кодавання вашым стандартам і командам пабудовы, і якія чытаюцца на пачатку сесіі,
- памяць карыстальніка, тыя самыя прагантаванні, якія выкліканы паўтаральнымі размовамі,
- эпізодычная памяць, якая зберагае даны пра пакульшыя запускі, часта ў вектарным сховішчы, каб іх можна было выкарыстоўваць, калі з’являюцца падобныя сітуацыі.
5. Меры безпекі, правыя на выкарыстоўвання і ізоляцыя, «гальмы»
Шар безпекі постаўляйна спытваецца, чы рэальна трэба выконваць даныя дзеянні. У практыцы гэта значыць:
- Разныя рангі прав. Чытанне вядзецца без працяў, запіс праглядаецца за правамі, а незворачныя дзеянні, такія як развяртанне, адправка, выдаленне чы плата, выклікаюць явную згоду чалавека.
6. Перакананне і адзывы, «вочы»
Нічы не павяршае агента болей надзеямо, чым спосаб працавання з выходным рэзультатам самога агента. Агенты, якія займаюцца кодаваннем, скомпілююць код, пераканалізуюць яго і запускаюць тэсты пасля кожных змян. Агенты, якія займаюцца даследаванням, парабялеюць тверджэнні з кальколька джэрэл. Агенты-браузеры фіксуюць экран, каб пазнакаць, што на самай працоўвае. Дзеяныя рашэнні дадаюць можлівасць аддзінаму пераглядачу, другаму модэлю, які оцэнюе адпаведзь першага модэля за апрантам, перш чым яна будзе прынята.
Эта мера прымусова рашае проблему сумавання паклёнакоў. Агент, які можа пазнакаць, што ён парабіў, можа праказаць зноў, тады як той, які не можа, будзе аддаваць некалькаспрэменныя рэзультаты.
7. Абсервабельнасць, «рэкардэр польоту»
У працэйнай супэрвізіі фіксуецца кожны запрос да модэлі, кожны вызов інструмента і кожны выкарыстоўваны токен. За дапамогою гэтых адзнак можна пераграць неудачны запуск, знайсці крок, які пашыў не так, і выправіць прычыну — запрос, інструмент чыя-небудзь правіллі. Навакол гэтага выклікана цэлая катэгорыя продуктав, укладзеных у LangSmith, Langfuse, Braintrust і стандарты OpenTelemetry для генератыўных AI, адтолькі ўстраненне проблем у агенце без можлівасці аналізу ўсіх дадзенняў такое ж складнае, як і устраненне проблем у распадзеленых сервісах без логаў.
Эфектывае адкрыцце цыклу
Названне элементаў — гэта простая частка. Разлік межаючы сістэмай, якая вытрымае дэманстрацыю, і той, якая вытрымае звычны рабочы дзень, вынікае з прыемаў, опісаных ніжэй.
Планаванне, дзеянне, перакананне
Простыя агенты прыемліваюць задачу без адлегління. Зрэлыя сістэмы ствараюць певны рытм: практычнае планаванне выконваецца па шляху разбівання цялевай меты на спіс задач, выканання маленькіх крокаў, пераканальвання кожнага рэзультата пры продажу, а пасля — перасмотра плану і практычнага выканання зноў. Прыемлівы план служыць двум цілям: ён дапамагае модэлю сфокусавацца на дугачынных задачах, калі ён перачытываецца ў кожны момент, і дазволяе людзі, якая сочыць за працэсам, бачыць прыбыль пры ўжо выконанні, што ўыяўляецца цяжэй цэніцаемым, чым могло быць.
Структураваныя выходы
Калі програма будзе выкарыстоўваць выход модэля, яго трэба обмежыць схемай. Чынныя API падтрымліваюць прымусовыя вызовы інструментаў і генераванне, пераканальванае схемай. Проза падходзіць для людзей; код жа павінен маты структуру.
Косцы і затрымкі
Агенты швыдка спалююць токены, што прычыняе проблемы з эканомікай сістэмы. Зберагчыць большы ўсталы прыфікс (прапанія сістэмы плюс апісанні інструментаў) між раундамі коштае значна менш, чым перасылка яго занова, што ў значныя меры дапамагае пад час дзяўніх сесій. Механізм маршрутацыі направляе стандартныя крокі да малага, шырокага агента, а агента з вышэйшымі можаццямі застаўляецца для крокаў, якія выклікаюць неабходнасць логічных размышленняў. Незалежныя падзаданні, такія як чытанне дзесяці файлаў або перагляд пяці джэрэл, можу выконвацца паралельна.
Сістэмы з калькольнікамі агентаў і даўай
Падагенты і оркестрацыя
Калі падзаданні перастаюць пасаджвацца ў адну вікно кантэксту, сістэмы пераходзяць на працу з калькольнікамі агентаў. Оркестратор дзеліць цэль і стварае падагентаў, кожны з якіх мае свой кантэкст, часта сяродзінній набор інструментаў і чыткі задачы. Кожны падагент выкананае сваю работу і вяртае толькі свойы вынік, а не всю історыю сваей працы.
Асалідны выгода менш зрозумелая, чым шваль: кожны падагент працуе ў сваёй самастойнай ізольаванай супакоўке, а не проста паралельна. Дзесяць падагентоў можа кожны запаўніць цэлы вікнам адной падсістэмай, тады калі оркестратор заставае толькі дзесяць краткіх падсумакоў.
Звычныя топалогіі включаюць оркестратора і працоўнікаў (гэта яшчэ больш распашчастае рашэнне), канвеі, такія як прапрацаванне, крытыка і перработа, а таксама панэлі дыбатаў, у якіх калькі агентоў незалежна рашаюць проблему, а суддзя сінтэзуе адпаведзі. Дыбата ўскладнена, але падходзіць для пытанняў з высокымі наследкамі.
Команды, якія стварылі гэты атлас, вынеслі калькі важлівых урокоў:
- Зазначыце прыбліжны рубік працы для кожнага заведамства, інакш нават трывіальнае пытанне можа спрычыніць дзесяткі пошукоў.
- Пішыце інструкцыі, якія будуць дэталізаваныя і самодастатнія, таму што падагент не можа бачыць супакоўку свага вышэйшага агента.
Пункты контролю і стойкасць
Агенты, які працуюць дзялейна, часта зупіняюцца праз збоі, ліміты частоты і перзапускі. Сістэмы для працы ў прымэтных умовах выкарыстоўваюць пункты контролю, якія фіксуюць ход перадачы дадзенняў, спіс задач і рэзультаты работы інструментаў, таму работа можа продавацься з 37-го крока без пачатку значна зноў. Гэта ўласна сфера стойкіх дварачных механізмаў, і некалькі фрэймворкаў агентаў будуецца адразу на такій базе.
Evals – набор тэстаў для гэтай сістэмы
Працэваўанне агента ўоснована на прыметнасці, таму запрос, які працуе у панедзелак, можа не працаваць у втарок. Сільныя команды выкорыстоўваюць набор для ацэнкі, які складаецца з дзесяткаў чы роўна ж тыяў рэалістычных заданняў, рэзультаты якіх можна автаматычна пераканаць. Чы пройшлі тэсты, чы была знайдзена правільная адпаведзь, чы вітраты засталіся ў межах бюджэту? Рэедытары запросаў, новыя інструменты і зміны модэляў пераглядаюцца ўсе праз гэты набор пры выпуску. Ён выпалюе ролю, яку ў іншых месцах выпалюе CI/CD, а ігнораванне яго значыць працаваць без апаратуры.
Выкорыстоўванне камп’ютара, фінальны экзамен
У найсучаснейшых рашытках агентам даёцца экран, клавіатура і мыш, і яны можаць запускаць будзь-яе застосоўчы програма, незалежна ад таго, чыя ў яе API. Гэта падышвае сложнасць усіх пакульшых проблем: скрыншоты спрацоўваюць вельмі большую колькасць токенаў, таму контроль кантэксту павінен быць строгім; неправільны клік можа завесты да серьёзных наследкаў, таму правы прывілеі змянююцца на стрэльнейшыя; а праверкі значыць фактычна перагляд экрана пасля кожнага крока.
Як вядомыя сістэмы прыменяюць гэтыя ідэі
Claude Code — інструмент для программавання. Бн ўособліва добра показвае прынцыпы дызайну. Набор інструментаў ў яго маленькі, але эфектыўны: ён падтрымляе чытанне, запіс і рэдагаванне файлаў, каманды шэлу, пошук коду, а не сотні мікроінструментаў. Праверкі ў яго ёсць цэнтральным элементам: ён запускае компіляторы, інструменты для перагляду коду і тэсты, і адбывае ітэраціі, калі яны не працуюць. Файл з інструкцыямі для праекта выступае як памяць. Нічога з гэтага не ёсць часткай можлівасцяў модэлю, і самэ гэта прычына, чаму той самы модэль у яго рамках выглядае інача.
Продукты глыбокых даследаванняў, інструментарыя для даследаванняў. Інструменты з вялікіх лабараторыяў ператвараюць запіт на самастойнае даследаванне, якое трывае калькі мінут і заканчываецца апавядомленым звярненнем. Іхнім атрыбутам ёсць план даследавання, які падготавліваецца загадзя, іноды праказваецца для затверджэння, чым людзіня ўключаецца ў працэс у самы недорогі момент, перш чым пачнуцца дорогія працы. Цікавіцеся, з’яўляюцца лакуны — і зноў шукаеце, а метаданы цітатаў перавозяцца разам з фактамі па всім ланцоўку.
Manus і школа праектавання кантэксту. Команда Manus публікавала нечым не звычайная адкрываючая інфармацыю пра внутрэшняй часткі прыстрою ў перыяд або праз час да выходу версіі 2025 года, і калькі з гэтых пунктав распрасіліся шырока. Спрыяйце KV-кэшу як да адмежаванняя прымусу пад час праектавання: заставайце пачатак запіту стабільным (без пазначкі часу ў верхней частцы сістэмнага запіту), таму што колькасць токенав увайшчанняя можа значна перавышаць колькасць токенав выходу. Утрымайцеся ад дадавання або адчынення інструментав працэўнай сесіі, таму што гэта анулюе кэш і стварае прамыслы для модэлю, калі пакульнія запыты згадваюць зніклі інструменты; заставайце спіс незменным і маскуйце тыя элементы, якія можна выбраць у даны момент.
Курсар і супорт IDE. Рэдагар, створаны на асабліванні з AI, практыкуе іншую філасофію глыбокай інтэграцыі з аптэкай. Ён выкарыстоўвае семантычны індэкс кодбазы рэдагара для шырокага пошуку, зафіксавае змяны у відміннасцях, якія можна пераглядаць, такім чынам, што чалавек, які затверджвае з’еднанне, являе сабою мадэль прав, маскаваную пад інтэрфейс; кроме таго, ён запускае фонавыя агенты на адзінаковых галузях і вяртае рэзультаты пераглядча правільнасці коду і пераканальніка зворотна ў цыкл. Тыя ж семь складовых выглядаюць у разным відзе.
Агенты падтрымкі ў падпрыемствах, дзе галоўная мета — салідарнасць з правіламі. Агенты, якія працуюць з кліентамі, змінююцы прыорытэты: абходжэнне неправільных дзеянняў мае большое значэнне, чым простая спроможнасць. Таму яны выкорыстоўваюць певныя правілы: дзеянні атрыбутуюцца толькі да затверджаных варыянтав, перакладзеныя пераглядаюцца за схемамі бізнес-сістэм (вырахунак вяртання грошаў абмежаны, спачатку паўтарна адбываецца перакананне ў аідэнтыцэці), пры недастатку вяры гэтыя дзеянні обавязкова перадаюцца іншым адпаведальным адамам, а таксама ведуцься повныя лог-файлы аўдыту. У рэгулююцыях сектарах такія правілы фактычна стаюць самым продуктам.
Фрэймворкі і інструменты, якія ўжо ёсць
Сёньня рэдка калі ствараюць такія сістэмы толькі з базовых API-званакоў. Чырвоныя популярныя варыянты, групаваныя за філасофіяй іх прыменення:
- Claude Agent SDK. Сістэма, якая стоіць за Claude Code, выкладзеная як бібліятэка, якая включае ціклы, інструменты, падагентаў, правы на выконанне дзеянняў і функцыю стыснення дадзеных. Лепшы варыянт для шыранаг стварэння серйозных агентаў на базе Claude.
- OpenAI Agents SDK. Легкі прымітывы для агентаў, перадачы задач, правілах карантына, сэсій і трэйсінгу. Адмянайце для мнагаагентных прыкладнікаў у экасыстэме OpenAI.
- LangGraph. Агенты як явныя машыны станоў, з функцыямі зберагчыка стану, перэрывамі з удзелам чалавека і стабільным выкананнем. Адмянайце для складных, кантролюемых, дзейнага працы.
- CrewAI. Команды на адной основе ролей, такія як дзеярнік і пісьменнік. Адмянайце для шыракіх протатэпаў мнагаагентных сістэм і пайплайнаў кантэнту.
- AutoGen, AG2 і Semantic Kernel. Мнагаагентная праца, спрыважаная канверсацыямі, якая пераходзіць у корпаратыўныя інструменты. Адмянайце для праектаў на .NET і Azure, а таксама для навуковых експерыментаў.
- smolagents. Мінімалістычная бібліятэка, дзе агенты пішуць код як свае дзеянні. Адмянайце для прыстроек, якія можна змяніць, з адкрытымі мадэлямі.
- Pydantic AI. Агенты з абяраннем тыпаў і схемамі, якія даюць пераканальваныя рэзультаты. Лепшы выбар для команд на Python, якія жадаюць строгага абярання тыпаў.
- Vercel AI SDK. Прымітывы на базе TypeScript з можлівасцю кантролю цыклаў агента. Лепшы выбар для інжынераў веба і продактав у экасыстэме JavaScript.
Акола гэтага знаходзіцца «сцягнучы» элемент: MCP для стандартных інструментаў, платформы для трэйсінгу і ацэнкі, двойнікі выканання і прадаўцы sandbox для безпечнага выканання коду.
Парада па выбору: калі выучаецеся, напісце самі просты цыкл аднойчы, выкарыстоўваючы API модэлю, цыкл while і два інструменты, прыблізна ў ста лініях. Пасля чаго жадны фрэймворк не будзе здавацца чымсь чародзкім, і гэта сама мета. Калі готавіце продукт, выберыце фрэймворк, які ўжо ўжо бліжы да вашага прадаўца модэляў і мовы, і пасветце заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсёды заўсё
# The whole idea, in miniature
while not done:
response = model.generate(context, tools) # model decides
if response.tool_calls:
results = execute(response.tool_calls) # harness acts (safely!)
context = manage(context + results) # harness curates memory
else:
done = verify(response) # harness checks the work
Фармы неяўнасці
Ўсё гэта — тыпавыя спосабы, якімі агенты неяўнаюць, кожны з якіх супараджаны з адпаведным спосабам выправлення:
- Занепад кантэксту. Вікно паступова запоўняецца застарэлымі рэзультатамі работы інструментаў, а якосьць падыходзіць да нуля; чырвоныя па калькольніку гадзіны, мета забываецца. Спосаб выправлення: кампактаванне, ведэнне нотатак і перыядычна паўтарэнне цялевай меты.
- Ціклы загібелі. Той самы неефектывны каманд паўтараецца без канца, за кожную спробу плацячы каля калькольніку цэнтав. Лечэнне: выяўленне ціклу, встановленне лімітав для ітэрацый і прымусовыя змяны стратэгіі.
- Расплыванне інструментаў. Калі існуе чатырыдзесят падобных інструментаў, мадэль выбірае неправільны ў найгоршы момент. Спосаб выправлення: меншы набор болей эфектываў інструментаў з чыстымі апісаннямі.
Што трэба памятаць
Модэль з’яўляе інтэлект, а каркас ператварае яго ў практычную дзеяльнасць. Каркас складаецца з ціклу і семі элементаў: стаўкі, інструменты, кантроль кантэксту, памяць, меры захоплення, верыфікацыя і можлівасць спаглядання. Навакол гэтых элементаў распалажуцься шаблоны для адрабаткі дзейнасці дліткіх заданняў, такія як планаванне, выкананне і верыфікацыя, стысненне, контрольныя пункты, пад-агенты і ацэнкі. Большасць неудач агентаў ёсць неудачамі каркаса, а большасць ўдосконаленняў агентаў — удосконаленнямі каркаса. Таму, калі агент работае не належна, спачатку перагляньце каркас, а толькі пасля таго зменіце модэль.
Спаднія матэрыялы
- Практычныя аспекты сабагентаў: ролі, бюджэты, забраненні і тыхія неудачы — Як напісаць стойкія сабагенты Claude Code: ролі, файлы перадачы, стан запуску, бюджэты, забраненні, перакананні ў тыхіх неудачах, а таксама дапаможны элемент Copilot, на прыкладзе агентаў, якія вікорыстоўваюцца ў дзесяткух рэпазітарыяў.
- Агентныя аналітыкі — гэта не толькі тэкст у SQL: урокі з Anthropic — Чым паведамляе паст з самаслужбовымі аналітыкамі ад Anthropic пра семантычныя шары, навыкі, ацэнкі і фундаменты дадзэнняў, і чаму сам толькі пераклад тэксту у SQL стварае хыбнае уявленне пра тачнасць.