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

Чатыры патэрны шматагентных сістэм: субагенты, навыкі, перадачы і маршрутызатары

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

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

Крыніцы: I’ve Been Building AI Agents Wrong. Here’s What I Learned About Multi-Agent Architectures.

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

Чы рэальна вам патрэбны калькі агентаў?

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

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

Падагенты: кансультант

Уявіце сабе начальніка штабу, які ніколі не выконваець работу сам, але точнае знае, каго запытаць. Главны агент-кантролер стараецца прыглядаць за всім. Калі патрэбны даны CRM, неабходна напісаць электранаўскі ліст або выконаць расчытанні, ён запоўшчвае спецыялізаванага падагента, як гэта быў інструмент, атрымвае рэзультат і складае все разам.

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

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

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

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

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

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

Перадача задач: старт-фінішная гонка

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

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

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

Рутэр: керавальнік паветрайнага руху

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

Яго сіла — у працэснасці. Запыт, які стосуецца трохоў домэнаў знанняў, одночасна падаецца на всіх трохоў агентаў, і загальны час выраховываецца прыблізна за меркамі найпамедзлейшага запыту, а не сумы часоў усіх запытоў. У корпаратыўнай базе знанняў запыт працавніка можа стосавацца правіл HR, інструкцый з IT-безпекі і правілаў фінансавага адпаведнага; рутэр одночасна запускае всіх трохоў агентаў і сінтэзуе адну адпаведзь, тады як інакш бы патрэбна была бы троха запытоў або аднам перавантажанам агенту, які б разам кераваў трохоў домэнаў.

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

Выбір

Гэта не павінна быць крыжовая праця.

  • Кілька разных домэнаў, чыстая паралельная експанатырацыя і цэнтрызаваныя точкі кантролю, якія спрамоўваюць да падагентаў.
  • Одны агент з многама спецыялізаціямі, які належыць разным камандам, і які спрамоўвае да адпаведных навыкаў.
  • Рабочы працэс, які ў сваім сэрцы ёсць последовным, з пярэднімі умовамі і станам, які перадаецца далей, і які спрамоўвае да перадачы задач.
  • Значныя кантытэты запыткаў у розных сферах, якія выклікаюць патрэбу ў паралельнай працы без історыі дыялога, апісваюць неабходнасць вікорыстання рутэра.
  • Ішчым выклікам являецца канцэпцыя выдатнасці. Схемы, навыкі і працэсы перадачы задач, якія зберагаюць стан, дазваляюць заошчадзіць прыблізна 40–50 процэнтав вызоў модэля пад час паўтаральных запыткаў, адтаму што яны памятаюць пакананы кантэкст. Падагенты і рутэры не зберагаюць стан і плацяць аднаковыя зусіллі ў кожны раз, але ў замяну атрымоўваюць строгую ізоляцію кантэкста, што мае важлівэ значэнне для паралельных завадзяў у вялікіх доменах.

    Абавесці ў працоўных працэсах ёсць першы прыорытэт

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

    Што будзе далей

    Уважайце гэтыя чатыры шаблону як базовую граматыку дызайну сістэм з калькольнікамі ў настоўчы час, пры чым новыя тэрміны з’яўляюцца быстра. Пастойныя локальныя калькольнікі, якія зберагаюць мэморыю між сесіямі і падключаюцца да персональных файлаў і прыложэнняў, пераходзяць з рангу доследжэнняў у ранг продуктам. Протакол Model Context Protocol, пра які было сказана, што яго настаўлено 97 мільйонаў разоў на пачатку 2026 года, стае тым элементам, які дазволяе калькольнікам разных прадаўцоў вястаціся без неабходнасці спецыяльнай інтэграцыі. Пачынаюць з’яўляцца сеткі калькольнікаў, якія дынамічна ствараюць новыя калькольнікі, расшыруючы свою колькасць працоўнікаў ў залежнасці ад складнасці задання. Сабкалькольнікі, навыкі, працэсы перадачы дадзенняў і маршрутызаторы ўтвараюць аднойчыну базу для всіх гэтых рашэнняў, таму ўсвоўчы іх зараз дапамагае атрымаць пераднюе становішча. Адно з правілаў для прыняцця рашэння: спачатку запісайце конкрэтную проблему, назвайце шаблон, які яе рашае, і толькі пасля таго накрэсліце дыяграму. Пачніце з простага, будзіце чыстасаблівыя ў тым, калі вам патрэбна памоч, і калі ўжо перэйдзеце да вікорыстоўвання калькіляў-агентаў, вы зразумеце, якія вароты выбраць.