Wat is een AI Agent?
Een AI agent is een autonoom softwareprogramma dat aangedreven wordt door een Large Language Model (LLM) als redeneerbrein. In tegenstelling tot een statische chatbot die enkel vragen beantwoordt, heeft een agent een overkoepelend doel, het vermogen om een plan te maken en de autonomie om acties uit te voeren totdat dat doel is bereikt.
Belangrijkste kenmerken van een AI agent:
- Autonome besluitvorming: De agent analyseert het probleem, verdeelt het in subtaken en bepaalt zelfstandig welke stappen logisch zijn.
- Geheugen en context: Hij onthoudt eerdere interacties, bewaart tussenresultaten en past zijn koers aan als een tussenstap faalt.Doelgerichtheid: Hij stopt pas wanneer het einddoel succesvol is gevalideerd.
- Voorbeeld: Een Klantenservice Agent krijgt de melding: “Ik wil mijn bestelling retourneren.” De agent redeneert zelf: hij zoekt de bestelstatus op, toetst de retourtermijn af, genereert een verzendlabel en stuurt een bevestiging naar de klant.
Wat is een AI Skill?
Een AI skill (in frameworks zoals OpenAI, LangChain of Semantic Kernel ook wel tool, action of function call genoemd) is een specifieke, afgebakende functionaliteit die aan een agent ter beschikking wordt gesteld.Een skill heeft geen eigen wil of autonomie. Het is een deterministisch stuk software: je stopt er een specifieke input in, de code voert zijn taak uit, en er komt een voorspelbare output uit.
Belangrijkste kenmerken van een skill:
- Afgebakend en voorspelbaar: Eén skill doet doorgaans één ding heel goed (bijv. een e-mail sturen, een database query uitvoeren of een datum berekenen).
- Passief: Een skill voert pas actie uit wanneer hij expliciet door de agent (of gebruiker) wordt aangeroepen.``
- Deterministisch: Waar een taalmodel creatief en flexibel kan zijn, zorgt de skill voor harde, betrouwbare logica via API’s en code.
- Voorbeeld: De functie bereken_terugbetaling(bedrag, kortingscode) of de API-koppeling verstuur_email(ontvanger, bericht).
Hoe werken agents en skills samen in de praktijk?
Een agent zonder skills is als een briljante denker zonder handen: hij weet wat er moet gebeuren, maar kan de buitenwereld niet beïnvloeden. Omgekeerd is een skill zonder agent slechts een stuk dode code dat wacht op menselijke instructies. Wanneer je ze combineert, ontstaat er echte automatisering via een zogeheten ReAct-lus (Reason + Act):
- Doel ontvangen: “Boek een vergadering met Sarah voor morgenmiddag en stuur haar de agenda.
- Redeneren (Agent): De agent ziet dat hij Sarahs e-mailadres en zijn eigen agenda nodig heeft.
- Skill 1 aanroepen: zoek_contact(naam=”Sarah”) $\rightarrow$ levert e-mailadres op.
- Skill 2 aanroepen: check_beschikbaarheid(datum=”morgen”, tijdsblok=”middag”) $\rightarrow$ 14:00 uur is vrij.
- Skill 3 aanroepen: maak_agenda_afspraak(tijd=”14:00”, genodigde=”Sarah”) $\rightarrow$ succesvol ingepland.
- Afronden (Agent): De agent koppelt terug naar de gebruiker: “De afspraak met Sarah staat voor morgen om 14:00 uur, inclusief agenda.
Waarom is dit onderscheid belangrijk?
Wie AI-oplossingen bouwt of integreert, moet beseffen dat het succes van een agent staat of valt met de kwaliteit van zijn skills:
- Modulair bouwen: Je kunt skills los ontwikkelen, testen en beveiligen. Een agent leert vervolgens vanzelf wanneer hij welke skill moet inzetten.
- Veiligheid en controle: Omdat skills strikte API-grenzen hebben, behoud je controle over wat een agent wél en niet mag doen in je bedrijfssystemen (bijvoorbeeld wel data uitlezen, maar niet definitief wissen).
- Schaalbaarheid: Nieuwe functionaliteit toevoegen betekent simpelweg een extra skill registreren in de gereedschapskist van je agent.