Практычныя прытамулкі: Большая вікна контэкста не вырашыць проблему вашага агента
Практычныя прытамулкі: Як што больша вікна контэксту не вырашыць проблемы вашага агента: контракты, перакантрольванні та слоты для коду для команд, якія використоўваюць гэты патэрн.
Існуець версія, адаптаваная для аператараў, з ідеямі з статты «A Bigger Context Window Won’t Fix Your Agent»: чыстыя этапы, арранжаваныя слоты для коду і прыміткі з восстанавлення, якія застаюцца пасля перадачы.
Кантэкстны аблака — це бюджет увагі, а не ўместнасць. Як працюе Lost in the Middle, калі застосавляць стисненне, сяржаныя аблака і компактаванне — і дзе вы тыражуеце свой кэш.
Кантэкстны аблака лепш працуюць, калі іх спрыяваць як вимерную паверхню. Запісаўце адна ідеальная транскрыпцыю, адзін прыклад неудачы і прыміткі з вярнення да пачатку перш чым расширваць масштаб. Дакументаваць трэба як успішны, так і патовы шляхі. Перапрыбуткі, людзкія контралі і обработка некоректных паведамленняў є частью продукту, а не наступным этапам дапрацоўкі. Стан графаў трэба падтрымваць простым і з типаваннем. Вярстакаваныя блокі маскуюць, який вузел запісаў кожны поле, і спакшваюць вярненне да роботы пасля перарываў.
Едзіна рэч, яку трэба знать, якщо не чытаць далей
Процэс «The One Thing to stage» працуе наяўней, калі яго спрыявае можна вымерыць структура. Запісаўце адна «золатая» транскрыпцыя, адин прыклад неудачы і запіс пра вярнэнне да попераднего стану, перш чым расширваць масштабы. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісьць крок не выйшла, прычына неудачы павінна вказваць на адную адпаведальнасць, а не на заплутаны ланцужок задач. Рэгулюйце стан графа так, каб ён быў простым і з адначыяным типам дадзеных. Вкладаныя структуры дадзеных маскуюць інфармацыю пра тое, канкрэтны вузол запісаў канкрэтнае поле, і спакшваюць продажчык задач пасля перарываў.
Кантэкст — гэта не сховішча, а бюджет, які заканчываецца
Этап «Контэкст» працюе найкраща, калі яго розглядаць як вимерную плошчу. Зафіксавце адзін ідеальны прыклад, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расширваць масштабы. Разглядзіце гэты этап як кантракт межа вхіднымі даннымі і пераканаленымі выходнымі рэзультатамі. Дайце назвы артыфактам, задаце критэрыі успеху і не падзейцеся частым, непূরным викананнем задач. Раздзеліце правілы часткавага абрабатавання данных і правілы ўзяць іх зберагае. Змена адных не павінна вымагаць перапісву іншых, калі зменяюцца показнікі якосці.
Крывая, якая не знікне
Этап «The Curve That Won» працюе найкраща, калі яго розглядаць як вимерную паверхню. Запісаўце адна «золатая» транскрыпцыя, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перш чым расширваць масштабы. Запісвайце часы выканання і кост токеноў або запытаў праза функцыйнае рэзультат. Відкрытыя данні пра косцы заранее запобегаюць неспакоўным рахункам, калі процес пераходзіць з дэмаверсіі ў спяльныя сераўы. Храніце стан графа як плоскі і з адзінаковым типам дадзеных. Вкладаныя блокі маскуюць інфармацыю пра тое, який вузел запісаў кожны поле, і спакшваюць продажчэнне роботы пасля перарываў.
Чатыры суперэгуючыя адказы, жаднага заканальнае
Этап «Чатыры суперасункіяў, нічога» працуе наякша, калі яго спрыяглядаць як вимерную паверхню. Зберагчыце адна ідеальная транскрыпцыя, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расширваць масштаб. Зберагчыце настройкі параду ўнутры коду прыемлена. Файлы сераўіса, хранільнікі секрэтных дадзеных і флагі функцыйяў должны знаходзіцца ў аднам месцы, куды аператары можаць адбавляць контроль без неабяжнага чытання всіх дадзеных. Зберагчыце стан графа ў простам і типаванам формате. Вярнутыя блокі дадзеных маскуюць інфармацыю пра тое, канфігурацыйны вузел запісаў канкрэтнае поле, і спакойваюць працу пасля перарываў. Этап «Чатыры суперасункіяў, нічога» працуе наякша, калі яго спрыяглядаць як вимерную паверхню. Зберагчыце адна ідеальная транскрыпцыя, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расширваць масштаб. Валідзіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшаў, прычына неудачы должна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцоўкі задач.
Што на самай працоўнае рашанае, а шта — ні
У стадії «Што насправды было рашана» неабяжна практычна апісаваць вхідныя даны, адпаведнага адпаведальнага за крок і критэрыі завершэння перад змянайом коду. Аперацыіявыяя людзі павінны магчымаць перапрацоўваць крок з вядомага пункта контролю, не спрабоўваючы здагадвацца пра схованы стан. Спрыяйце гэтай стадіі як даговору межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Даўце назвы артыфактам, практычна апісаваць перакананні на успех і не прымайце тыхняе часткова завершэнне. Забяжна ўключыць людскія апраўданні для тых крокаў, якія выкарыстоўваюць грошы або зміняюць даны для працы. Компіляцыйныя налашчэнні не ўзроўнаваны з абсягам выконання бізнес-задач.
Адна фраза, якая павысіла рэйтынг з 27% да 98%
Для ўрагу «Адна фраза, яка змяніла все» неабходна ўзгадка пра вхідныя даны, адпаведальнага за крок і крэтарыяў завершэння працы ўжо перад змянай коду. Аператары должны магчымае перзапускать крок з вядомай точкі контролю, не прабуючы спадарожваць схованы стан. Запісвайце час выконання і вартасць токенаў або запытак па боку функцыйнаых рэзультатаў. Відразлівае паказанне вартасцей запобегае неспадзяваным рахункам, калі процес пераходзіць з дэмавай версіі ў спяльнаныя сераўеры. Заставьце людзкія апраўданні на тых кроках, дзе выконваюцца грошовыя расходы або зміняюцыся даны для працы. Компіляцыйныя налашчэнні не ўзначаюць павнае адпраўлення проекту.
Механізм: чаму важна правильная пазіцыя
Для стадіі «Механізм прычыны пазыціі» неабходна ўскладнення вхідных дадзэнняў, абавесця крока і крэатарыяў выходу пры змены коду. Аператары должны магчымае перзапускать крок з вядомай точкі контролю, не спрабоўваючы здагадвацца пра схованы стан. Канфігурацыю трэба захаваць праз аддзел ад коду прыкладнення. Файлы сераўіса, хранальнікі секрэтных дадзэнняў і флагі функцый належыць у аднам месца, якое аператары можаць пераглядаць без неабходнасці чытання всей структуры. Паставіць людзкую апраўду на тыя рэласіі, якія выкарыстоўваюць грошы або зміняюць даны праўай працы. Прыўязка ў часе компілявання не абавесцяе полнайсты ўсіх бізнес-процэсаў. Для стадіі «Механізм прычыны пазыціі» неабходна ўскладнення вхідных дадзэнняў, абавесця крока і крэатарыяў выходу пры змены коду. Аператары должны магчымае перзапускать крок з вядомай точкі контролю, не спрабоўваючы здагадвацца пра схованы стан. Валічыце маленькія, тэставальныя елементы пра велікія скрыпты. Калі крок не выйшоў, прычына нехарактэрнага рашэння должна вказываць на адную абавесць, а не на сумяшаныя фактыры.
Этап адаптацы пайплайна.
Наследкі працы выходзяць за межы якосці адказа
Калі працуеце над этапам «Наследкі працы выходзяць за межы якосці адказа», спачатку запісайте угоду: неабяжлівыя данні, сигнал успеху та тое, што выходзіць на падзею частковага невыпання. Такі список пераконвае ў тым, што пазнейшыя змены коду будуць чыстымі. Спрыятлівае ставленне да гэтага этапу як да угоды межаў між вхіднымі даннемі та перакананымі выходнымі рэзультатамі. Дайце назвы артыфактам, задаць критэрыя успеху та адмовіцеся ад беззвучнага частковага завершэння. Стварайце контрольныя пункты пасля дорогіх крокаў. Система вярнення не павінна знову ставіць плату за той самы вызов LLM, калі аператар праканае пазнейшы вузел.
Тры інструменты ў наборе: стисненне, вікно, компактаванне
Калі працуеце з Трыма інструментамі на данай стадзіі, спачатку запісаце кантракт: неабяжлівыя даны, сігнал успеху і тое, што выходзіць у разе частковага неяксамоства. Такі список пераканальвае правдзівасць пазнейшых змян у коде. Запісваце часы выканання і кост токена або запиту праз результаты функцыйнальнай работы. Відразлівасць коста з самага пачатку запобегае неспакоўным рахункам, калі парадокс пераходзіць з дэмаверсіі ў спяльныя среды. Запісваце назву інструмента, хэш аргументаў, час затрымкі і результат кожнага вызову. Без такога следу дэбаггінгавы агент траціць гадзіны на безрезультатныя прабыткі.
Кампрэсія запитаў: прабязы і яе слабасці
Калі працуеце над стадзіяй «Prompt Compression The Promise», спачатку запісайце контракт: неабяжлівыя даны, сигнал успеху і тое, што выходзіць у разе частковага нявыпання. Такі список контроля дапамагае заліцьварыць пазнейшыя змены коду. Зберагаеце настройкі пазняй ад коду прыемліка. Файлы сераўнавання, храненні секрэтных данных і флагі функцыйяў должны знаходзіцца ў аднам месцы, куды аператары можаюць адбавіць аудыт без неабяжлівага чытання всей структуры. Зберагаеце у кэшы стабільныя інструкцыі системы і схемы інструментаў. Перадзесланне ідэнтычных даных — частая прычына витрацы ресурсаў. Калі працуеце над стадзіяй «Prompt Compression The Promise», спачатку запісайце контракт: неабяжлівыя даны, сигнал успеху і тое, што выходзіць у разе частковага нявыпання. Такі список контроля дапамагае заліцьварыць пазнейшыя змены коду. Валіце маленькія, тэставаныя елементы працы над вялікімі скрыптамі. Калі якісь крок не выйшаў, прычына нявыпання должна вказываць на адну конкрэтную абавязку, а не на заплутаную ланцоўку задач.
Тры стратэгіі для кантролю трываласці гэтыя сесыі
Тры стратэгіі для кантролю трываласці гэтыя сесыі работаюць наўжоўдзе, калі іх спрыяваць як мерыемую структуру. Запісаўце адну ідеальную транскрыпцыю, адзін прыклад неудачы і прыметкі па адкату перш чым расширваць масштаб. Спрыявайце гэты ўражак як кантракт межа вхіднымі дадзеннямі і пасвярджанымі выходнымі рэзультатамі. Даўце назвы артыфактам, задаце критэрыя успеху і адмовіцеся ад бяспечнага частковага завершэння. Зберагачыце стан графа ў простам і типаванам формате. Вярнутыя блокі маскуюць, який вузел запісаў кожны поле, і спакшваюць возз'ядзенне пасля перарываў.
Пастка: Калі стысненне разрушае вашу зніжку за кэш
Адаптаванне на стадыі стыснення дае найкращыя рэзультаты, калі яго спрыявае аналіз як меравальнай плошчы. Запісаўце адна ідеальная транскрыпцыя, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перш чым расширваць масштабы. Запісвайце часы выконання і косты токеноў або запытак праза функцыйнае рэзультаты. Відкрытыя данні пра косты з’являюцца рана, таму не будзе неспакою з рахункамі, калі праця перейдзе з дэмаверсіі ў спакульнаныя сераўысы. Зберагайце стан графа ў простам і типаваным формате. Вярнутыя структуры маскуюць інфармацыю пра тое, який вузел запісаў кожны поле, і спаказваюць працу пасля перарываў.
Правіла жорсткага прыфіксу
Этап правіла жорсткага прыфіксу працюе найэфектывней, калі яго спрыяваць як меравальную паверхню. Зберагчыце адна ідеальная транскрыпцыя, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расширваць сферу дзеяння. Зберагчыце настройкі за межамі коду прыемлі. Файлы сераўнавальнага сяродавішча, хранілішчы секрэтных данных і флагі функцый должны знаходзіцца ў аднам месцы, куды аператары можаць адбавляць контроль без неабяжнага чытання всіх элементаў структуры. Стан структуры должен быць простым і адзінаковага типу. Вярсткаваныя элементы маскуюць інфармацыю пра тое, який вузел запісаў канкрэтны поле, і спакоююць працу пасля перарываў. Этап правіла жорсткага прыфіксу працюе найэфектывней, калі яго спрыяваць як меравальную паверхню. Зберагчыце адна ідеальная транскрыпцыя, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расширваць сферу дзеяння. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшае, прычына неудачы должна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаную структуру працы.
Што робіць у понедзелкі вечара
Для падзеў «Што робіць на сцэне» неабходна пазначыць вхідныя даны, адпаведальнага за кожны крок і критэрыя завершэння пры зміне коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не прабуючы спадарацца пра схованы стан. Спрыяйце цім падзею як контракту межы вхідных даных і перакананых выходных рэзультатаў. Даць назвы артыфактам, пазначыць критэрыя успеху і не прымаць тыхнучых частковых рэзультатаў. Заставіць людскія апраўданні для тых крокаў, якія выкарыстоўваюць грошы або зміняюць даны праўай працы. Працэс складання коду не є адпаведнікам пачатковай цэлесапраўленасці бізнесу.
Падсумак
У стадії падробнага аналізу неабяжна ўважна падбор супутніх даных, адпаведнага адпаведальнага за крок і крэтарыяў завершэння працы перад змінайом коду. Аператары должны магчымае запускаваць крок з вядомай точкі контролю, не прабуючы спадарожваць схованы стан. Запісвайце час выконання і кост токенаў або запытаў праза функцыйнае рэзультат. Відразліва візуабільнасць костаў запобегае неспакойным рахункам, калі процес пераходзіць з дэмовай среды ў спакульнаныя сераверы. Заставіце людзкую апраўдку для тых крокаў, якія выкарыстоўваюць грошы або зміняюць даны ў працэсе. Компіляцыйныя налашчанні не ўзначаюць павнае адпрацоўванне бізнес-функцыйяў.
Чэк-ліст для эксплуатацыі
Калі працюеце над чэк-лістам для эксплуатацыі, спачатку запісвайце умовы: неабяжныя супутнія даны, сігнал успеху і што выканаецца у разе частковага абякання. Такі чэк-ліст дапамагае заставіць пасляўсія змены коду чыстымі і прозрачнымі.
Запісвайце адно часовы шлях і шлях вярнення ў нормальны стан. Практыкі перапрыбутку, людзкія контралеры і обработка некоректных паведамленняў є часткай продукту, а не чымсь, што дадаецца пазней.
Зробіце контрольны пункт пасля дорогіх крокаў. Функцыя продазвучання не должна знову нараховваць плата за той самы вызыв LLM, калі аператар перапрыбуе пазнейшы вузел.
Зафіксавайце версіі залежнасцяў і запісвайце хэш адпаведнага зображэння, якое викорыстоўвалася для дэманстрацыі. Возможнасць перадарабаткі важлівейшая за традыцыйныя знання.
Валічыце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок збягае, прычына бягу должна быць відносаваная да адной конкрэтнай адпаведальнасці, а не да заплутанага ланцоўка дзеянняў.
Зробіце контрольны пункт пасля дорогіх крокаў. Функцыя продазвучання не должна знову нараховваць плата за той самы вызыв LLM, калі аператар перапрыбуе пазнейшы вузел.
Перш чым запускать стак, заморозьце версіі, зафіксавце «золаты» транскрыпты для критичных шляхоў і паказваце крокі для атрыбуцыі. У спакаваных средах неабходны ліміты частоты, перакананні ў належнасці тэнантам і чыстае адпаведальнае аб’екта для ротацыі секрэтных дадзенняў. Валіце простую надзяйнасць працоўнікам, чым хітрыя разовыя дэманстрацыі.
Прыметка для пакета e804e57ba0f6: не кладзіце ключы прадаўцаў у репазітарый, задаце верхнюю межу токеноў на сесію і зберагачыце транскрыпты празаўсёды разам з фікстурамі eval, каб пазнейшыя замены модэляў заставаліся порównанневымі.
Калі працуеце над пунктом 0 з адзычнення, спачатку запісаце контракт: неабходныя вхідныя даны, сігнал успеху і тое, што выходзіце ў разы частковай нявыполненасці. Такі список пераканаў заставляе пазнейшыя змены коду быць чыстымі. Зберагачыце настройкі празаўсёды за межамі коду аплікацыі. Файлы среды, хранільнікі секрэтных дадзенняў і флагі функций должны знаходзіцца ў аднам месцы, якое аператары можаць пераглядаць без неабходнасці чытання всей структуры.
Дзеянне паўжасткі 0/865: звярніце увагу на час выканання, клас памылкі і колькасць выкарыстоўваных токенаў для гэтага зьязначэння, а пасля, на аднойчынай базе фіксаванага набору пытанняў, а не на асобістых спазырэннях, выявіце, чы хацяце застаўіць змены.
Этап 1 паўжасткі працюе найэфектывней, калі яго розглядаць як меравальную плошчу. Запісаце адну ідеальную версію, адзін прыклад памылкі і зьязначэння пра адвярненне змян, перш чым расширваць сферу дзеяння. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісьць кроку не выходзіць, памылка должна адносіцца да конкрэтнай адпаведальнасьці, а не да заплутанага ланцоўка дзеяння.
Дзеянне паўжасткі 1/865: звярніце увагу на час выканання, клас памылкі і колькасць выкарыстоўваных токенаў для гэтага зьязначэння, а пасля, на аднойчынай базе фіксаванага набору пытанняў, а не на асобістых спазырэннях, выявіце, чы хацяце застаўіць змены.
Для другага этапа прыцелення на змягчэнне ризыкавання неабяжна практычна ваказка: перад змінайом код неабяжна адначасна вызначыць параметры вводу, адпавядаючага адпаведальнага за крок і критэрыі завершэння. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не падозрываючы прыхованы стан системы. Празначайце час выконання кроку, а таксама вартасць токенаў чы запытак праз адначасна з функцыйнальнымі рэзултатамі. Відразы вартасцяў з самага пачатку запобегае неспакойным рашчыткам, калі процес пераходзіць з дэмавайнага режыма ў спяльныя среды.
Дзеянне прыцелення на змягчэнне ризыкавання 2/865: змяроўваюце час выканання кроку, класы памылак і вартасць викорыстоўваных токенаў для гэтай ваказкі, а пасля на базе фіксаванага набору пытанняў, а не індывідуальных спазыроў, вырашайце, чы трэба застаўіць змяну.
Калі працуеце над 3-й стадзіяю прыемкі з паўнейшага захавання, спачатку запісайце угоду: неабходныя даны, сігнал успеху і тое, што выходзіць на частым неудачам. Такі список контролю дапамагае заставіць пазнейшыя змены коду быць чыстымі.
Документавайце як шлях успеху, так і шлях вярнення. Перапрыбуткі, людзкія контралі і обработка некоректных паведамленняў ёсць частью продукту, а не пазнейшым дапрацоўкам.
Дзялённе 3/865 прыемкі з паўнейшага захавання: вымерайце час выконання, класію памылак і витрату токенав для гэтай прыемкі, а потым выявіце, чы хацеце застаўіць змену на адной фіксаванай сэтке пытанняў, а не на адной лічбе прыкладаў.
3-я стадзія прыемкі з паўнейшага захавання работае лепей, калі яе спрыямаць як вымерную плошчу. Запісайце адну ідеальную транскрыпцыю, адзін прыклад неудачы і запіс пра вярненне да пачатковага стану, перш чым расширваць масштаб.
Спрыяйце гэтай стадзіі як угоды межаў між вхіднымі данымі і перакананымі выходнымі рэзультатамі. Назвайце артыфакты, задаць критэрыя успеху і адмовіцеся ад тыхнай частковай, неконтрольаванай завершэння.
Дзеянне паўжасткі 4/865: звярніце увагу на час выканання, класы памылак і витрату токенаў для гэтага зьвісткі, а пасля, на аднойчынай базе фіксаванага набору пытанняў, а не на індывідуальных прыкладах, выявіце, чы рэшыцца застаўіць змяну.
Для 5-го этапа паўжасткі неабходна перад змянай коду чытача апісацыю вхідных дадзенняў, адпаведальнага за крок і крэатарыяў завершэння. Аперацыйныя працавнікі павінны магчымае перадзьвіжваць крок з вядомага пункта контролю, не спрабоўваючы здагадвацца пра схованы стан. Канфігурацыю трэба зберагчы за межамі коду прыемленае. Файлы сяродавішча, хранільнікі секрэтных дадзенняў і флагі функцияў павінны знаходзіцца ў аднам месцы, якое працавнікі можуць пераглядаць, не чытаючы весь граф.
Дзеянне паўжасткі 5/865: звярніце увагу на час выканання, класы памылак і витрату токенаў для гэтага зьвісткі, а пасля, на аднойчынай базе фіксаванага набору пытанняў, а не на індывідуальных прыкладах, выявіце, чы рэшыцца застаўіць змяну.
Калі працюеце над 6-й стадзіяю практыкы забезпечэння безпекі, спачатку запісайце умовы кантракта: неабяжлівыя данні, сігнал успеху і тое, што выходзіць на частым неудачам. Такі список контроля дапамагае залічыць пазнейшыя змены ў кодзе чыстымі. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшае, неудача должна вказваць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцужок задач.
Дзеянні практыкы забезпечэння безпекі 6/865: звярзайце меры часу выканання, класу каштоўкаў і витрачання токенав для гэтай практыкі, а потым выберыце, чы робіць змены на адной основе фіксаванага набору пытанняў, а не на адной лячбе.