Vad är en AI-agent? En enkel förklaring
En AI-agent är en språkmodell som får använda verktyg och arbetar i flera steg tills uppgiften är klar. Nyttan och risken avgörs av vilka verktyg agenten får och vilka ramar som gäller runt den.
iSearch
Innehåll
Ordet AI-agent används om allt från en vanlig chatt till system som arbetar på egen hand i timmar. Det gör begreppet svårare än det behöver vara. Det handlar om en språkmodell, verktyg som modellen får använda och en loop som låter den fortsätta tills uppgiften är löst.
En assistent svarar, en agent utför
En språkmodell gör en sak. Den tar emot text och skriver text tillbaka. Den kan inte på egen hand läsa en inkorg, söka i ett register eller boka ett möte. En enkel chattassistent fungerar på samma sätt, med ett svar för varje fråga.
En AI-agent kan mer än så. Den kan använda verktyg, och den kan fortsätta i flera steg utan att någon skriver en ny fråga mellan varje steg. Ni ger den ett mål, och den tar sig dit genom att söka, läsa, räkna eller ändra något, ett steg i taget.
Ett verktygsanrop går till så här. Programmet runt modellen beskriver i förväg vilka verktyg som finns, till exempel en sökning eller en funktion som hämtar ett ärende. När modellen behöver ett verktyg svarar den med en strukturerad begäran om att få använda det. Programmet utför anropet och lämnar tillbaka resultatet, och modellen läser det och går vidare.
Modellen utför alltså ingenting själv. Det är programmet runt den som kör verktygen, och därför är det också där gränserna sätts. Vilka verktyg som finns, vad de når och vilka anrop som kräver ett godkännande avgörs i den koden. Var verktygen körs spelar också roll. En del tjänster kör vissa verktyg hos leverantören, andra låter dem köras i den egna miljön. Det påverkar vart uppgifterna skickas.
Minnet är det som skickas med
En språkmodell minns ingenting mellan två anrop. Det som ser ut som minne är att programmet skickar med hela samtalet varje gång, med instruktioner, frågor, tidigare svar och resultat från verktygen. Allt det ska rymmas i modellens kontextfönster, den text modellen kan se på en gång.
Instruktionerna i början kallas systemprompt. Där står vilken roll agenten har, hur den ska arbeta och vad den ska undvika. Sedan följer meddelandena från användaren och från modellen, i tur och ordning.
Kontextfönstret har en gräns. Långa uppdrag och stora dokument får inte plats i sin helhet, och det som trängs ut finns inte längre för modellen. Därför hämtar många agenter bara de stycken ur ett material som gäller uppgiften för stunden. Metoden fick sitt namn i en forskningsartikel 2020 och är i dag ett vanligt sätt att låta en modell svara ur ett bestämt underlag.
Loopen som håller ihop allt
Med de delarna på plats blir agenten en loop. Modellen får målet och instruktionerna. Den väljer ett verktyg, programmet kör det och resultatet skickas tillbaka. Modellen läser resultatet och väljer nästa steg, eller avslutar med ett svar. Så fortsätter det tills målet är nått eller tills ett villkor stoppar loopen, till exempel ett högsta antal steg.
I ett fast arbetsflöde bestämmer koden ordningen i förväg. I en agent avgör modellen själv vilka steg som behövs. Det ger flexibilitet för uppgifter där vägen inte går att förutse, och det gör beteendet svårare att förutsäga. Anthropic, som utvecklar språkmodeller, rekommenderar att börja med den enklaste lösning som fungerar och att välja en agent först när uppgiften kräver det.
Det finns många sätt att bygga en agent, från plattformar där instruktioner och verktyg väljs i ett formulär till ramverk där allt skrivs som kod. Under ytan är det samma loop. Skillnaden ligger i hur mycket som är färdigt från början och hur mycket kontroll man har över varje steg. För en organisation är plattformen sällan den viktigaste frågan. Oavsett hur agenten byggs återstår samma beslut: vilken modell som används och var den körs, vilket underlag och vilka verktyg agenten når och när den ska stanna.
Ramarna avgör vad ett misstag kan kosta
OWASP räknar överdriven handlingsfrihet till de största säkerhetsriskerna för tillämpningar som bygger på språkmodeller. Orsaken är oftast att agenten har fler verktyg än uppgiften kräver, bredare behörigheter än verktygen behöver eller rätt att agera utan att någon bekräftar.
Ge agenten de verktyg uppgiften kräver och minsta möjliga behörighet. Låt handlingar som får följder vänta på ett godkännande. Pröva nya agenter i en avskild miljö innan de kopplas till riktiga system, och logga varje verktygsanrop så att det går att följa i efterhand. Hur agenter kan luras av dolda instruktioner, och hur ni hanterar det, beskrivs i riskerna med AI-agenter.
Så fungerar det i iSearch
Assistenterna i iSearch svarar med källor, så att det syns vad varje svar bygger på. Rollbaserad åtkomst styr vilka assistenter och dokument var och en når. Känsliga ändringar kräver att ytterligare en person godkänner, och en manipulationssäker revisionslogg länkar varje händelse till den förra. Språkmodellen kan köras i er egen miljö, och era uppgifter används aldrig för att träna modeller. Vi sköter driften åt er i Sverige, i en egen miljö för er organisation.
Läs mer om vad en språkmodell är och om säkerheten, eller boka en genomgång.
Källor: Anthropic, Building effective agents (2024)Anthropic, dokumentation om verktygsanropAnthropic, dokumentation om Messages APILewis m.fl., Retrieval-Augmented Generation (2020)OWASP, LLM06 Excessive Agency