Галоўная / Артыкулы / Практычныя прытамліванні: Развіцце функцый за дапамою падагентаў Gemini CLI

Практычныя прытамліванні: Развіцце функцый за дапамою падагентаў Gemini CLI

Практычныя прыказкі: Разработка функцый за дапамогай Gemini CLI-падагентоў: контракты, перакананні та слоты для коду для команд, якія викорыстоўваюць гэты патэрн.

1727 слоў

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

Прыемленае рашэнне

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

Запрос пра функцыю

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

Пайплайн

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

Навыкі: спакульныя знанні, якія можа перыявіць пайплайн

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

Адкрыцце процеса

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

Стадія 1: архітектар

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

Этап 2: разработка функцыянаў

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

Этап 3: безпека, тэсты і документацыя паралельна

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

Стадзія 3.5: browser_agent

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

{
  "agents": {
    "overrides": {
      "browser_agent": { "enabled": true }
    },
    "browser": {
      "sessionMode": "isolated",
      "headless": false,
      "allowedDomains": ["localhost"],
      "blockFileUploads": true,
      "confirmSensitiveActions": false
    }
  }
}

Этап 4: пераглядач коду

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

Што вы бачылі

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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