Галоўная / Артыкулы / Практычныя прытамулі: Інжынерыя графаў для агентаў кодавання на базе AI: за межамі цыклаў запрошэнняў

Практычныя прытамулі: Інжынерыя графаў для агентаў кодавання на базе AI: за межамі цыклаў запрошэнняў

Практычныя прыказкі: Інжынерыя графаў для агентаў кодавання на AI: за межамі цыклаў запрошэнняў — кантракты, пераказы і слоты для коду для команд, якія выкарыстоўваюць гэты патэрн.

2228 слоў

Існавайце гэта як перапрацоўаны варыянт ідэй з кніги «Graph Engineering for AI Coding Agents: Beyond Prompt Loops», адпрацаваны для аператараў: чыстыя этапы, аранжаваныя блакіткі коду і прыметкі па вяснаванню, якія застаюцца пасля перадачы. Этап Апглэву лепш працюе, калі яго розглядаць як вимерную плошчу. Запісаўце адна ідеальная транскрыпцыю, адзін прыклад неудачы і прыметку па адвярненню роботы, прычаму расшырваць масштаб не трэба. Дакументавайце як успішны, так і няуспешны шляхы роботы. Перапрыбуткі, людзкія контрольны пункты і обработка некоректных поведанняў ёсць частью продукту, а не пасляднім дапрацоўкам.

Короткая прыметка па інжынерыі графаў

Для швыдкага прыказу на сцэне, перад змінайом код неабяжна визначыць вхідныя даны, адпаведальнага за крок і критэрыя завершэння. Аперацыіям павінна быць можлівасць перзапускаць крок з вядомага пункта контролю, не спрабоўваючы здагадвацца пра схованы стан. Лепш выбіраць маленькія, тэставаныя елементы замест большых скрыптов. Калі крок не выйшоў, прычына неудачы павінна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцюг задач. Калі наступны крок — це код або вызов інструмента, лепш выкарыстоўваць структураваныя выходны даны з пераканальваннем схэмы, замест вольнага формата тэксту.

Две запытанні, якія продавжалі меня турбаваць

Для стадіі «Два пытання» неабяцкова ўзначыць вхідныя даны, адпаведальнага за крок і крэтырыя завершэння пры зміне коду. Аперацыйныя працавнікі должны магчымае запускаць крок з вядомай точкі контролю, не падозрываючы схованы стан. Спрыяйце цій стадіі як кантракту межы вхіднымі данымі і перакананымі выходнымі рэзультатамі. Даўце назвы артыфактам, узначыце перакананні на успех і адмовіцеся ад тыхняга частковага завершэння без паведамлення. Калі наступны крок — це код або вызов інструмента, валідаванне за дапамою схемы лепша, чым вольная проза з структураванымі выходнымі даннымі.

Кантэкст і кантракты: Две базовыя складовы

Для контексту і кантрактаў: на стадіі паперкавання неабходна з’явіць вхідныя даны, адпаведальнага за крок і крэтыры завершэння пры змяне коду. Аперацыйныя працавнікі должны магчымае перзапускаць крок з вядомай точкі контролю, не падозрываючы прыхованы стан. Запісваць час выконання і вартасць токенаў або запытак праза функцыйнае рэзультат. Відкрытая візуалізацыя вартасцей запобегае неспакоўным рахункам, калі процес пераходзіць з дэмовай среды ў спакульную. Калі наступны крок — це код або вызов інструмента, лепш выкарыстоўваць структураваныя выходныя даны з перакананнем схэмы, чым вольныя тэкстовыя форматы. Для контексту і кантрактаў: на стадіі паперкавання неабходна з’явіць вхідныя даны, адпаведальнага за крок і крэтыры завершэння пры змяне коду. Аперацыйныя працавнікі должны магчымае перзапускаць крок з вядомай точкі контролю, не падозрываючы прыхованы стан. Адначасова документаваць шлях успеху і шлях вярнення. Перапрыбуткі, людзкія контрольныя пункты і обработка некоректных паведамленняў є часткай продукту, а не елементамі пазнейшага доўнесення.

З ідэі да графа

Калі працуеце над этапам «З ідэі», спачатку запісайце контракт: неабяжлівыя даны, сігнал успеху і тое, што выканаецца у разе частковага нявыполнення. Такі список пераканаець у тым, што пазнейшыя змены коду будуць чыстымі. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшоў, прычына нявыполнення павінна вказваць на адну адпаведальнасць, а не на заплутаны ланцужок задач. Зберагаеце у кэшы стабільныя інструкцыі системы і схемы інструментаў. Перадача таго ж прамэра знову є частым выклікам ресурсоў.

Тэставанне ContractGraph

Калі працуеце над пераводам ContractGraph у практычны стадія, спачатку запісайце умовы контракту: неабяжлівыя вхідныя даны, сигнал успеху і тое, што выходзіць у разе частковага невыпання. Такі список контроля дапамагае заліцварыць пазнейшыя змены ў кодзе. Спрэцьвуйце гэты стадія як контракт межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Дайце назвы элементам, задаце критэрыі успеху і не падтрымайце часткова завершэння без паведамлення. Зберагачвайце інструкцыі стабільной системы та схемы інструментаў у кэшы. Перадача ідэнтычных прамулкіў — частая прычына змарнавання ресурсаў.

Дзе была проблема

Калі працуеце над стадзіяй «Дзеяна адказка», спачатку запісайце умовы працы: неабяжлівыя данні, сигнал успеху і тое, што выканаецца пад частковай нявыходзе. Такі список контролю дапамагае заставіць пазнейшыя змены коду быць чыстымі. Запісвайце час выканання і кост токена або запыту пад функцыйнальнымі рэзултатамі. Відразы коста з самага пачатку запобегае неспакоўным рахункам, калі процес пераходзіць з дэмаверсіі ў спяльныя среды. Зберагаеце у кэшы стабільныя інструкцыі системы і схемы інструментаў. Перадзял у тое ж самае прамэру — частая прычына витрацы супэльных ресурсаў. Калі працуеце над стадзіяй «Дзеяна адказка», спачатку запісайце умовы працы: неабяжлівыя данні, сигнал успеху і тое, што выканаецца пад частковай нявыходзе. Такі список контролю дапамагае заставіць пазнейшыя змены коду быць чыстымі. Аддзекументавайце як «шчаслівы» шлях, так і шлях вяснавання. Перапрыбуткі, людзкія контрольныя пункты і обработка некоректных паведамленняў є часткай продукту, а не чыставаннем пазнейша.

Чаму важна дэтэрміністычная верыфікацыя

Этап «Прычыны, чаму важна дэтэрміністычная пераверкі» працюе наяўней, калі яго розглядаць як вимерную плошчу. Запісаўце адна ідеальная транскрыпцыя, адзін прыклад неудачы і прыметку па адкату перш чым расширваць масштаб. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выходзіць, прычына неудачы павінна вказываць на адную адпаведальнасць, а не на заплутаны ланцужок задач. Задаўце ліміт токенав на кожны раунд і на кожную сесію. Агентныя інструменты агрэсывна расширваюць контекст; строгі ліміты не дазволяюць дэмам ператварыцца на неспакоўныя рахункі.

Прычыны, чаму вы яшчэ сцяроглі, што це вартая спраба

Этап «Прычыны, чаму вы яшчэ смярзіце, што ён працюе найкраща», лепшае розглядаць як меравальную площыну. Зафіксавце адны ідеальны прыклад, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расширваць масштабы. Разглядзіце гэты этап як кантракт межу вхіднымі даннымі і паўнастацэннымі выходамі. Дайце назвы артыфактам, задаце критэрыя успеху і не падзеўляйцеся частым, непূরным выкананнем задач. Задаце ліміт токенав на кожны раунд і на кожную сесію. Інструменты-агенты агрэсывна расширваюць контекст; строгі ліміты не дазволяюць дэмам ператварыцца на неспакоўлівыя рахункі.

Рэальныя витраты на інжынерію графаў

«Рэальная вартасць» на стадыі розрабоцтва працюе найэфектывней, калі яе спрыяваць як вимерную величыну. Зберагачыце адны ідеальны прыклад роботы, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перш чым расширваць масштабы. Запісвайце час выканання задач і вартасць токеноў чы запытанняя пры кожных функцыйнаых рэзультаатах. Відразлівае прадставленне вартасцей з самага пачатку запобегае неспакоўным рахункам, калі процес пераходзіць з дэмавай версіі ў спяльныя сераўысы. Задаць бюджет на токены на кожны раунд і на кожную сесію. Інструменты з агентным падходам агрэсіўна расширваюць контекст; жорсткія ліміты не дазволяюць дэмавай версіям ператварыцца на неспакоўныя рахункі. «Рэальная вартасць» на стадыі розрабоцтва працюе найэфектывней, калі яе спрыяваць як вимерную величыну. Зберагачыце адны ідеальны прыклад роботы, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перш чым расширваць масштабы. Дакументавайце як успешны, так і няуспешны шляхі роботы. Перапрыбуткі, людзкія контрольны пункты і обработка некоректных запытанняя ўжо є часткай продукту, а не чымсь, што дадаецца пазней.

Калі інжынерыя графаў ёсць карытая

У стадії «Інжынерыя графа часу» неабходна практыка адзначэння вхідных дадзеных, адпаведальнага за крок і крэтарыяў завершэння працы перад зменым коду. Аперацыйныя працавнікі должны магчымае перадзваніць крок з вядомай точкі контролю, не падозрываючы прыхованы стан. Лепш выбіраць маленькія, тэставаныя елементы замест большых скрыптов. Калі крок не выканаецца, прычына неудачы павінна вказываць на адзін конкрэтны аспект, а не на заплутаны ланцюг задач. Калі наступны крок — це код або вызов інструмента, лепш выкарыстоўваць структураваныя выходны данні з перакананням ў ўсасце схемы, замест вольнага формата тэксту.

Заключныя меркі

У стадії «Заключныя заўважэнні» неабходна практычна адзначыць вхідныя даны, адпаведальнага за крок і критэрыя завершэння пры перадзеўранні коду. Аператары должны магчымае перадзеўваць крок з вядомай точкі контролю, не падозрываючы прыхованы стан. Спрыяйце цій стадіі як даговору межаў вхідных даных і перакананых выходных рэзультатаў. Даць назвы артыфактам, практычна адзначыць перакананні успеху і не праглядаць частковае завершэння без адзначэння. Калі наступны крок — це код або вызов інструмента, лепш выкарыстоўваць структураваныя выходныя рэзультаты з перакананнем схемы, чым вольнае пісьменне выражэння.

Чек-ліст для аператывай працы

Працюючы над стадіяй чек-ліста для аператывай працы, спачатку запісуйце даговор: неабходныя вхідныя даны, сігнал успеху і тое, што выходзіць у разе частковага невыпання. Такі чек-ліст дапамагае заставіць пасляэтапныя змены коду быць чыстымі.

Зберагаюце канфігурацыю пазначкай за межамі коду прыемліка. Файлы сераўнавання сяродовысці, храненні секрэтных дадзенаў і флагі функцияй павінны знаходзіцца ў адном месцы, куды аператары можаюць адбавіць аудыт без неабяжнага чытання всей структуры.

Зберагаюце у кэшы стабільныя інструкцыі системы і схемы адзінакоў. Павторна адправка ідэнтычных дадзенаў ёсць частым выклікам зношэння ресурсаў.

Зберагаюце стан структуры у простам і типаваным формате. Вярнутыя структуры з вложанымі элементамі маскуюць інфармацыю пра тое, який вузел запісаў кожны поле, і спакоююць працэс пасля перарываў.

Калі дозволяе бюджет, адбывайце тэсты на працэс выканання критычных шляхоў у системе CI з викорыстаннем фіксатываў, а не рэальных платных API.

Спрыяйце цім этапу як дагавору межаў вхідных дадзенаў і перакананых выходных рэзультатаў. Даўце назвы артыфактам, задайце критэрыя успеху і адмовіцеся ад мовчанкавага частковага завершэння.

Перш чым запускать стак, заморозьце версіі, зафіксавайце «золаты» транскрыпты для критичных частакоў і парабяжце паследнія крокі для адвароту. У спадзеленых средах неабходны ліміты частоты, перакананні ў належнасці тэрмінаў і чыстае адначалаванне для ротаціі секрэтных даных. Валіце простую надзейнасць працоўнікам, чым хітрыя едыноразовыя дэманстрацыі.

Прыметка для пакета dd74bc1c4608: не кладзіце ключы прадаўцоў у репазітарый, задаце верхнюю межу токенаў на кожную сесію і зберагачыце транскрыпты празаўсёды з фікстурамі eval, каб пазнейшыя замены модэляў заставаліся парабяжнымі.

Калі працуеце над пунктом 0 з адзычэння, спачатку запісайце контракт: неабходныя вхідныя даны, сігнал успеху і тое, што выходзіць у разе частковага абякання. Такі чыртаж захоўвае чыстасцю пазнейшых змян у кодзе. Запісвайце часы выканання, а таксу токенаў чы іншых запытанняў празаўсёды разам з функцыйнальнымі рэзултатамі. Відразувыя даны пра вартасць запобегаюць неспадзяваным рачункам, калі среда пераходзіць з дэманстрацыі ў спадзеленую.

Дзеянне паўжасткі 0/862: звярніце увагу на час выканання, клас памылкі і колькасць выкарыстоўваных токенаў для гэтага запісу, а пасля, на аднойчынай базе паказаных пытанняў, а не на асобістых спазыраннях, выявіце, чы хацяце застаўіць змену.

Этап 1 паўжасткі працюе найэфектывней, калі яго розглядаць як меравальную плошчу. Зафіксаваць адну ідеальную транскрыпцыю, адзін прыклад памылкі і запіс пра адвярненне змены перш чым расширваць сферу дзеяння. Адначасова задокументаваць успішны і восстанавліваючыся шляхі. Перапрыбуткі, людзкія контралі і обработка некоректных паведамленняў є частью продукту, а не чымсь, што дадаецца пазней.

Дзеянне паўжасткі 1/862: звярніце увагу на час выканання, клас памылкі і колькасць выкарыстоўваных токенаў для гэтага запісу, а пасля, на аднойчынай базе паказаных пытанняў, а не на асобістых спазыраннях, выявіце, чы хацяце застаўіць змену.

Для другага этапа прыцелення на зміцнэнне неабяжна практычна вызначэння вхідных дадзеных, адміністратара шагу і крэтэрыяў завершэння пры зміне коду. Аператары должны магчымаць перзапуск шагу з вядомай точкі контролю, не падозрываючы прыхованы стан. Спрыяйце гэтаму этапу як кантракту межа вхіднымі дадзенымі і перакананымі выходнымі рэзультатамі. Дайце назвы артыфактам, вызначыце крэтэрыяў успеху і адмовіцеся ад беззвучнага частковага завершэння.

Дзеянні прыцелення на зміцнэнне 2/862: вымерыце час выканання, класію памылак і витрату токенав для гэтага пункту, а потым вынікніце, чы робіць змяну на аднойчы вядомай сэткі пытанняў, а не на аднойчы інтуїцыі.

Калі працуеце над 3-й стадзіяю прыемкі з паўнейшага захавання, спачатку запісайце умовы кантракту: неабходныя даны, сігнал успеху і тое, што выходзіць на падчасныя неудачы. Такі чарт дапамагае залічваць пазнейшыя змены ў кодзе чыста і адкрыта. Зберагайце настройкі праза код прыемкі. Файлы сераўнавання, хранальнікі секрэтных дадзеных і флагі функцыйяў должны знаходзіцца ў аднам месцы, куды аператары можаць адбавіць аудыт без неабходнасці чытання всей структуры.

Дзеянне прыемкі з паўнейшага захавання 3/862: замерайце час выконання, класію паказчыка або ошибкі і колькасць выкарыстоўваных токенав для гэтай прыемкі, а пасля выберайце, чы хацяце застаўіць змену, адпаведна да фіксованага набора пытанняў, а не на адной лічбе.

3-я стадзія прыемкі з паўнейшага захавання работае лепей, калі яе спрыямаць як мерыемую паверхню. Запісайце адны ідеальны прыклад работы, адну справу неудачы і прыемку для вярнення да пачатковага стану, прычым не расшырюючы сферу дзеяння. Валіце маленькія, тэставаныя елементы замест большых скрыптав. Калі якісь крок не выйшае, неудача должна вказваць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцужок дзеянняў.

Дзеянне паўжчання 4/862: звярніце увагу на час выканання, клас памылак і колькасць токенаў, выкорыстаных для гэтага запісу, а пасля, на аднойчынай базе фіксаванага набора пытанняў, а не на індывідуальных прыкладах, выявіце, чы рэшацца застаўляць змяну.

Для 5-го этапа паўжчання неабходна перад змянай коду чытко визначыць вхідныя даны, адпаведальнага за этап і крэтырыя завершэння. Аперацыяныя працавнікі должны магчымае перадзваначыць гэты этап з вядомага пункта контролю, не прыпускаючы стану, які застаўся непазнаваным. Запісвайце час выканання і колькасць токенаў або запытак праза функцыйнае рэзультат. Відкрытая інформацыя пра витраты запобегае неспакойным рашчыткам, калі працэс пераходзіць з дэмаверсіі ў спяльныя среды.

Дзеянне паўжчання 5/862: звярніце увагу на час выканання, клас памылак і колькасць токенаў, выкорыстаных для гэтага запісу, а пасля, на аднойчынай базе фіксаванага набора пытанняў, а не на індывідуальных прыкладах, выявіце, чы рэшацца застаўляць змяну.

Калі працуеце над 6-й стадзіяю прыемкі з павышэння безпекі, спачатку запісайце угоду: неабяжлівыя данні, сігнал успеху і тое, што выходзіць пад частковы нявыплнення. Такі список пераканае ў тым, што пазнейшыя змены коду будуць чыстымі.

Документавайце як «шчаслівы» шлях, так і шлях вяснавання. Перапрыбуткі, людзкія контралі і обработка некоректных паведамленняў є частью продукту, а не пазнейшым дапрацоўкам.

Дзялей 6/862 прыемкі з павышэння безпекі: вымерайце час выканання, класыя ошибакі і витрату токенав для гэтай прыемкі, а потым выберайце, чы робіць змены на адной пазначанай сэткі пытанняў, а не на адной толькі прымітцы.

7-я стадзія прыемкі з павышэння безпекі работае лепей, калі яе спрыямаць як вымеральную паверхню. Зафіксуйце адна «золатая» транскрыпцыю, адны прыклад нявыплнення і прыемку для адварцыі роботы, перш чым расширваць масштаб.

Спрыяйце гэтай стадзіі як угоды межа даннімі і перакананымі выходамі. Дайце назвы артыфактам, задаце перакананні успеху і адмовіцеся ад тыхнявага частковага завершэння.

Дзеянне паўжырання 7/862: зважыце час выканання, класію адказаў і колькасць токенаў, выкорыстаных для гэтага запісу, а пасля вырашыце, чы рашыцца застаўіць змяну на аднойчы назначанай сэткі пытанняў, а не на адзінокых прыкладах.

Для 8-го этапу паўжырання неабходна перад змянай коду адзначыць вхідныя даны, адпаведальнага за крок і критэрыя завершэння. Аператары должны магчымае перадзванаць крок з вядомай точкі контролю, не спрабоўваючы здагадвацца пра схованы стан. Канфігурацыю трэба заставіць праза код аплікацыі. Файлы сяродавішча, хранільнікі секрэтных дадзенняў і флагі функций должны знаходзіцца ў аднам месцы, якое аператары можаць пераглядаць, не чытаючы весь граф.

Дзеянне паўжырання 8/862: зважыце час выканання, класію адказаў і колькасць токенаў, выкорыстаных для гэтага запісу, а пасля вырашыце, чы рашыцца застаўіць змяну на аднойчы назначанай сэткі пытанняў, а не на адзінокых прыкладах.