Смернице за пројектовање агентских система

Практичке смернице помажу тимовима да одлуче која понашања агента припадају језичком моделу, а која захтевају експлицитан софтвер.

Резиме

  • Важно је пажљиво размотрити како и где се доносе одлуке у вашем агентском систему.

  • Препуштање већег броја одлука великом језичком моделу (LLM) омогућава систему да се потенцијално примени на више задатака, али науштрб брзине, поузданости и отпорности.

  • Кад год је то могуће, настојте да што већи део процеса одлучивања изместите из великог језичког модела (LLM) у експлицитан софтверски кôд. Ово нарочито важи за високоризичне и/или продукционе токове рада.

Увод

При пројектовању агентског система заснованог на великом језичком моделу (LLM), једна од најважнијих одлука јесте колики део одлучивања поверити моделу, а колики експлицитном софтверу.

Овај избор можемо лакше разумети ако га посматрамо као распон између следећих приступа:

  • Архитектуре засноване на рутеру експлицитно дефинишу редослед и логику у коду, чиме обезбеђују проверљивост, предвидљивост и отпорност за задатке из уских домена (називају се и „агенти тока рада“).

  • Агенти оркестратори ослањају се на велике језичке моделе (LLM-ове) да помоћу упита на природном језику динамички одређују ток задатка, што је идеално за отворене интеракције у којима унапред дефинисана логика није довољна или могућа.

Уводни дијаграм.

За високоризичне продукционе токове рада обично препоручујемо више функција заснованих на рутеру, док оркестраторе треба задржати за примене које захтевају флексибилне разговоре опште намене.

Рутер и оркестратор: разумевање разлике

Архитектуре засноване на рутеру

Агентски системи засновани на рутеру:

  • Експлицитно дефинишу ток одлучивања кроз кôд или софтвер и користе велики језички модел (LLM) да одреде коју ће путању тај софтвер пратити.

  • Сличнији су традиционалним софтверским системима јер имају јасне и предвидљиве путање које дају уједначеније резултате.

  • Идеални су за задатке који се могу строго дефинисати.

Следи поједностављен пример агента за резервације у чет-боту авио-компаније који користи „приступ заснован на рутеру“. Велики језички модел (LLM) помаже да се намера питања сврста у једну од три категорије, али наш софтвер на крају повезује ту намеру са шаблонским текстуалним одговором. Пошто је велики језички модел (LLM) строго ограничен, корисник добија уједначеније понашање система.

Дијаграм који приказује разлику између рутера и оркестратора.

Архитектуре засноване на оркестратору

За разлику од система заснованих на рутеру, агентски системи са оркестратором:

  • Дефинишу логичке токове упитима на природном језику уместо софтвером. Напомена: у поређењу с програмским језиком, природни језик је сам по себи двосмислен и флексибилан, што може бити и предност и мана, као што ћемо касније објаснити. Ово називамо „намером уместо упутства“.

  • Могу да понуде више начина обраде, док велики језички модел (LLM) одређује редослед и начин извршавања.

  • Могу динамички да стварају нове логичке путање које је тешко експлицитно дефинисати у софтверу.

  • Ова двосмисленост може довести до неуједначених резултата, али када све функционише, може деловати „чаробно“.

Следећи пример примењује приступ са оркестратором на исти поједностављени проблем авио-компаније. Уместо да софтвер одлучује који је одговор прикладан, одлучивање се препушта слоју великог језичког модела (LLM). Овде имамо систем са више агената у којем „главни“ агент оркестратор разврстава кориснички упит и прослеђује га агенту посебно осмишљеном за промену летова, који затим кориснику даје одговор.

У овом примеру слој великог језичког модела (LLM) има улогу класификатора, рутера и аутора одговора. У примеру с рутером имао је само улогу класификатора, док је софтвер обављао остало.

Дијаграм који приказује разлику између рутера и оркестратора.

Предности и изазови архитектура заснованих на рутеру

Кад год је то могуће, препоручујемо приступ заснован на рутеру због следећих предности:

  • Брзина и ефикасност: Локална израчунавања су бржа од оркестратора који зависе од спољних API-ја. Такође је знатно јефтиније обрадити логику „IF/ELSE“ у python-у него платити добављачу великог језичког модела (LLM) да је обради моделом са 400 милијарди параметара.

  • Могућност тестирања и предвидљивост: Отклањање грешака, тестирање и одржавање знатно су лакши уз устаљене софтверске праксе.

  • Транспарентност и поузданост: Мање варијација у понашању олакшава решавање проблема. Већи део тока апликације изражен је и у транспарентном софтверу под контролом верзија, уместо у непрозирним и неразумљивим тежинама великог језичког модела (LLM).

Недостаци приступа заснованих на рутеру јесу крутост, нефлексибилност и тешкоће при решавању отворенијих проблема. Корисницима чет-бота који увек даје потпуно исте одговоре то може деловати досадно и једнолично.

Предности и изазови архитектура заснованих на оркестратору

Архитектуре са оркестратором имају моћне могућности:

  1. Планирање: Могу динамички да планирају одговоре.

  2. Избор алата/прослеђивање агенту: Бирају одговарајуће алате или делегирају задатке агентима.

  3. Итеративно комбиновање резултата: Итеративно и креативно поново комбинују резултате.

  4. Утврђивање завршетка: Одређују када је прикупљено довољно информација за завршни одговор.

Оквири попут Pydantic-AI или OpenAI Agents SDK омогућавају једноставну и брзу примену оркестрације. Зато је овај приступ одличан за демонстрације и проверу концепта.

Недостаци овог приступа су следећи:

  • Нема гаранције да ће кораци планирања великог језичког модела (LLM) и радње које следе бити исправни или прикладни. Систем заснован на рутеру има исти проблем, али је његово понашање предвидљивије јер је више ограничен.

  • За једноставне и јасно дефинисане задатке вероватно нам нису потребне све могућности система са више агената. На пример, у нашем примеру агента авио-компаније вероватно постоји само ограничен број врста захтева које корисник заиста жели да упути систему корисничке подршке.

  • Пошто се већи део логике налази у великом језичком моделу (LLM), злонамерним актерима је много лакше да заобиђу безбедносне мере или злоупотребе систем.

  • Одлучивање се апстрахује и премешта у велики језички модел (LLM), па је систем теже разумети, мада алати за надзор попут Langfuse-а или Braintrust-а могу делимично помоћи.

Наше смернице за пројектовање агентских система

Напомена читаоцу: иако се могућности модела брзо мењају, мало је вероватно да ће се препоруке у наставку променити у блиској будућности.

Разумите које су одлуке потребне у вашој апликацији

Одредите обим проблема.

  • Можете ли лако да прикажете жељену логику одлучивања на дијаграму?

  • Да ли су кварови или неочекивано понашање апликације за вас неприхватљиви?

Одговор „да“ на било које од претходних питања указује на то да су функције засноване на рутеру бољи избор.

Прво рутер, затим хибридни приступи

Кад год је то могуће, препоручујемо приступ заснован на рутеру докле год он задовољава потребе. Као опште правило, ако се неки део система може изразити кодом, изразите га кодом, односно немојте прекомерно користити велике језичке моделе (LLM-ове) када нису потребни.

Када се достигну границе ових приступа, неке предности отворених оркестратора могу се применити на ограничен начин. На пример:

  1. Избор алата/прослеђивање агенту: Лако се примењује условним гранањем или класификаторима заснованим на великом језичком моделу (LLM).

  2. Утврђивање завршетка: Једноставни класификатори засновани на великом језичком моделу (LLM) могу проверити потпуност одговора пре него што се он врати кориснику.

Међутим, „планирање“ и „итеративно комбиновање резултата“ несумњиво је много теже остварити у крутом систему заснованом на рутеру. Зато, када задатак захтева ове могућности, што утврђује класификатор заснован на великом језичком моделу (LLM) или нека друга логика, предлажемо да у систему направите мање ограничену грану са оркестратором.

Закључак и поглед у будућност

Избор између архитектуре с рутером и оне с оркестратором треба да одражава јасноћу, сложеност и начин интеракције ваше апликације. Приступи засновани на рутеру тренутно пружају поузданост, ефикасност и лако тестирање јасно дефинисаних задатака. Оркестратори нуде већу флексибилност за шире, конверзацијске интеракције.

Како велики језички модели (LLM-ови) буду напредовали, равнотежа између ових приступа може се мењати. За продукциона радна оптерећења предност дајемо архитектурама заснованим на рутеру или хибридним архитектурама, док оркестраторе остављамо за отворене проблеме који захтевају динамичну интеракцију налик људској.

Autor

Andrew Liubinas