Галоўная / Артыкулы / Практычныя прытамулкі: Я неправаляў стварэнне агентаў AI. Чаго я навучылася.

Практычныя прытамулкі: Я неправаляў стварэнне агентаў AI. Чаго я навучылася.

Практычныя прытамулкі: Я неправаляў стварэнне агентаў AI. Чаго я навучылася: контракты, перакананні та шаблоны коду для команд, якія викорыстоўваюць гэты падход.

1650 слоў

Існавайце гэта як перапрацоўку ідэй з артыкула “Я неправаляваў AI-агентаў. Гэта тое, што я дазнаўся пра архітектуры з калькамі агентаў” для працаваючых з іх реалізацыяй: чыстыя этапы, аранжаваныя блакі коду і прыметкі з восстанавлення, якія застаюцца пасля перадачы задання. Этап Апглэву лепш працюе, калі яго спрыяглядаць як мерыемую плошчу. Запісаўце адна ідеальная транскрыпцыю, адзін прыклад неудачы і прыметкі з вярнення да пачатковага стану прычым расшырэнню масштаба. Спрыяглядайце гэты этап як кантракт межа вхіднымі дадзеннямі і паверыцельнымі выходамі. Даўце назвы артыфактам, задаце критэрыя успеху і адмовіцеся ад беззвучнага частковага завершэння.

Спачатку, чаму воўсе пераходзіць на архітектуру з калькамі агентаў?

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

Шаблон 1: Падагенты — як наяўнасць выключнага адпаведальнага асистэнта

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

Патэрн 2: Навыкі — адны агент, многа ролей

Для адаптавання Model 2 Skills у адзінны этап неабяжна практычна ваказка: перад змінайом код неабяжна адзначыць вхідныя даны, адпаведальнага за шаг і крэтыяры завершэння. Аперацыйныя працавнікі павінны магчымасць перапрацоўваць шаг з вядомай точкі контролю, не падозрываючы прыхованы стан. Неабяжна задокументаваць як шлях успеху, так і шлях вярнення да нормальнага стану. Перапрыбуткі, людзкія пераказы і обробка некоректных паведамленняў є часткай продукту, а не дадатковымі элементамі пасля його стварэння. Неабяжна застаўляць людзкую апрацоўку там, дзе выкарыстоўваюцца грошы або зміняюцыся даны для працы. Компіляцыйныя налашчэння не є гарантыяй полной адпаведнасці продукту выклікам бізнесу. Для адаптавання Model 2 Skills у адзінны этап неабяжна практычна ваказка: перад змінайом код неабяжна адзначыць вхідныя даны, адпаведальнага за шаг і крэтыяры завершэння. Аперацыйныя працавнікі павінны магчымасць перапрацоўваць шаг з вядомай точкі контролю, не падозрываючы прыхованы стан. Спрыяйце таму, каб гэты этап выступаў як контракт межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Даўце назвы всім элементам, адзначыць крэтыяры успеху і не прабывайце прыймаць часткова завершаныя рэзультаты без падтверджэння.

Шаблон 3: Перадачы — гонка з ручнай паслявазначэннем

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

Шаблон 4: Маршрутазначальнік — кантролер аэрапрацыі

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

Як фактычна выбраць

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

Тое, што вы хацелі б, каб хтось сказаў мне раней

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

Куды ўсё гэта прыводзіць

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

Чэк-ліст для эксплуатацыі

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

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

Пауза пасля дорогіх крокаў. Продакцыя не должна знова выкліквати той самы календар LLM, калі аператар праказвае пазнейшы вузел.

Фіксуйце версіі залежнасцей і запішыце хэш адпраўленага зображэння, якое выканало дамэ. Возможнасць павторнага стварэння результата лепшыя за традыцыйныя знаёмства.

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

Пауза пасля дорогіх крокаў. Продакцыя не должна знова выкліквати той самы календар LLM, калі аператар праказвае пазнейшы вузел.

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

Запіска параграфу 21cadd26f0d8: не трэба кантрацеўваць ключы прадаўцаў у репазітарыі, задаць максімальную кантроль на токены на адну сесію, а таксама зберагчы транскрыпціі празаўседле з фікстурамі для ацэнкі, каб пазнейшыя замены моделей заставалі пораўнанневымі.

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

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

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

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

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

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

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

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