Izrada upita uglavnom je usmjerena na tačnost i obuhvatanje uputa. Najveća poboljšanja u produkciji postižu se kada se sam dijalog tretira kao ključni dizajnerski problem.
Definiranje namjera u obliku okidača i radnje usmjerava model kako da odlučuje, umjesto da mu daje skriptu iz koje ne može izaći. Položaj u upitu već je sam po sebi uputa. Identitet ide na početak, nijanse ponašanja u sredinu, čvrsta ograničenja na kraj, a sve što je zaista ključno stavlja se i na početak i na kraj.
Pisanje upita željenim tonom, umjesto opisivanja tog tona, jedna je od promjena s najvećim mogućim učinkom.
Najdosljedniji su oni agenti čiji upiti različite trenutke u razgovoru tretiraju kao zasebne interakcije, svaku s odgovarajućom strukturom, a pritom cijelo vrijeme zadržavaju prepoznatljivo isti ton.
U nekim slučajevima razdvajanje agenata koji razmišljaju od onih koji govore daje dosljednije, utemeljenije odgovore i sprečava prodiranje internog rezonovanja u njih.
Ranije smo predstavili novu paradigmu izrade upita zasnovanu na spoznajama iz lingvistike i kognitivne psihologije. Pisali smo o važnosti stvaranja jasnog, dobro ograničenog problemskog prostora u kojem naš agent može djelovati te o tome kako taj prostor mora obuhvatiti metazadatak dijaloga svojstven umjetnoj inteligenciji koja komunicira s korisnicima.
Sada ćemo razmotriti nekoliko praktičnih načina na koje su se naši upiti počeli mijenjati dok smo ova načela uvodili u produkciju.
Tokom stotina iteracija upita u aktivnim sistemima za komunikaciju s korisnicima najveća poboljšanja nisu dolazila od dodavanja uputa, gomilanja primjera ili praćenja uobičajenih pravila izrade upita. Postigli smo ih tako što smo dijalog postavili u središte problema.
Kontinuiranim istraživanjem i testiranjem izdvojilo se nekoliko djelotvornih tehnika. Mijenjali bismo upit i pratili gdje je razgovor uspijevao ili podbacivao, a zatim uzroke grešaka tražili u djelotvornosti smjernica, strukturi upita i načinu na koji koristimo jezik. Rezultat je nekoliko ponovljivih obrazaca koji mijenjaju način na koji agent tumači svoju ulogu u razgovoru, odlučuje o sljedećem potezu i dosljedno zadržava isti ton u promjenjivim kontekstima.
Ovo nije univerzalan okvir niti tvrdnja da je izrada upita sada „riješena“. Riječ je o pet obrazaca koji sažimaju ono što se pokazalo uspješnim u produkciji kada cilj nije bila samo funkcionalna tačnost nego i bolji dijalog: odgovori koji su dovoljno dosljedni, prirodni i ujednačeni da predstavljaju brend.
Iako se agentski sistem može strukturirati na mnogo načina, orkestrirani radni tokovi s više agenata i dalje su popularni. Posebno u takvim sistemima, najdosljednije poboljšanje postigli smo odvajanjem agenata koji razmišljaju od onih koji razgovaraju.
Orkestriranje namjere, klasifikacija, izdvajanje znanja i korištenje alata pozadinske su operacije. Odgovori namijenjeni korisnicima pripadaju korisničkom sloju. Kada isti agent radi oboje u istom potezu, interno rezonovanje i logika mogu prodrijeti u odgovore. Odgovori postaju neodlučni, prepuni ograda ili strukturirani prema logici procesa umjesto prema potrebama osobe.


To jedno ograničenje obavlja iznenađujuće mnogo posla. Odgovore zadržava u okvirima stvarnog razgovora, sprečava poništavanje konteksta i daje rezultat bliži onome što nazivamo "isporukom razlike“. U konačnici, agent dodaje samo najmanju novu informaciju koja korisniku zaista pomaže da napreduje.
Važna je i odluka o tome koju vrstu odgovora dati. Ustanovili smo da traženje od agenta koji komunicira da prije pisanja odabere vrstu poteza — odgovor, pojašnjenje, preusmjeravanje ili čekanje — pouzdano smanjuje najčešću grešku u razgovoru: ne loše napisan tekst, već potpuno pogrešan odgovor.
Vrijedi napomenuti da najnoviji granični modeli u odgovarajućim uslovima počinju dovoditi u pitanje pretpostavku na kojoj se ovaj obrazac zasniva. Ipak, mnogi razvojni timovi iz različitih razloga još koriste manje ili starije modele, a u takvim okruženjima svakako preporučujemo razdvajanje pozadinskih funkcija od komunikacije s korisnicima.
Kod modela bez rezonovanja učenje s malim brojem primjera funkcionira jer su primjeri konkretni, brzo se primjenjuju i modeli dobro reagiraju na njih. Problem je pretjerano prilagođavanje. Kada modelu date primjer, on se veže za riječi, ritam i strukturu te neprestano stvara vrlo slične verzije istog odgovora, čak i kada se situacija promijeni.
Nenamjerno ste napisali skriptu iz koje model ne može izaći.
Namjere provedbe ili heuristike trajnija su alternativa. Umjesto da modelu pokazujemo šta treba reći u određenim scenarijima*,* dajemo mu širi par okidača i radnje: ako se dogodi X, uradi Y.
Ključna razlika je u tome što ne sužavamo X i Y primjer po primjer, čime bi postajali sve krući, već svakom postavljamo jasnu granicu toliko preciznom uputom da primjeri postaju suvišni. Tako agent ostaje osjetljiv na stvarne varijacije u razgovoru, umjesto da ih uklapa u obrazac predloška.
U praksi to manje liči na primjere, a više na primjenjiva praktična pravila:
If a key detail is missing, ask one clarifying question.
If the answer isn’t supported, say so directly and offer the best available next step.
If the request hits a guardrail, decline briefly and redirect without ceremony.
Nije naročito privlačno, ali je znatno pouzdanije od zbirke primjera odgovora jer model uči kako da odlučuje, a ne šta da ponavlja.
Položaj sadržaja u upitu određuje koliku će težinu imati. Taj obrazac dosljedno uočavamo u različitim modelima i implementacijama. Početak i kraj upita privlače nesrazmjerno mnogo pažnje. U sredini ostaju nijanse, a upravo tu im je i mjesto.
Imajući to na umu, strukturiramo svoje upite. Uloga agenta i njegova predodžba o sebi dolaze na početak kako bismo prije svega uspostavili identitet. Sredina sadrži pojedinosti o ponašanju: kako će se razgovor vjerovatno odvijati, heuristike koje usmjeravaju odgovore i raspon situacija koje agent treba rješavati. Čvrsta ograničenja i pravila o kojima nema pregovora dolaze na kraj, gdje ostaju „na umu“.
Sve što je zaista ključno stavljamo na oba mjesta. Određeno pravilo izlaza — recimo, čvrsta uputa o interpunkciji ili formatiranju — lako se previdi ako se samo jednom pojavi usred opširnog upita. Kada se ponovi na kraju, ostaje djelotvorno.
Kad je riječ o učinku nedavno navedenih informacija, vrijedi napomenuti da su strukturirani izlazi, kada se koriste, zapravo posljednja uputa u upitu. Polja opisa u strukturiranim izlazima kvalitativno utječu na odgovore i stvaraju čvršći ugovor o izlazu od ostatka upita.


Naučili smo da ni za ton komunikacije ne koristimo učenje s malim brojem primjera, a to je jedna od promjena koje su najviše unaprijedile naše agente koji komuniciraju s korisnicima.
Umjesto toga, cijeli upit pišemo željenim tonom. Ne opisujemo ton niti navodimo niz pridjeva koji ga približno dočaravaju, već ga zaista koristimo u punom tekstu, od prvog do posljednjeg reda. Upit postaje demonstracija. To nazivamo „neskriptiranošću“: usmjeravamo model da oponaša svoj ulaz, ali mu dopuštamo da koristi širi raspon jezika i izraza koji su u istom „stilskom okviru“ kao i sam upit.
Tako upitom potičemo raznovrsnost unutar dosljednog tona. To je dio naše strategije da dijalog postavimo u središte zadatka svakog agenta, bez trošenja prostora na izričite upute koje nastojimo svesti na minimum.
Ako ipak koristimo izričite primjere tona komunikacije, oni pokazuju "šta ne treba raditi“. Naprimjer: “No em dashes. Ever. No clichés. No policy dumping. No over-explanation when a single sentence will close the loop.” Negativna ograničenja istovremeno su preciznija i manje sputavajuća od pozitivnih težnji jer imenuju greške prema kojima će model najvjerovatnije skrenuti.
I formatiranje je važno jer određuje ton odgovora. Upit prepun stavki, naslova i uputa u zagradama usmjerava model prema organiziranijem, službenijem izlazu. Ako izlaz treba djelovati kao razgovor, ulaz ne bi trebao izgledati kao dokument sa šturim specifikacijama.
Većina upita o tonu svodi se na ličnost. Navodi se niz pridjeva koji opisuju kako bi agent trebao zvučati. Srdačno. Profesionalno. Ljubazno, ali sažeto. Ti opisi nisu pogrešni, ali način na koji se ton doživljava u razgovoru zapravo određuje registar: kako se isti osnovni karakter ponaša u različitim društvenim situacijama.
Privremena poruka tokom obrade upita ne bi trebala zvučati kao konačan odgovor. Odgovor kojim se primjenjuje zaštitno ograničenje ne bi trebao imati istu energiju kao neobavezan razgovor. Frustrirani korisnik ne bi trebao dobiti jednaku dozu šarma ili humora kao neko ko samo usput razgledava.


U tome je razlika između tona brenda i dizajna razgovora. Ton brenda često opisuje karakter, dok dizajn razgovora određuje kako se taj karakter ponaša kada se okolnosti promijene. Kada to uradimo kako treba, više nismo samo autori tekstova koji rade na izlazima umjetne inteligencije. Dizajniramo način na koji se određeni ton razvija kroz razgovor.
Primijetit ćete da nijedan od ovih obrazaca nije tehnički složen. To i jeste dio poente. Arhitektura agentskog sistema jeste važna, ali za kvalitetan razgovor morat ćete posvetiti mnogo vremena osmišljavanju i usavršavanju svojih upita.
Jaz između isključivo funkcionalne i istinski razgovorne umjetne inteligencije ne zatvara se tehničkim dizajnom, već jasnijim razumijevanjem uloge jezika i pažnje u ljudskom dijalogu te postavljanjem dijaloga u središte problemskog prostora vaših agenata.
Timovi za AI proizvode, inženjeri i dizajneri iskustva trebaju dizajnu razgovora pristupiti jednako temeljito kao i tehničkoj izvrsnosti umjetne inteligencije koja komunicira s korisnicima. Za ljude s druge strane tih razgovora ne postoje ni model, ni saradnja više agenata, ni poziv alata — postoji samo interakcija koja djeluje ispravno ili ne. Interakcija koja gradi ili narušava povjerenje.
Na kraju, niko ne doživljava arhitekturu. Doživljava razgovor.
Razgovor je proizvod.