Umjetna inteligencija (UI)

AI Agents: Integrating Intelligence, Not Just Adding Features

AI agenti: integriranje inteligencije, a ne samo dodavanje značajki

Većini softverskih timova ne trebaju „AI značajke” apstraktno. Potrebne su im bolje odluke, brža predavanja zadataka, manje ponavljajućih poslova i sustavi koji mogu sigurno djelovati kada je sljedeći korak jasan. To je razlika između dodavanja okvira za razgovor proizvodu i integriranja AI agenta u stvarni rad.

AI agent nije jednostavno model s upitom. To je sustav koji može protumačiti cilj, koristiti definirane alate, pregledati rezultate i odlučiti je li potreban daljnji rad. Model pruža fleksibilno zaključivanje i razumijevanje jezika; okolni softver pruža identitet, dozvole, pristup podacima, provjeru valjanosti, mogućnost praćenja i ograničenja.

Ta je razlika važna jer su najvrjedniji projekti s agentima obično integracijski projekti. Težak posao rijetko je odabir domišljatog upita. Riječ je o povezivanju inteligencije s pravim kontekstom i radnjama bez stvaranja krhkog, skupog ili nesigurnog sloja automatizacije.

Počnite s radnim tijekom, a ne modelom

Slaba AI inicijativa počinje nejasnim pitanjem: „Gdje možemo koristiti veliki jezični model?” Snažnija inicijativa počinje radnim tijekom koji već ima poteškoće. Možda osoblje korisničke podrške neprestano sažima povijesti računa. Možda inženjeri troše vrijeme na klasificiranje pristiglih nedostataka. Možda operativni tim ručno provjerava ispunjava li zahtjev pravilo prije njegova usmjeravanja.

Tražite posao s trima kvalitetama: ulaz je razumno dostupan, željeni ishod je razumljiv, a osoba može pregledati ili poništiti pogreške. To su bolji temelji od zadataka odabranih isključivo zato što zvuče impresivno.

Primjerice, razmotrite internog asistenta za incidente. Osnovna značajka mogla bi sažeti upozorenje. Agentski radni tijek može ići dalje: dohvatiti relevantne priručnike, pregledati metapodatke nedavnih implementacija, prikupiti povezana upozorenja, izraditi nacrt ažuriranja statusa i otvoriti prijavu koju će dežurni inženjer pregledati. Agent je koristan ne zato što stvara rječit tekst, nego zato što skraćuje vrijeme potrebno za sastavljanje točne operativne slike.

Osmislite granicu između prosudbe i djelovanja

Modeli su dobri u tumačenju nestrukturiranih ulaza, stvaranju alternativa i suočavanju s nejasnoćom. Nisu zamjena za deterministička poslovna pravila. Ako se pravilo može jasno izraziti u kodu, kodirajte ga u kodu. Neka agent obrađuje dijelove koji imaju koristi od fleksibilnog tumačenja.

To vodi do praktičnog obrasca dizajna: koristite model za predlaganje, a zatim softver za provjeru i izvršavanje. Agent može izdvojiti zatražene promjene iz e-pošte, ali validator bi trebao potvrditi obavezna polja. Može preporučiti plan implementacije, ali sustav za implementaciju trebao bi provoditi zaštite okruženja. Može izraditi nacrt odgovora kupcu, ali osoba bi trebala odobriti poruke koje uključuju povrate novca, pravne obveze ili osjetljive račune.

Učinite alate uskim i izričitima

Agent ne bi trebao dobiti neograničen pristup bazi podataka, ljusci ili upravljačkoj ravnini produkcije. Umjesto toga, izložite male alate s jasnim ulazima i predvidljivim izlazima. Alat pod nazivom get_customer_orders(customer_id) lakše je autorizirati, testirati i revidirati nego široki pristup bazi podataka. Alat pod nazivom create_draft_ticket(title, body) sigurniji je od vjerodajnice za praćenje problema opće namjene.

Dizajn alata također poboljšava pouzdanost. Model ima manje prostora za nagađanje, dok platforma ima više prilika odbiti nevaljane zahtjeve prije nego što se dogodi išta važno.

  • Dodijelite svakom alatu jednu fokusiranu odgovornost.
  • Provjerite ulaze prije nego što alat djeluje.
  • Vratite strukturirane rezultate koje agent može lako protumačiti.
  • Odvojite alate samo za čitanje od alata koji mijenjaju stanje.
  • Za značajne radnje zahtijevajte izričitu potvrdu.

Kontekst je odluka o proizvodu

Agent ne može donositi dobre odluke samo na temelju generičkog upita. Potreban mu je specifičan kontekst koji bi sposoban kolega tražio: trenutačni detalji računa, primjenjiva pravila, stanje sustava, nedavna povijest i definicija uspješnog ishoda. No više konteksta nije uvijek bolje. Nefiltrirani kontekst može biti zastario, proturječan, povjerljiv ili jednostavno ometajući.

Tretirajte dohvaćanje konteksta kao dio dizajna proizvoda. Odlučite koji su zapisi relevantni, koliko svježi moraju biti, kome je dopušten pristup njima i što agent treba učiniti kada informacije nedostaju. Posljednje je pitanje posebno važno. Pouzdan agent trebao bi moći, zapravo, reći: „Nemam dovoljno dokaza za nastavak”, a zatim zatražiti pregled ili krenuti sigurnim zamjenskim putem.

Za asistenta u prodajnim operacijama to može značiti dohvaćanje samo zapisa povezanih s trenutačnim računom i prilikom. Za asistenta za pregled koda to može značiti ograničavanje analize na predloženu promjenu, njezine testove i dokumentirane konvencije, umjesto pokušaja zaključivanja o cijeloj bazi koda na temelju nekoliko datoteka.

Gradite za neuspjeh prije skaliranja

Ponašanje agenta je probabilističko, a vanjski sustavi otkazuju na uobičajene načine: vremenska ograničenja, pogreške dozvola, duplicirani zahtjevi, nepotpuni podaci i promjenjiva sučelja. Dizajn za produkciju mora uzeti u obzir oboje.

Pretpostavimo da agent smije stvoriti zadatak za praćenje nakon klasificiranja zahtjeva kupca. Ako API poziv uspije, ali se odgovor izgubi, naivni ponovni pokušaj može stvoriti duplikate. Krajnja točka radnje trebala bi podržavati ključ idempotentnosti, a radni tijek trebao bi zabilježiti rezultat prije nastavka. Ako dohvaćanje konteksta premaši vremensko ograničenje, agent ne bi trebao izmišljati odgovor; trebao bi prijaviti ograničenje i primjereno usmjeriti slučaj.

1. Primite zahtjev i dodijelite ID radnog tijeka.
2. Dohvatite autorizirani kontekst.
3. Zatražite od modela strukturirani prijedlog.
4. Provjerite obavezna polja i ograničenja pravila.
5. Po potrebi zatražite ljudsko odobrenje.
6. Izvršite radnju s ključem idempotentnosti.
7. Zabilježite ulaze, odluke, radnje i konačni status.

Ovo može izgledati manje čarobno od autonomne demonstracije. Također je mnogo bliže sustavu kojem ljudi mogu vjerovati.

Mjerite operativnu vrijednost, a ne razgovornu privlačnost

Tečan odgovor može prikriti loš radni tijek. Procjenjujte agente s istom disciplinom koja se koristi za drugi softver: definirajte očekivane ishode, prikupite reprezentativne slučajeve, testirajte načine neuspjeha i pratite ponašanje u produkciji.

Prava metrika ovisi o poslu. Agent za trijažu može se ocjenjivati prema ispravnom usmjeravanju i kvaliteti eskalacije. Agent za obradu dokumenata može se ocjenjivati prema točnosti izdvajanja i vremenu pregleda. Asistent za razvojne inženjere može se ocjenjivati prema tome pomaže li u stvaranju manjih, bolje testiranih promjena uz manje ponovnog rada. Kvaliteta odgovora važna je, ali je samo jedan dio sustava.

Održavajte skup za pregled koji uključuje rutinske slučajeve, nejasne slučajeve, neispravno oblikovane ulaze i zahtjeve koje agent mora odbiti. Ponovno ga pokrenite kada se promijene upiti, modeli, alati, pravila ili logika dohvaćanja. To nije birokracija; to je regresijsko testiranje ponašanja koje se ne može zajamčiti tradicionalnim sustavom tipova.

Usvajanje je problem upravljanja promjenama

Čak i tehnički ispravan agent može propasti ako ljudi ne razumiju njegovu ulogu. Korisnici trebaju znati što može učiniti, što ne može učiniti, kada djeluje automatski i kako ga ispraviti. Timovi koji upravljaju sustavom trebaju jasno vlasništvo nad upitima, alatima, podacima za evaluaciju i odgovorom na incidente.

Počnite s vidljivom pomoći prije skrivene automatizacije. Dopustite ljudima da pregledaju prijedloge, usporede ih sa svojim uobičajenim postupkom i prepoznaju nedostatke. Kako se dokazi prikupljaju, automatizirajte korake niskog rizika koji dosljedno funkcioniraju. Taj napredak gradi povjerenje, istodobno otkrivajući iznimke koje zaslužuju ljudsku prosudbu.

Inteligencija postaje vrijedna kada je povezana

Trajna prilika u AI-ju nije skup značajki noviteta. To je softver koji donosi korisnu prosudbu u prostore između sustava, dokumenata, odluka i ljudi. Model je važan, ali nije cijeli proizvod.

Gradite agente oko stvarnih radnih tijekova. Dajte im uske alate, relevantan kontekst, jasne zaštitne mjere i iskrene putove neuspjeha. Mjerite poboljšavaju li rad, a ne zvuče li impresivno. Kada je inteligencija integrirana na taj način, AI prestaje biti dekorativni sloj i postaje dio načina na koji pouzdan softver obavlja posao.

Portret autora bloga

Mihajlo

Ja sam Mihajlo — programer vođen znatiželjom, disciplinom i stalnom željom da stvorim nešto smisleno. Dijelim uvide, tutorijale i besplatne usluge kako bih pomogao drugima da pojednostave svoj rad i rastu u svijetu softvera i umjetne inteligencije koji se neprestano razvija.