Галоўная / Артыкулы

AutoSaddler: агенты, які перапісваюць свае седлаўкі

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

Выдавец: REACTAPP.TOP14 хв чытання3147 слоў

Крыніцы: AutoSaddler: Teaching AI Agents to Improve Their Own Harness

Існавайце гэта як пераклад ідэй з кантэнту “AutoSaddler: Teaching AI Agents to Improve Their Own Harness” для працаваючых з апаратамі: чыстыя этапы, арранжаваныя блакіты коду і прыметкі па восстанавлэнню, якія застаюцца пасля перадачы. Адгляд работае найкрашча, калі яго розглядаць як меравальную плошчу. Запісаўце адна ідэальная транскрыпцыю, адзін прыклад неудачы і прыметкі па адвярнэнню, перш чым расшырваць масштаб. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшаў, прычына неудачы павінна вказываць на адную адпаведальнасць, а не на заплутаны ланцужок задач.

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

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

                 AI Agent
                     │
          ┌──────────┴──────────┐
          │                     │
       Model                 Harness
                                │
              ┌─────────────────┼─────────────────┐
              │                 │                 │
           Prompts            Tools          Middleware
              │                 │                 │
              └─────────────────┼─────────────────┘
                                │
                         Agent Loop Logic
                                │
                                ▼
                           Execution
                                │
                                ▼
                              Trace

Ад інжынерыі запрошэнняў да інжынерыі выкарыстоўвання

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

Кераванне патчамі

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

Патчы можнасцяў

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

Следы выканання стаюць сігналамі для навчання

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

Task
  ↓
Model reasoning / response
  ↓
Tool selection
  ↓
Tool arguments
  ↓
Tool result
  ↓
Middleware
  ↓
Next model action
  ↓
Final answer
  ↓
Evaluation
Task failed
   │
   ▼
Agent never inspected repository metadata
   │
   ▼
Why?
   │
   ▼
Tool existed but description didn't expose its purpose
   │
   ▼
Diagnosis
   │
   ▼
Update tool description
   │
   ▼
Evaluate again

Цыкл оптымізацыі AutoSaddler

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

             Training Cases
                    │
                    ▼
              Run Agent
                    │
                    ▼
              Execution Traces
                    │
                    ▼
          ┌───────────────────┐
          │ Diagnosis-Patch   │
          │                   │
          │ Find root cause   │
          │ Propose patch     │
          └─────────┬─────────┘
                    │
                    ▼
              New Candidate
                    │
                    ▼
                Evaluate
                    │
          ┌─────────┴─────────┐
          │                   │
       Improved            Regressed
          │                   │
          └─────────┬─────────┘
                    ▼
               Reflection
                    │
                    ▼
             Reusable Lessons
                    │
                    ▼
                EvoDAG
                    │
                    ▼
            Candidate Evolution
                    │
                    ▼
             Development Gate
                    │
                    ▼
          Best Generalizing Harness

1. Дыягназа-Пэч: выявленне рэальнай проблемы

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

2. Размышленне: выучэнне на адохідзе з рэзультатаў

  1. Анаіз: найэфектыўнейша метода навучання на адпаведнасці рэзультатаў — гэта калі яе спрыяваць як мерыемую велічыну. Запісайце адны ідэальны прыклад, адну справу з неудачай і прыметку па поверненню да пачатковага стану пры расшырэнні масштаба. Запісвайце часы выканання і косты токеноў або запытак па боку функцыйнальных рэзультатаў. Відразлівая візуабільнасць костаў з самага пачатку запобегае неспакойным рахункам, калі працэс пераходзіць з дэмаверсіі ў спяльныя сераўы. Актуалізуйце інструменты з вузкімі схемамі і чыткімі пазначкамі пра побачныя эфекты. Адпаведальным адправільцам неабходна знаты, якія вызовы мутуюць стан, перш чым яны автаматычна схваляюць іх.
Patch:
Add stronger instruction to inspect repository metadata.
Observed:
✓ Fixed cases A, B, C
✓ Existing cases remain stable
✗ Case D still failsLesson:
Instruction improves metadata discovery,
but does not address downstream tool selection.

3. Эвалюяцыя: не забывайце тое, што працавало

  1. Эвалюяцыя: не забывайце, што тое, што працавала лепшым чынам, калі яго расследжваць як мерыемую велічыну. Зберагачыце адны ідэальны прыклад працы, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перад расшырэнням масштаба. Храніце настройкі пазыром ад коду прыемліка. Файлы сяродавішчыны, базы секрэтных даных і пазнакі функцый должны знаходзіцца ў адном месцы, куды аператары можаць адрабатаваць без неабяжнага чытання всіх дадзеных.
  2. Эвалюяцыя: не забывайце, што тое, што працавала лепшым чынам, калі яго расследжваць як мерыемую велічыну. Зберагачыце адны ідэальны прыклад працы, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перад расшырэнням масштаба. Вядчыжайце маленькія, тэставаныя елементы над вялікімі скрыптамі. Калі якісь крок не выйшае, прычына неудачы должна вказываць на адну конкрэтную прычыну, а не на заплутаную сістэму.
Patch 1 → Patch 2 → Patch 3
                 Base
              /    |    \
             /     |     \
          P1       P2      P3
          │       / \       │
          │      /   \      │
         P4     P5   P6     P7
                 \   /
                  \ /
                   P8

Найважнейшы захад: гэналізацыя

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

Training cases
      │
      ▼
Generate candidate
      │
      ▼
Evaluate
      │
      ▼
Development split
      │
      ▼
Does the improvement generalize?
      │
   ┌──┴──┐
   │     │
  Yes    No
   │     │
   ▼     ▼
Keep   Reject

Чаму важна стойкая екзекуцыя

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

                    Run
                     │
                     ▼
              Append-only Events
                     │
       ┌─────────────┼─────────────┐
       ▼             ▼             ▼
   Candidates    Evaluations    Sessions
       │             │             │
       └─────────────┼─────────────┘
                     ▼
                Snapshot
                     │
                     ▼
                Final Result

Возможнае павтарэнне выканання спробаў лічыцца прыорытэтным пытаннем

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

этага заплутанай трубопрацоўкі.

Candidate A
   │
   ├── Prompt version X
   ├── Harness commit Y
   ├── Dataset revision Z
   └── Model configuration M

V1 проты V2

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

V1

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

V2

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

             AutoSaddler Core
                       │
              Scenario Plugin
                       │
       ┌───────────────┼───────────────┐
       ▼               ▼               ▼
    Harness         Benchmark       Evaluator
       │               │               │
       └───────────────┼───────────────┘
                       ▼
                 Evidence Builder
                       │
                       ▼
                 Optimizer Engine

Плагіны дапамагаюць розшырваць ідэю

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

              AutoSaddler
                   │
       ┌───────────┼───────────┐
       ▼           ▼           ▼
    Agent A     Agent B     Agent C
       │           │           │
    Plugin A    Plugin B    Plugin C

Што робіць AutoSaddler адным з унікальных?

Што робіць AutoSaddler адзінаковым? Ён працюе найэфектывней, калі яго розглядаць як вімерную паверхню. Запісаце адна «золатая» транскрыпцыя, адзін прыклад неудачы і прыметку па поверненні да пярвоначальнага стану пры расшырэнні масштаба. Запісвайце часы выканання і кост токеноў або запытаў праза функцыйнае рэзультат. Відразлівасць костаў з самага пачатку запобегае неспакойным рахункам, калі працэс пераходзіць з дэмовай асяроддзя ў спяльнаваныя сераўы. Актуалізуйце інструменты з вузкімі схемамі і чыткімі пазначкамі пра пабочныя эфекты. Хостам неабходна ведаць, якія вызовы мутуюць стан, перш чым яны автаматычна схваляюць іх.

1. Ён оптымізуе весь комплект інструментаў

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

2. Гэтая сістэма дыяганалізуе прычыны перш чым вносіць змяны

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

3. У яго выкарыстоўваюцца структураваныя втручанні

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

4. Яго навчаецца на адхылэннях

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

5. Ён оптымізуецца для гэналізацыі

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

6. Ён зберагае історыю эвалюцыі

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

7. Ён стойкі

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

Што можа быць далей?

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

Постаўнае оптымізаванне крэатывных срэдоў

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

Автаматычная эвалюцыя інструментаў

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

Аптымізацыя мідлвэра

Навчанне між-агентамі

Оптымацыя з урахоўваннем костаў

Quality
   +
Reliability
   +
Latency
   +
Token Cost
   +
Tool Cost

Інжынерныя вызванні, якія чакаюць

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

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