ВИ агенти: Архитектирање на следниот еволутивен скок на софтверот
Софтверот влегува во нова фаза: не само што користи AI за да одговара на прашања, туку дизајнира системи што можат да следат цели, да користат алатки, да ја проверуваат својата работа и да им ги предаваат резултатите на луѓето. Овие системи најчесто се нарекуваат AI агенти. Ознаката може да звучи пограндиозно од реалноста, но суштинската промена е важна. Агентот не е магична автономија. Тој е софтверски образец за комбинирање на расудувањето на моделот со инструкции, податоци, алатки и заштитни механизми.
Корисното прашање не е дали агентот може да замени тим. Туку дали може сигурно да заврши тесен, вреден дел од работата со соодветен надзор. Тимовите што почнуваат од таму обично градат издржливи системи. Тимовите што почнуваат со нејасна амбиција да „автоматизираат сè“ обично откриваат дека двосмисленоста, слабите податоци и недостижните контроли сè уште се многу реални инженерски проблеми.
Што го прави AI агентот поинаков?
Конвенционалната апликација следи однапред напишана логика: при овој влез, изврши ги овие чекори, врати го тој резултат. Агентскиот систем и понатаму има потреба од конвенционален софтвер, но може да избира меѓу дозволените следни чекори врз основа на тековниот контекст. Тој може да пребарува во интерна база на знаење, да повика услуга, да подготви одговор, да провери поле, да побара појаснување или да ескалира до лице.
Практичниот агент обично има пет дела:
- Цел: јасно ограничен исход, како подготовка на резиме за случај за поддршка или усогласување на полиња што недостигаат во фактура.
- Модел: компонентата што го толкува јазикот и помага да се избере следното дејство.
- Алатки: внимателно дефинирани операции, како преземање запис, создавање нацрт или извршување проверка.
- Состојба: контекстот на задачата, претходните резултати, дозволите и напредокот низ работниот тек.
- Контроли: ограничувања, чекори за одобрување, евидентирање, евалуација и безбедно однесување при неуспех.
Моделот не треба да се третира како цел систем. Тој е една компонента во поширок циклус. Околниот софтвер одредува до кои информации може да пристапи моделот, кои дејства може да ги преземе, како се проверуваат резултатите и што се случува кога довербата е ниска.
Почнете со работни текови, не со личности
„Изградете агент за нашиот бизнис“ е премногу широко за инженерски да се изработи или оцени. Подобра почетна точка е работен тек со повторливо тесно грло, препознатлива дефиниција за завршеност и начин на неуспех од кој може да се опорави.
Разгледајте интерен асистент за поддршка. Неговата задача не е да имитира професионалец за поддршка. Неговата задача може да биде да прочита нов тикет, да ја преземе релевантната документација за производот, да утврди кои детали недостигаат, да подготви нацрт-одговор и да го насочи тикетот кон соодветниот ред. Човек може да го прегледа нацртот пред нешто да стигне до клиент.
Тоа е вредно бидејќи работниот тек е експлицитен. Тимот може да мери дали насочувањето е правилно, дали наведената документација е релевантна, дали нацртот ја следи политиката и дали човечкиот прегледувач заштедува време. Ако асистентот не е сигурен, може да постави насочено прашање наместо да измисли одговор.
Изберете го правилното ниво на автономија
Автономијата не е бинарен избор. Таа е збир на дозволи. Агент што резимира белешки од состаноци има излез со низок ризик. Агент што менува продукциска конфигурација, испраќа надворешни комуникации или одобрува финансиски трансакции има излез со многу поголем ризик.
Разумна прогресија е:
- Дозволете му на агентот да набљудува и резимира.
- Дозволете му да препорачува дејства со придружни докази.
- Дозволете му да подготвува повратни нацрти или измени за одобрување.
- Дозволете ограничено извршување во добро дефинирани граници.
- Проширете ги овластувањата само откако евалуациите и оперативните докази ќе го поддржат тоа.
Оваа низа не е бирократија сама за себе. Таа им дава време на тимовите да научат каде моделот е корисен, каде е кревок и каде самиот работен тек има потреба од редизајн.
Дизајнот на алатките е вистинската архитектура
Агентот е сигурен само колку што се сигурни алатките што може да ги користи. Широките, двосмислени алатки создаваат широки, двосмислени неуспеси. „Управувај со корисничка сметка“ е лоша дефиниција на алатка. „Преземи статус на сметка според ID на сметка“ и „создај нацрт за промена на претплата“ се многу побезбедни бидејќи влезовите, излезите и ефектите се експлицитни.
Дизајнирајте ги алатките како да ќе ги користи нов инженер кој го гледа само нивниот интерфејс. Барајте структурирани влезови, проверувајте ги на серверската страна, враќајте корисни грешки и направете ги дозволите дел од договорот на алатката. Моделот може да предложи дејство, но алатката мора да остане конечниот авторитет за тоа дали дејството е валидно.
{
"action": "create_refund_draft",
"inputs": {
"order_id": "required string",
"reason_code": "required enum",
"amount": "positive decimal"
},
"requires_approval": true
}
Забележете што не прави овој образец: не му дава на агентот директен, неограничен пристап до платежен систем. Тој создава нацрт, зачувува точка за преглед и ја остава проверката на детерминистичката логика на апликацијата.
Сигурноста бара евалуација, не оптимизам
Агентското однесување може да изгледа импресивно на демонстрација, а сепак да не успее во вообичаени оперативни услови. Поттик што обработува чист пример може да има тешкотии со нецелосни записи, спротивставени инструкции, застарена документација, необично форматирање или истекување на време на алатка.
Изградете множество за евалуација од реалистични задачи пред да прогласите успех. Вклучете успешни случаи, гранични случаи, очекувани одбивања и ситуации во кои агентот мора да ескалира. Прегледувајте го не само конечниот одговор, туку и патеката што ја поминал: кои извори ги користел, кои алатки ги избрал, дали безбедно се обидел повторно и дали останал во рамките на дозволите.
Справувањето со неуспеси заслужува исто толку внимание при дизајнот колку и успешната патека. Ако пребарувањето не успее, агентот треба да пријави дека не можел да ја потврди информацијата, а не тивко да замени веројатен одговор. Ако повик на алатка се повтори, операцијата треба да биде идемпотентна или заштитена од дупликат ефекти. Ако задачата надмине временски или трошочен буџет, системот треба чисто да запре и да зачува доволно контекст за лице да продолжи.
Задржете ги луѓето во системот таму каде што е важна проценката
Човечкиот преглед не е доказ дека агентот не успеал. Во многу важни работни текови, тоа е предвидениот дизајн. Луѓето се подобро поставени да разрешуваат двосмислености во политиките, да оценуваат чувствителен контекст и да преземаат одговорност за последователни одлуки. Агентите можат да го намалат когнитивниот товар околу тие одлуки со собирање докази, организирање опции и изработка на први нацрти.
Најсилните имплементации го прават тоа предавање лесно. Прикажете го изворниот материјал зад препораката. Објаснете кои правила или ограничувања биле применети. Претставете го предложеното дејство одделно од дејството што навистина ќе се изврши. Прегледувачот треба да може да одобри, уреди, отфрли или ескалира без повторно да ја составува целата задача.
Променливата улога на софтверските професионалци
AI агентите ќе ја променат софтверската работа, но не со елиминирање на потребата од инженерска дисциплина. Тие ја зголемуваат вредноста на јасните барања, добро раздвоените услуги, доверливите податоци, набљудливоста и внимателниот дизајн на производот. Моделот може да прави избори во рамките на работен тек; не може неограничено да надоместува нејасна сопственост, неконзистентни деловни правила или небезбедни граници на системот.
За развивачите, можноста е да станат подобри дизајнери на системи меѓу луѓе и машини. Научете да претворате нејасни цели во експлицитни состојби, договори за алатки, случаи за евалуација и текови за одобрување. За технолошките лидери, задачата е да изберат проблеми каде што помошта создава предност без да ја крие одговорноста.
Следниот еволутивен скок на софтверот нема да пристигне како една автономна програма што прави сè. Ќе се појави преку многу фокусирани агенти што ја прават секојдневната работа полесна за навигација, поодзивна и посигурна. Тимовите што ќе имаат најголема корист ќе бидат оние што ги третираат агентите како инженерски соработници: способни, ограничени, набљудливи и секогаш поврзани со човечката проценка.