Практычныя прытамулкі: Agent Harness Engineering: Архітектура выконання, якая стоіць за ўсім
Практычныя прыказкі: Агентскі інжынерыя Harness – архітектура часа выконання, якая включае контракты, перакрыцці та слоты для коду, прызначаныя для команд, якія використоўваюць гэты патэрн.
Існавайце гэта як перапрацоўку ідэй з кнігі «Agent Harness Engineering: The Runtime Architecture Behind Reliable AI Agents» для аператараў: чыткія этапы, арганізаваныя блакі коду і прыметкі па вяснаванню, якія застаюцца пасля перадачы. Этап Аналізу работае найкраща, калі яго розглядаць як вимерную плошчу. Запісаўце адна ідеальная транскрыпцыю, адзін прыклад неудачы і прыметкі па атрыбуцыі да пачатку роботы, прычаму расшырюючы масштаб. Дакументаваць трэба як успішны, так і няуспешны шляхы роботы. Перапрыбуткі, людзкі контроль і обработка некоректных паведамленняў є часткай продукту, а не чымсь, што дадаецца пазней.
Агент — гэта не модель
Для стадіі «Агент не дзейнае» неабяжна ўскладненне вхідных дадзенаў, адпаведальнага за крок і крэтарыяў завершэння працы перад змінай коду. Аператары должны магчымае перзапускнуць крок з вядомага пункта контролю, не спрабоўваючы з’ясаваць захаваны стан. Лепш выбіраць маленькія, тэставаныя елементы замест большых скрыптаў. Калі крок не выйшоў, прычына неудачы должна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцуг задач. Калі наступны крок — це код або вызов інструмента, лепш выкарыстоўваць структураваныя выходны дадзеныя з перакананнем схэмы, замест вольнага формата тэксту.
Ад інжынеріі запрошэнняў да інжынеріі выкарыстоўвання
Для стадіі «Адаптаванне запитаў» неабходна пазначыць вхідныя даны, адпаведальнага за крок і критэрыя завершэння пры зміне коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не прабуючы спадарожваць схованы стан. Спрыяйце цій стадіі як даговору межаў вхідных і перакананых выходных дадзенняў. Даць назвы артыфактам, пазначыць критэрыя успеху і не прымкнуцца да тыхняе частковага завершэння без паведамлення. Калі наступны крок — це код або вызов інструмента, валідаваць структураваныя выходны дадзеныя з паверкай схемы, а не вольнае тэкстовае выказванне.
Што на самай працоўцы Agent Harness?
Для стадіі «Што на самай працо жыве ўнутры» неабходна пазначыць вхідныя даны, адпаведальнага за крок і крэтырыя завершэння пры перадзеіснаванні коду. Аператары должны магчымаць перзапуск крока з вядомай точкі контролю, не падозрываючы прыхованы стан. Запісваць час выконання і кост токена або запыту разам з функцыйнальнымі рэзултатамі. Відразы коста з самага пачатку запобегае неспакоўным рахункам, калі траекторыя пераходзіць з дэмаверсіі ў спакульнаныя сераўы. Автентыфікацыя выканаліцася ў шлюзе, а паўторная автарызацыя — у роўні дадзеных. Толькі токен-носіцель не є межой арэнды. Для стадіі «Што на самай працо жыве ўнутры» неабходна пазначыць вхідныя даны, адпаведальнага за крок і крэтырыя завершэння пры перадзеіснаванні коду. Аператары должны магчымаць перзапуск крока з вядомай точкі контролю, не падозрываючы прыхованы стан. Дакументаваць як «шчаслівы» шлях, так і шлях вяснавання. Перапрыбуткі, людзкія контрольны пункты і обработка некоректных паведамленняў є часткай продукту, а не чымсь, што дадаецца пазней.
Вікна контексту — гэта не ваша база дадзейна стану
Калі працюеце над этапам «Вікна контексту», спачатку запісайце умовы викорыстоўвання: неабходныя даны, сігнал успеху і тое, што выканаецца у разе частковага невыпалення. Такі список дапамагае заліцьваты змяны ў кодзе. Валічыце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшае, прычына невыпалення павінна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцюг задач. Запісвайце назву інструмента, хэш параметраў, час адпаведзі і рынак кожнага вызову. Без такога следу дэбагаванне агентаў займае гадзіны.
Агенты, якія працуюць дзеўяльна, — гэта распрашчаныя системы пад маскай
Калі працюеце над стадзіяй «Дыягенты, якія працуюць дзеўна, распадзены», спачатку запісайце кантракт: неабходныя вхідныя даны, сігнал успеху і тое, што выходзіць у случае частковага невыпання. Такі список контроля дапамагае залічыць пазнейшыя змены ў кодзе. Спрэцьвачайце гэтую стадзію як кантракт межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Дайце назвы артыфактам, задаць правіла пераканання успеху і не падзеўляйцеся частковым завершэнням без паведамлення. Запісвайце назву інструмента, хэш аргументаў, час адклікання і рэзультат кожнага вызову. Без такога лёгкага следу дэбагаванне цыклаў дыягента губіць гадзіны.
Перакананне — гэта другая палова дыягентства
Калі працуеце над стадзіяй «Перакананне: чыгуць якісць», спачатку запішыце умовы кантракту: неабяжлівыя даннэ, сигнал працявання і тое, што выканаецца у разе частковага нявыполнення. Такі список контролю дапамагае заліцвачыць пазнейшыя змены коду.
З інструкцый да выканання
Этап адміністрацыі, які начынаецца з інструкцый і заканчваецца ўжыткам, працюе найэфектывней калі яго розглядаць як мерыемую структуру. Зберагачыце адна ідеальная версія дадзеных, адзін прыклад неудачы і запіс пра неабходнае вярнэнне да пачатковага стану, прычаму расшырэння масштаба. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшае, прычына неудачы павінна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцюг задач. Адкрывайце інструменты з вузкімі схемамі та чысткімі пазначэннямі побачных наследкаў. Адпаведальныя за эксплуатацыю людзі павінны знать, якія вызовы моцна зменіць стан дадзеных, перш чым автаматычна ўзяць рашэнне.
Немагчыма кераваць там, што нельга спазірваць
Этап «Вы не можете запускать» працюе наяўней, калі яго розглядаць як вимерную паверхню. Зафіксуйце адна ідеальная транскрыпцыю, адзін прыклад неудачы і запіс пра відкатанне перш чым расширваць масштабы. Разглядзіце этап як кантракт межа вхіднымі даннымі і паверыжанымі выходнымі рэзультатамі. Паказвайце назвы артыфактаў, задаюце критэрыя успеху і не падтрымайце безсловесна часткова завершэнне. Адкройце інструменты з вузкімі схемамі та чысткімі пазначэннямі побачных эфектаў. Адпаведальныя за хоставанне должны знать, якія вызовы мутуюць стан, перш чым автаматычна схваліць іх.
Існаванне інжынерыі як новай дысцыпліны систем
Інжыніярство Harness як стадія працюе найэфектыўней, калі яго спрыяваць як мерыемую паверхню. Зберагучы адны «золаты» транскрыпт, адны прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расширваць масштабы. Запісвайце часы выканання і косты токеноў або запытак па боку функцыйнальных рэзультаатаў. Відразлівасць костоў з самага пачатку запобегае неспакойным рахункам, калі процес пераходзіць з дэмаверсіі ў спяльныя среды. Адкрывайце інструменты з вузкімі схемамі і чысткімі пазначэннямі па боковых эфектах. Хостам неабходна знаты, якія вызовы мутуюць стан, перш чым яны автаматычна схваляюць іх. Інжыніярство Harness як стадія працюе найэфектыўней, калі яго спрыяваць як мерыемую паверхню. Зберагучы адны «золаты» транскрыпт, адны прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расширваць масштабы. Дакументавайце як успішны, так і вярнэчы паты. Перапрыбуткі, людзкія контрольныя пункты і обработка некоректных паведамленняў є часткай продукту, а не чымсь, што дадаецца пазней.
Чэк-ліст для эксплуатацыі
Калі працуеце над стадзіяй аператывнага чэк-лісту, спачатку запісайце контракт: неабяжлівыя данні, сігнал успеху і тое, што выходзіць у разе частковага абякання. Такі чэк-ліст дапамагае заставаць змяны коду чыстымі.
Зберагаюце канфігурацыю пазначынай ад коду прыемлі. Файлы сераўнавання, хранальнікі секрэтных дадзеных і флагі функцыйяў должны знаходзіцца ў аднам месцы, куды аператары можаюць адбавіць аудыт без неабяжлівага чытання всей структуры.
Для кожнага вызову фіксуйце назву інструмента, хэш аргументаў, час затрымкі і рынак. Без такога лёгку карэспантаванне агента-дыбаггера займае гадзіны.
Стан структуры должен заставацца плоскім і з адзначаннем типаў. Вярстакаваныя блокі маскуюць, калькі вузел запісаў калькі поль, і спакойваюць працэс пасля перарываў.
Калі бюджэт дазволяе, дадзейсніце тест на працэсаванне критычнага шляху ў CI з викорыстанням фіксатываў, а не рэальных платных API.
Спрытваце гэты ўражак як кантракт межа вхіднымі дадзеннямі і пасвярджанымі выходнымі рэзультатамі. Дайце назвы артыфактам, задаце критэрыя успеху і не прымайце часткова завершэння без паведамлення.
Перад пераходам да наступнага ўражака заморозьце версіі, зафіксуйце «золаты» транскрыпты для критычных шляхоў і паказваце крокі для адкатування. У спадзяльных сэрвісах неабходны ліміты частоты запытоў, перакананні ў правах на викорыстоўвання та чысткі власнік для змены секрэтных даных. Валіце надзейнасць працы над красавімі, але разовымі дэманстрацыямі.
Прымечанне для пакета a55603256d7a: не кладзіце ключы прадаўцоў у репазітарый, задаце максымальны тэрмін дзейнасці токена на сесію і зберагаце транскрыпты разам з фіксатрамі для ацэнкі, каб пазнейшыя замены моделяў заставаліся порупаднымі.
Для стадіі 0 прыема забезпечэння надзеі неабяжна практычная ваказка: перад зменым коду трэба адзначыць вхідныя даны, адпаведальнага за крок і критэрыя завершэння. Аперацыйныя працавнікі должны магчыма ўвайсці кан кроку з вядомага пункта контролю, не спрабоўваючы здагадвацца пра схованы стан. Конфігурацыю трэба знаходзіць за межамі коду прыемленае. Файлы сераўіса, хранальнікі секрэтных дадзеных і флагі функцыйяў должны быць аднароджаны ў аднам месца, куды працавнікі можуць адбавляць аудыт, не чытаючы весь код.
Дзялейны прыем забезпечэння надзеі 0/765: памерыць час выканання, класію каштоўкаў і витраты токенаў для гэтай ваказкі, а пасля, на аднойчынных критэрыях, а не на індывідуальных спостарэннях, вырашыць, чы робіцца змена.
Калі працуеце над першым этапам зміцнення, спачатку запісайте умовы кантракта: неабяцковыя даны, сігнал успеху і тое, што выходзіць на частым неудачам. Такі список дапамагае залічваць пазнейшыя змены коду чыста і прозрачна. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выходзіць, неудача должна паказваць на адну конкрэтную відпаведальнасць, а не на заплутаны ланцюг задач.
Дзеянне зміцнення 1/765: вымерыце час выканання, класію памылак і колькасць токенаў, якія былі выкарыстоўваны для гэтага пункту, а потым выявіце, чы рашыцца застаўляць змену на адной фіксаванай сэтке пытанняў, а не на адзінственных прыкладах.
Этап зміцнення 2 працюе лепей, калі яго спрыяжваць з мерыемымі показнікамі. Запісайце адны ідеальны прыклад роботы, адзін кейс неудачы і прыказку па абратанні змян перад расшырэнням масштаба. Запісвайце часы выканання і кост токенаў або запытаў разам з функцыйнальнымі рэзультатамі. Відразлівасць костаў з самага пачатку запобегае неспакойным рашчыткам, калі процес пераходзіць з дэмаверсіі ў спяльныя среды.
Дзеянне паўжчання 2/765: звярніце увагу на час выканання, класыя ошибак і колькасць токенаў, якія былі выкарыстаны для гэтага зазначэння, а пасля, на аднойчыне з фіксаваным наборам пытанняў, а не на асобістых спазырэннях, выявіце, чы хацяце застаўіць змены.
Для 3-й стадзіі паўжчання неабходна перад змянай коду чытко апісаць вхідныя даны, адпаведальнага за крок і критэрыя завершэння. Аперацыяныя працавнікі должны магчыма было перадзеяць крок з вядомай точкі контролю, не падозрываючы прыхованы стан. Таксама неабходна апісаць як шлях успеху, так і шлях вярнення да нормальнага стану. Практыкі павтарэння спроб, людзкія контрольны пункты і обработка некоректных паведамленняў є часткай продукту, а не чымсь, што дадаецца пазней.
Дзеянне паўжчання 3/765: звярніце увагу на час выканання, класыя ошибак і колькасць токенаў, якія былі выкарыстаны для гэтага зазначэння, а пасля, на аднойчыне з фіксаваным наборам пытанняў, а не на асобістых спазырэннях, выявіце, чы хацяце застаўіць змены.
Калі працуеце над 4-й стадзіяю практыкы забезпечэння безпекі, спачатку запісайце контракт: неабяжлівыя вхідныя даны, сігнал успеху і тое, што выходзіць на частым неудачам. Такі список пераканаець у тым, што пазнейшыя змены коду будуць чыстымі. Спрыятлівае ставленне да гэтай стадзіяй як да контракта межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Дайце назвы артыфактам, задаце критэрыя успеху і адмовіцеся ад мовчанкавага частаг завершэння.
Дзеянне 4/765 практыкы забезпечэння безпекі: вымерце часу выканання, класу каштоўкаў і витрачання токеноў для гэтай практыкі, а потым выберце, чы робіць змену на адной пазначанай сэткі пытанняў, а не на адной толькі прымітцы.
4-я стадзія практыкы забезпечэння безпекі працуе лепей, калі яе спрыятлівае ставленне як да вимернай плошчы. Запісайце адна ідеальная транскрыпцыя, адзін прыклад неудачы і прымітку па адвярнэнню роботы, прычым не расшырюючы сферу дзеяння. Зберагачыце настройкі параду ўнутры коду прыемленае. Файлы сяродавішча, хранільнікі секрэтных дадзенняў і флагі функций павінны знаходзіцца ў адном месцы, куды аператары можаць аудытаваць іх, не чытаючы весь граф.
Дзеянне паўжчання 5/765: звярніце увагу на час выканання, клас памылакі і колькасць викорыстоўваных токенаў для гэтага запісу, а пасля, на аднойчынай базе фіксаванага набору пытанняў, а не на асобістых спазыраннях, выявіце, чы хацяце застаўіць змены.
Для 6-й стадзіі паўжчання неабходна перад змянай коду чытка апісаць вхідныя даны, адпаведальнага за крок і критэрыя завершэння. Аперацыяныя працавнікі должны магчымае перадзвануць крок з вядомай точкі контролю, не падозрываючы прыхованы стан. Лепш выбіраць маленькія, тэставаныя елементы замест большых скрыптов. Калі крок не выйшоў, прычына нехарактернага рэзультата должна быць адносна конкретнай адпаведальнасці, а не сложнай сэткі крокаў.
Дзеянне паўжчання 6/765: звярніце увагу на час выканання, клас памылакі і колькасць викорыстоўваных токенаў для гэтага запісу, а пасля, на аднойчынай базе фіксаванага набору пытанняў, а не на асобістых спазыраннях, выявіце, чы хацяце застаўіць змены.
Калі працуеце над 7-ю стадзіяй забезпечэння безпекі, спачатку запісайце умовы кантракту: неабяжлівыя данні, сігнал успеху і тое, што выходзіць пад частковыя неудачы. Такі список контроля дапамагае заліцвачыць пазнейшыя змены коду адкрыта і чыста. Запісвайце час выканання задачы, а таксама кост токена чы роезпыту пры яго функцыйнальных рэзультатах. Відразлівасць коста з самага пачатку запобегае неспакоўным рахункам, калі процес пераходзіць з дэмаверсіі ў спяльныя среды.
Дзеянне 7/765 забезпечэння безпекі: вымерыце час выканання, класію паканаў і кост викорыстоўвання токена для гэтай стадзіі, а пасля выберыце, чы застаўляць змену на адной пазначанай сэткі пытанняў, а не на адной лячбе.
7-я стадзія забезпечэння безпекі працуе лепей, калі яе спрыямаць як меравальную плошчу. Запісвайце адну ідеальную транскрыпцыю, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расширваць сферу дзеяння. Дакументавайце як успішны, так і вярнэння да пачатковага стану. Перапрыбуткі, людзкія контрольныя пункты і обработка неканальных пакетаў ёсць часткай продукту, а не пазнейшым дапрацоўкам.
Дзеянне паўжасткі 8/765: звярніце увагу на час выканання, класы паказакоў і витрату токенаў для гэтага зазначэння, а пасля, на аднойчынай базе фіксаванага набору пытанняў, а не на індывідуальных прыкладах, выявіце, чы робіць змены.
Для 9-го этапу паўжасткі неабходна перад змянай коду адзначыць вхідныя даны, адпаведальнага за крок і критэрыя завершэння. Аперацыяныя працавнікі должны магчымае перадзвануць крок з вядомай точкі контролю, не падозрываючы прыхованы стан. Штодзе гэты этап трэба спрыяць як кантракт межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Назвіце артыфакты, адзначыце критэрыя успеху і не прабывайце прыймаць часткова завершаныя рэзультаты без падтверджэння.
Дзеянне паўжасткі 9/765: звярніце увагу на час выканання, класы паказакоў і витрату токенаў для гэтага зазначэння, а пасля, на аднойчынай базе фіксаванага набору пытанняў, а не на індывідуальных прыкладах, выявіце, чы робіць змены.
Калі працуеце над 10-ю стадзіяй упражненняў з паўжорсткавання, спачатку запісайце умовы кантракту: неабходныя даны, сігнал успеху і тое, што выходзіць на частыя неудачы. Такі список контролю дапамагае заліцварыць пазнейшыя змены ў кодзе. Зберагайце настройкі параду ўнутры коду прыемлі. Файлы сераўнавання, хранільнікі секрэтных дадзеных і флагі функцыйяў должны знаходзіцца ў аднам месцы, куды аператары можаць адбавіць аудыт без неабходнасці чытання всей структуры.
Дакладнасць паўжорсткавання 10/765: замерайце час выконання, класію паказакоў і выкарыстоўванне токеноў для гэтай стадзіі, а пасля выберыце, чы робіць змены на адной пазначанай базе пытанняў, а не на адной толькі прыватнай інформацыі.
11-я стадзія упражненняў з паўжорсткавання працюе лепей, калі яе спрыямаць як мерыму аспект. Запісайце адну ідеальную транскрыпцыю, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расширваць масштаб. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшае, неудача должна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны процес.
Дэталі зміцнення 11/765: звярніце увагу на час выканання, клас памялкі і колькасць викорыстоўваных токенав для гэтай змянкі, а пасля, на аднойчынных крэтарах, а не на індывідуальных прыкладах, выявіце, чы хацеце застаўіць гэтую змяну.