Практычныя прытамулкі: чы можа «ворат рубрык» запярэдзіць агенту дзеяць неправильна?
Практычныя прытамулкі: чы можа крэтынг-ворат забараніць агенту выконваць неправильныя дзеяння? — інструкцыі з працэй, перакантрольвання та слоты для коду для команд, якія викорыстоўваюць гэты патэрн.
Існавайце гэта як перапрацоўку ідэй з артыкула «Чы можа рубрычная брама запярэчыць агенту выконваць неправильныя дзеяння?» для аператараў: чыстыя этапы, арранжаваныя слоты для коду і прыміткі з вяснавання, якія застаюцца пасля перадачы задання. Этап агульнага аналізу работае найкраща, калі яго спрыяваць як мерыемую паверхню. Запісаце адна ідеальная транскрыпцыю, адзін прыклад неудачы і прыміткі з вяснавання прычыны неудачы, перш чым расширваць масштаб задання. Валідзіце маленькія, тэставаныя елементы замест амбітных скрыптаў. Калі якісьць крок не выйшла, прычына неудачы павінна вказываць на адную адпаведальнасць, а не на заплутаны ланцюг дзеянняў.
Што вы створылі
Для этапа «Што вы створылі» неабяжна практычна вказаць інпуты, адпаведальную за крок особу та критэрыі завершэння пры перадзеяванні коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не падозрываючы схованы стан. Спрыяйце гэтам этапу як кантракту межа інпутамі та перакананым выходным данным. Дайце назвы артыфактам, практычна вказаць перакананні успеху та адмовіцеся ад бяспечнага частковага завершэння. Заставіце людзкую апраўду на тых кроках, дзе витрачаюцца грошы чы зміняюцыся даныя для працы. Компіляцыйны падключэння не ўзроўнаўваецца з пачатковым станом бізнесу.
APPROVE
DENY
ASK_CLARIFYING_QUESTION
ESCALATE
NO_ACTION
Baseline:
case -> agent -> final action
Gated:
case -> agent -> rubric judge
if failed -> retry once
retry answer -> final action
Важны выбор у дызайне
У важнай стадзіі выбору дыяграматыкі неабходна ўзначыць вхідныя даны, адпаведальнага за крок і критэрыя завершэння пры зміне коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не падозрываючы прыхованы стан. Запісваць час выконання і вартасць токеноў або запытак палягліва разам з функцыйнальнымі рэзультатамі. Відразлівае паказанне вартасцей запобегае неспадзячым расходам, калі процес пераходзіць з дэмовай среды ў спяльнаваныя сераўеры. Пры кроках, якія витрачаюць грошы або зменяюць даны ў працэсе, неабходна людская апраўка. Прыєднанне элементаў у час компіляцыі не ўзначае повнайсткай адпаведнасці з бізнес-трэбованнямі.
Рэзультат
Для стадіі рэзультата, перш чым зменяць код, неабходна ясная дэфініцыя вхідных даных, адпаведальнага за крок і крэтарыяў выходу. Аператары должны магчымае перзапускать крок з вядомай точкі контролю, не спрабоўваючы здагадвацца пра схованы стан. Канфігурацыю трэба залічыць параду ад коду прыкладнення. Файлы сераўіса, хранільнікі секрэтных дадзеных і флагі функцыйяў должны знаходзіцца ў аднам месцы, куды аператары можаць адбавіць аудыт, не чытаючы весь ланцуг задач. Прызначайце людскія апраўды для рэлейзаў, якія выкарыстоўваюць грошы або зменяюць даны ў працэсе. Прыўязка на час компілявання не є падтверджэннем полнайасці бізнес-процэсаў. Для стадіі рэзультата, перш чым зменяць код, неабходна ясная дэфініцыя вхідных даных, адпаведальнага за крок і крэтарыяў выходу. Аператары должны магчымае перзапускать крок з вядомай точкі контролю, не спрабоўваючы здагадвацца пра схованы стан. Валічыце маленькія, тэставальныя елементы працэсаў над вялікімі скрыптамі. Калі крок не выйшаў, прычына нехтарактару должна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцуг задач.
Што было парадканае воратамі
Кал працуеце над этапам «Што было парадканае воратамі», спачатку запісайце контракт: неабяжлівыя данні, сигнал успеху і тое, што выходзіць у разе частковага нявыпання. Такі список контроля дапамагае заліцварыць пазнейшыя змены ў кодзе. Спрэцьвачайце гэты этап як контракт межа даннімі і перакананымі выходамі. Дайце назвы элементам, задаце критэрыя успеху і не падзволяйце частковаму завершэнню без паведамлення. Зробіце пераконтроль пасля дорогіх крокаў. Програма не должна зноў выкарыстоваць той самы вызов LLM, калі аператар пракушае пазнейшы вузел.
Што ўсё яшчэ не парадканае
Калі працюеце над этапам «Што ўсё ж не запрацавало», спачатку запішыце умовы кантракту: неабяжныя даны, сігнал успеху і тое, што выходзіць пад частым неудачам. Такі список контроля дапамагае заліцвачыць змяны ў кодзе адкрыта і чэстна. Запісвайце час выканання і кост токена або запыту пад функцыйнальнымі рэзултатамі. Відразы коста з самага пачатку запобегае неспакоўным рахункам, калі працэс пераходзіць з дэмаверсіі ў спяльныя среды. Зробіце контрольную пазнаку пасля дорогіх крокаў. Система вярнення працы не должна знову нарахоўваць кост той самай вызову LLM, калі аператар перапрыяўляе роботу да наступнага вузла.
Чаму важная значэнне об’ектыўных рэзултатаў
Калі працуеце над этапам «Чаму важлівы цялявыя рэзультаты», спачатку запісайце умовы працы: неабяжлівыя данні, сигнал успеху і тое, што выходзіць у разе частковага невыпання. Такі список дапамагае заліцваліваць пазнейшыя змены ў кодзе. Зберагаюце настройкі паза кодам прыемлі. Файлы сераўнавання, хранільнікі секрэтных данных і флагі функцыйяў должны знаходзіцца ў аднам месцы, куды аператары можаюць адбавіць аудыт без неабяжлівага чытання всей структуры. Ставяце контрольныя пункты пасля дорогіх крокаў. Система вярнення праблем не должна занова ставіць плату за той самы вызов LLM, калі аператар перапрыяўляе роботу да наступнага элемента. Калі працуеце над этапам «Чаму важлівы цялявыя рэзультаты», спачатку запісайце умовы працы: неабяжлівыя данні, сигнал успеху і тое, што выходзіць у разе частковага невыпання. Такі список дапамагае заліцваліваць пазнейшыя змены ў кодзе. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі крок не выйшоў, прычына невыпання должна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаную структуру працы.
Што бы вы змянілі ў працэйным режыме
Этап «Што бы вы змянілі» працюе найэфектывней, калі яго розглядаць як мерыемую плошчу. Зафіксавайце адна ідеальная версія, адзін прыклад неудачы і запіс пра вярнэнне да поперадньяго стану пры розширэнні масштаба. Разглядзайце гэты этап як кантракт межу вхіднымі даннымі і пераканаленымі выходнымі рэзультатамі. Даўце назвы артыфактам, задаць критэрыя успеху і не падзеўляйцеся частым, непূরным выкананнем задач. Храніце стан графа як плоскі і з адначынным типам дадзеных. Вярсткаваныя блокі маскуюць інфармацыю пра тое, який вузел запісаў кожны поле, і спакойваюць працэс пасля перарываў.
Заканчэнне
Этап закрыцья працюе найэфектывней, калі яго розглядаюць як вимерную паверхню. Запісаўце адна «золатая» транскрыпцыя, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перш чым расширваць масштабы. Запісвайце часы выканання і косты токеноў або запытаў па боку ад функцыйнаых рэзультатаў. Візуабельнасць костаў з самага пачатку запобегае неспакойным рахункам, калі процес пераходзіць з дэмавай версіі ў спяльныя сераўы. Храніце стан графа простым і з адначыяным типам дадзеных. Вкладаныя блокі маскуюць інфармацыю пра тое, який вузел запісаў кожны поле, і спакшваюць продажчык роботы пасля перарываў.
Справакі
Этап «Апавяранні» працюе найэфектывней, калі яго спрыяваць як до меры можна. Зберагчыце адны ідеальны прыклад роботы, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расширваць сферу дзеяння. Храніце настройкі парадульна ад коду прыемліка. Файлы сяродавішняе сераўісу, базы секрэтных даных і флагі функцыйяў должны знаходзіцца ў аднам месцы, куды аператары можаць адбавляць контроль, не чытаючы весь граф. Храніце стан графа у простам і типаваным формате. Вярнутыя блокі маскуюць інфармацыю пра тое, канфігурацыйны вузел запісаў канкрэтны поле, і спакоююць продажу пасля перарываў. Этап «Апавяранні» працюе найэфектывней, калі яго спрыяваць як до меры можна. Зберагчыце адны ідеальны прыклад роботы, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расширваць сферу дзеяння. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшае, прычына неудачы должна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцоўкі дзеяння.
Чэрніцкі для аператараў
Калі працюеце над стадзіяй Кантрольнага списку, спачатку запісайце угоду: неабяжлівыя даны, сігнал успеху і тое, што выходзіць у разе частковага абярэння. Такі кантрольны список дапамагае заліцьваваць чыстасць пазнейшых змян у кодзе.
Документавайце як шлях успеху, так і шлях вярнення. Перапрыбуткі, людзкіе етапы контролю і обработка некоректных паведамленняў ёсць часткай продукту, а не пазнейшым дапрацоўкам.
Зробіце кантрольную паўзу пасля дорогіх крокаў. Система вярнення не павінна зноў нарахоўваць кашты за той самы вызов LLM, калі аператар перапрыбуе пазнейшы вузел.
Фіксавайце версіі залежнасцяў і запісвайце хэш адобраза, які выканаў дэманстрацыю. Возможнасць павторнага стварэння результата лепшая за традыцыйныя знаёмства.
Валічыце маленькія, тэставаныя елементы замест большых скрыптов. Калі крок абярэння, абярэнне павінна вказваць на адну адповядальнасць, а не на заплутаны процес.
Зробіце кантрольную паўзу пасля дорогіх крокаў. Система вярнення не павінна зноў нарахоўваць кашты за той самы вызов LLM, калі аператар перапрыбуе пазнейшы вузел.
Перш чым запускать даную систему, заморозьце версіі, зафіксавце ідеальны прыемнік дадзеных для критичнага шляху тэрапрыцэй і паказваце крокі для атрыбуцыі. У спяльных сэрвісах неабходны ліміты частоты запытоў, пераканання ў правільнасці арендавання ресурсоў і чыста вялічына адпаведальнага за ротацыю секрэтных даных. Лепш выбіраць простую надзею на надзейнасць, чым хітрыя експерыментальныя дэманстрацыі.
Прыметка для пакета 982480285982: не кладзіце ключы прадаўцоў у репазітарый, задаце максимальную кантитатыву токена на адну сесію і зберагачыце прыемнікі дадзеных рядом з фіксатрамі для ацэнкі, каб пазнейшыя замены модэляў заставаліся пораўнанымі.
Прыметка па змяцэнню захоўнасці на стадыі 0 найкраща працюе, калі яе спрыямаць як мерыму плошчу. Зафіксавце аднаго ідеальнага прыемніка дадзеных, аднаго кейса аббячэння і прыметку па атрыбуцыі перш чым расширваць масштаб. Лепш выбіраць маленькія, тэставаныя елементы, чым вялікія скрыпты. Калі якісь крок аббячэцца, прычына аббячэння павінна вказываць на адную адпаведальнасць, а не на заплутаны ланцоўкі дзеянняў.
Дзеянні паўжасткі 0/641: звярніце увагу на час выканання, клас памылак і колькасць викорыстоўваных токенав для гэтага зьязку, а пасля, на аднойчынай базе фіксаваных пытанняў, а не на індывідуальных прыкладах, выявіце, чы хацеце застаўіць гэтыя змены.