AI (Вештачка Интелигенција)

AI Agents: Designing Software That Thinks Along With You

AI агенти: Дизајнирање софтвер што размислува заедно со вас

Повеќето софтвери чекаат да им се каже што да направат. Агент со ВИ го менува тој однос: може да протолкува цел, да го испита релевантниот контекст, да избере следен чекор, да користи одобрени алатки и да извести што се случило. Тоа звучи како „софтвер што размислува“, но корисната верзија е помалку мистична. Тоа е внимателно дизајниран систем што ги претвора способностите на јазичниот модел во ограничена работа што може да се набљудува.

Разликата е важна. Интерфејс за разговор може да објасни како да се истражи неуспешно распоредување. Агент може да собере дневници, да го спореди неуспехот со прирачник за постапување, да отвори нацрт-резиме за инцидент и да побара одобрение пред да направи промена. Вредноста не е во модел што дејствува самостојно. Таа е во комбинацијата од расудување, контекст, алатки, ограничувања и човечка проценка.

Што го прави еден систем со ВИ агент?

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

Во практична смисла, на агентот му се потребни неколку компоненти:

  • Јасна цел: ограничен исход како „направи првична обработка на ова барање за поддршка“ или „подготви резиме на барање за повлекување.“
  • Сигурен контекст: релевантниот тикет, метаподатоци од складиштето, политика, запис за клиент или оперативна состојба.
  • Пристап до алатки: дефинирани операции за пребарување, читање, создавање нацрти или активирање контролирани работни текови.
  • Заштитни механизми: граници на дозволи, правила за валидација, ограничувања на стапката и патеки за ескалација.
  • Набљудливост: запис на влезови, дејства, резултати, неуспеси и човечки отстапувања.

Без овие делови, „агент“ често е само поттик со оптимистичко брендирање. Моделот сè уште може да биде корисен, но не може безбедно да носи значајна одговорност.

Почнете со работен тек, не со личност

Најсилните можности за агенти обично се повторливи работни текови со неуредни влезови и значајна точка за човечка проверка. Тоа не се нужно задачите што изгледаат најимпресивно во демо.

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

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

Изберете работа со видлива дефиниција за завршеност

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

Пред да градите, запишете како изгледа успехот. На пример:

  • Кои изворни системи смее да ги чита агентот?
  • Кои дејства смее да ги презема автоматски, ако воопшто смее?
  • Кои докази мора да ја придружуваат секоја препорака?
  • Кога мора да побара од лице да одлучи?
  • Како тимот ќе открие лош или нецелосен резултат?

Овие прашања наметнуваат одлуки за дизајнот на кои полиран поттик не може да одговори.

Дајте им на агентите алатки со тесни договори

Агентот треба да комуницира со светот преку намерно дизајнирани интерфејси, а не преку широки ингеренции и нејасни упатства. Алатка наречена get_open_incidents(service) е полесна за обезбедување, тестирање и ревизија од неограничен пристап до оперативна платформа. Алатка што создава нацрт е побезбедна од онаа што веднаш испраќа порака.

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

Дизајнирајте и за неуспех. API-јата истекуваат, дозволите се менуваат, записите се нецелосни, а излезите од моделот може да бидат неправилно форматирани. Агентот треба да разликува „не постои соодветен запис“ од „пребарувањето не успеа“, да се обиде повторно само кога тоа е соодветно и да запре кога нема достапен безбеден заклучок.

result = search_customer_account(account_id)

if result.status == "not_found":
    return request_more_information(account_id)

if result.status != "ok":
    return escalate("Account lookup could not be completed")

return create_response_draft(result.account)

Важната идеја не е јазикот. Таа е експлицитното справување со состојбите. Моделот може да помогне при избор на формулација или класификација на двосмисленост, додека конвенционалниот код ги спроведува критичните правила на работниот тек.

Задржете ги луѓето таму каде што проценката носи последици

Човечката проверка не е знак дека агентот не успеал. Таа често е карактеристиката што го прави усвојувањето можно. Вистинското ниво на проверка зависи од цената на грешката.

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

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

Оценувајте го системот, не само моделот

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

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

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

Градете доверба преку јасност

На луѓето не им треба агент што имитира колега. Им треба да биде сигурен, искрен за неизвесноста и лесен за коригирање. Корисен агент кажува што користел, што променил и на што сè уште му треба внимание. Не крие информации што недостигаат зад полиран одговор.

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

Портрет на автор на блогот

Mihajlo

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