Основната логика, която вашите AI агенти трябва да разберат
Агент со вештачка интелигенција не е четбот со список на задачи. Тој е систем што набљудува ситуација, избира дејство, користи алатки, проверува што се случило и одлучува што да прави понатаму. Тој циклус звучи едноставно, но повеќето неуспеси на агентите произлегуваат од третирањето на истиот како имплементациски детал, наместо како суштински дизајн на производот.
Ако градите, купувате или работите заедно со агенти со вештачка интелигенција, најкорисниот ментален модел е следниов: агентот е работен тек за донесување одлуки што функционира во услови на неизвесност. Моделот придонесува со разбирање на јазикот и расудување. Околниот систем обезбедува состојба, дозволи, алатки, ограничувања и верификација.
Ако ги поставите тие делови правилно, агентот може да отстрани значаен оперативен труд. Ако ги поставите погрешно, може самоуверено да ја автоматизира забуната.
Циклусот на агентот е вистинскиот производ
Повеќето практични агенти следат циклус: примаат цел, го проверуваат релевантниот контекст, избираат дејство, го извршуваат, го оценуваат резултатот и или продолжуваат или запираат. Јазичен модел може да учествува во неколку фази, но апликацијата го поседува циклусот.
while not task.is_complete():
context = collect_relevant_context(task)
action = model.choose_action(task, context, tools)
result = execute(action)
record(task, action, result)
if result.failed:
task = handle_failure(task, result)
else:
task = update_state(task, result)
Ова намерно е поважно отколку што изгледа. Не треба да се претпоставува дека моделот знае дали дејството успеало. Му се потребни структурирани резултати од системите со кои работи. Исто така, апликацијата не треба да претпоставува дека веродостоен одговор од моделот е валиден план.
Корисната архитектура на агентот ја прави секоја фаза експлицитна: која е целта, кои информации биле достапни, кое дејство било предложено, што навистина било извршено и зошто процесот завршил.
Одделете го расудувањето од овластувањето
Јазичните модели се добри во толкување двосмислени барања, извлекување намера од неуреден текст и предлагање следни чекори. Тие не се систем за дозволи. Агентот треба да може широко да расудува, а тесно да дејствува.
На пример, на интерен агент за поддршка може да му биде дозволено да пребарува документација, да ја сумира историјата на случајот на клиентот и да подготви нацрт-одговор. Не треба автоматски да му биде дозволено да издава поврати на средства, да менува сопственост на сметка или да извезува чувствителни записи само затоа што може течно да ги опише тие дејства.
Дизајнот на алатките е местото каде што оваа разлика станува конкретна. Наместо да изложите нејасна функција како manage_customer_account, изложете мали дејства со ограничени влезови:
get_account_status(account_id)list_recent_invoices(account_id)draft_refund_request(invoice_id, reason)submit_refund_request(request_id)
Раздвојувањето создава точки за преглед и појасни ревизорски траги. Исто така, ја намалува веројатноста лошо формулирано барање да стане прекумерно моќна инструкција.
Дајте им на агентите состојба, не само историја на разговори
Историјата на разговори е корисна, но е слаба замена за состојбата на апликацијата. Долгите транскрипти стануваат скапи, одвлекуваат внимание и тешко се валидираат. Тие може и да зачуваат застарени претпоставки долго откако системот дознал нешто ново.
Чувајте ги фактите што му се потребни на агентот во структурирана форма: статус на задачата, доделен сопственик, завршени чекори, одобрени ограничувања, излези од алатките, број на обиди и референци до релевантни документи. Потоа преземајте само контекст што е потребен за следната одлука.
Размислете за агент што подготвува промена за распоредување. Неговата работна состојба може да ги вклучува целната околина, одобрениот временски прозорец за промена, тековната верзија, резултатот од здравствената проверка, опцијата за враќање назад и дали е евидентирано човечко одобрување. Тоа е многу побезбедно отколку да се бара од моделот да ја заклучи целата ситуација од низа пораки.
Контекстот треба да одговори на конкретно прашање
Секој дел од контекстот треба да го заслужи своето место. Пред да додадете документ, резултат од база на податоци или претходен разговор во барање до агент, прашајте: која одлука ќе ја подобри оваа информација? Ако одговорот е нејасен, веројатно станува збор за шум.
Релевантниот контекст ги подобрува одлуките. Прекумерниот контекст може да го направи агентот побавен, помалку предвидлив и поверојатно да следи неважна инструкција вградена во недоверлива содржина.
Дизајнирајте алатки за неуспех, не само за успех
Вистинските системи истекуваат, враќаат делумни резултати, одбиваат барања и се менуваат под вас. Агент што гледа само „успех“ или „грешка“ не може интелигентно да одговори. Алатките треба да враќаат структурирани, применливи исходи.
{
"status": "retryable_error",
"message": "The inventory service did not respond before the timeout.",
"retry_after_seconds": 30,
"safe_to_retry": true
}
Тој одговор му кажува на агентот што се случило и што може безбедно да направи понатаму. Наспроти тоа, генеричка низа за грешка поттикнува нагаѓање.
Исто така, важно е да се разликуваат неуспесите што треба повторно да се пробаат од неуспесите што бараат ескалација. Привремен прекин на мрежата може да оправда еден ограничен повторен обид. Одбиено плаќање, одобрение што недостига или конфликтен запис обично треба да го запрат работниот тек и да побараат човечки внес.
- Поставете максимален број повици на алатки и повторни обиди.
- Кога е можно, направете ги операциите за запишување идемпотентни, за повторниот обид да не дуплира дејство.
- Барајте потврда пред неповратни дејства или дејства со големо влијание.
- Враќајте машински читливи категории на грешки заедно со објаснувања читливи за луѓе.
- Евидентирајте влезови, излези, повици на алатки и конечни одлуки со соодветни контроли за приватност.
Верификацијата е местото каде што се заслужува доверба
Агентот не треба да пријави завршување затоа што создал убедлива реченица. Треба да пријави завршување затоа што може да посочи докази од системот што е извор на евиденција.
Земете агент за кодирање од кој се бара да поправи грешка. Веродостоен работен тек не е „уреди датотеки, па кажи дека грешката е поправена“. Тој е „идентификувај го однесувањето што не успева, направи ограничена промена, изврши ги релевантните проверки, прегледај ги резултатите и јасно пријави ја преостанатата неизвесност“. Ако тестовите не можат да се извршат, тоа ограничување припаѓа во резултатот, наместо тивко да биде заменето со самодоверба.
Истиот принцип важи и надвор од софтверот. Агент за закажување треба да потврди дека состанокот е создаден. Агент за истражување треба да разликува преземен материјал од сопствената синтеза. Финансиски агент треба да ја потврди состојбата на трансакцијата пред да извести некого.
Користете ги луѓето за расудување, не за рутинска работа
Човечкиот преглед е најефективен кога се појавува на значајни граници. Барањето одобрување по секое пребарување со низок ризик го прави агентот незгоден. Дозволувањето да заврши скапа надворешна обврска без преглед го прави неразумен.
Разумен образец е да се автоматизира обратлива, добро дефинирана работа и да се ескалираат одлуките што вклучуваат пари, правна изложеност, безбедност, репутациски ризик или спротивставени деловни приоритети. Агентот може да состави контекст, да идентификува опции и да подготви препорака. Лицето останува одговорно за одлуката што бара расудување.
Целта не е да се отстранат луѓето од циклусот. Таа е да се отстрани избегливото триење од циклусот.
Почнете со тесен работен тек
Најсилниот прв агент ретко е дигитален вработен за општа намена. Обично е фокусиран работен тек со јасен активатор, ограничени алатки, мерлив излез и очигледен сопственик кога работите ќе тргнат наопаку.
Изберете работа што е доволно честа за да биде важна, доволно структурирана за да се оцени и со доволно низок ризик за да се подобрува итеративно. Потоа набљудувајте ги реалните извршувања. Каде на агентот му недостасуваше контекст? Кој резултат од алатка беше двосмислен? Кој исклучок бараше лице? Тие одговори се патоказот за да се направи системот поспособен.
Агентите со вештачка интелигенција стануваат сигурни не само преку поголемо барање, туку преку дисциплиниран системски дизајн: ограничено овластување, корисна состојба, експлицитно справување со неуспеси и завршување засновано на докази. Градете околу таа основна логика и агентите можат да станат доверливи соработници, наместо импресивни демонстрации што се распаѓаат при првиот неуреден граничен случај.