placeholder

Beter zoeken met behulp van AI

Samen met de Leprastichting en Kickstart AI hebben we verkend hoe AI de zoekervaring van gebruikers kan verbeteren. Ontdek hoe we tijdens een hackathon de mogelijkheden van AI hebben verkend.

Introductie

Tijdens een overleg met de Leprastichting bespraken we hoe AI eindgebruikers kan ondersteunen bij het efficiënt doorzoeken van een uitgebreide collectie wetenschappelijke publicaties en praktische materialen. De website van InfoNTD bevat meer dan 35.000 documenten, die doorzoekbaar zijn via Elasticsearch. Hoewel dit systeem effectief is, blijft het voor gebruikers een uitdaging om de grote hoeveelheid documenten te filteren tot relevante resultaten.

We zijn al enige tijd bezig met het verkennen van hoe AI onze diensten en die van onze klanten kan verbeteren. Tot nu toe is AI vooral gebruikt voor conversatie-chatbots en ondersteunende taken. Onze volgende stap is om AI gebruiksvriendelijk in onze website te integreren, in lijn met onze missie om innovatieve technologieën toegankelijk te maken voor eindgebruikers.

Na zorgvuldige overweging zien we veel potentieel in het versterken van de zoekfunctie met AI. Dit zou gebruikers op diverse manieren kunnen ondersteunen bij het efficiënt vinden van de juiste informatie.

Terminologie

In dit artikel gaan we niet al te diep in op de technische werking van AI, maar richten we ons meer op de praktische toepassing ervan. Hierbij een korte toelichting op de termen die we gebruiken:

  • AI (Artificial Intelligence of Kunstmatige Intelligentie): Het vermogen van een machine om taken uit te voeren die typisch menselijke intelligentie vereisen.
  • LLM (Large Language Model): Een type AI dat gespecialiseerd is in het interpreteren en verwerken van grote hoeveelheden tekst.
  • GPT (Generative Pre-trained Transformer): Een specifieke categorie van LLMs ontwikkeld door OpenAI, waarvan ChatGPT een bekend voorbeeld is.

Samenwerking met Kickstart AI

We hebben onlangs samengewerkt met Kickstart AI, een non-profitorganisatie die AI-gebruik in Nederland wil vergroten. Tijdens hun bedrijfspresentatie onderstreepten ze de technische kansen, maar ook de uitdagingen op het gebied van gebruikerservaring (UX) bij het integreren van AI toepassingen. We besloten al snel gezamenlijk een hackathon te organiseren om dit vraagstuk nader te onderzoeken, waarbij we zowel de technische als de UX-uitdagingen gingen uitzoeken.

placeholder
placeholder

Geen chatbot maar een ondersteunende UX

We wilden een standaard conversatie gerichte toepassing vermijden, omdat deze vaak niet een optimale gebruikerservaring biedt. In plaats daarvan kwamen voor de hackathon enkele innovatieve ideeën naar voren:

  • Zoekopdrachten via natuurlijke taal: Gebruikers kunnen zoekopdrachten formuleren in hun eigen woorden, zonder complexe filters in te hoeven stellen.
  • Zoekassistent: Een AI-assistent die actief helpt bij het vinden van de juiste resultaten, bijvoorbeeld door suggesties te geven.
  • Samenvatten van zoekresultaten: Kort de inhoud van zoekresultaten samenvatten en uitleggen waarom deze artikelen relevant zijn voor de zoekopdracht.
  • Gepersonaliseerde suggesties: Door de gebruiker beter te begrijpen, bijvoorbeeld via profilering, kan AI meer toegespitste suggesties doen.
  • Verbeteren van ranking: De volgorde van zoekresultaten optimaliseren zodat deze beter aansluiten bij de zoekopdracht.

Oplossingsrichting: AI als middleware

We waren op zoek naar een manier om een Large Language Model (LLM) te gebruiken als onderdeel van een systeem, waarbij we AI inzetten als tussenoplossing. Een uitdaging hierbij is dat de uitkomsten van een LLM niet altijd consistent zijn. Dit kan voordelig zijn voor een gebruiker die verschillende suggesties wil zien, maar voor de interactie tussen twee systemen is consistentie noodzakelijk.

Een praktijkvoorbeeld is onze ervaring met het inzetten van ChatGPT voor het analyseren, samenvatten en thematisch groeperen van gebruikersfeedback. Hoewel een LLM hier goed voor geschikt is, kregen we vaak inconsistente JSON-outputs, wat problematisch was voor onze applicatie. Met de nieuwe "JSON mode" van ChatGPT kunnen we nu consistent geldige JSON-outputs ontvangen, wat een grote verbetering is. Echter, dit garandeert niet dat de JSON altijd aan een specifiek schema voldoet, dus enige validatie blijft noodzakelijk.

Bovendien blijkt uit onze tests dat het zorgvuldig formuleren van de invoer, bekend als 'prompt engineering', cruciaal blijft om bruikbare antwoorden te verkrijgen. Ondanks suggesties dat dit minder belangrijk zou moeten worden, is het in onze ervaring nog steeds essentieel voor het verkrijgen van relevante resultaten.

Resultaten

We hadden slechts een middag om ons te verdiepen in de use case, ideeën te ontwikkelen en oplossingen te schetsen. Door de groep deelnemers op te splitsen, konden we verschillende ideeën simultaan uitwerken en testen. Hoewel we geen complete demo konden presenteren, vielen veel puzzelstukjes op hun plaats.

Een deel van ons team richtte zich op de gebruikerservaring. We analyseerden de behoeften van typische gebruikers en een veel voorkomende zoekvraag om te zien hoe we met AI de gebruikerservaring tijdens het zoeken konden verbeteren. Hierbij kwamen we tot een drietal aan toevoegingen voor de zoekresultatenpagina (zie afbeelding):

  1. Het omzetten van een zoekterm naar verschillende filters.
  2. Het stellen van vervolgvragen voor verdere verfijning.
  3. Het geven van een samengevat antwoord, gebaseerd op de gevonden zoekresultaten.

Het andere deel van het team deed een tweetal technische verkenningen. Eerst interpreteerden we de zoekvragen van gebruikers. We voorzagen de AI van context over de gebruikers en de inhoud, legden uit welke filters mogelijk waren, en gaven een voorbeeld van een typische zoekopdracht. Bijvoorbeeld, de zoekvraag “Ik zoek een training guide over lepra in Brazilië” vertaalden we naar een zoekopdracht met filters: "country = br", "subject = leprosy", en "type = practical material".

Vervolgens keken we hoe we zoekresultaten konden samenvatten. We gaven de AI de zoekopdracht en de gevonden artikelen om te bepalen of het gezochte antwoord erbij zat. De AI kon dan aangeven hoe relevant de resultaten waren en specifieke resultaten uitlichten die mogelijk het beste antwoord boden. Als de gezochte informatie niet in de artikelen stond, kon de AI dat melden en eventueel alternatieven voorstellen.

Diagram uitleg AI input en zoekresultaten

Bevindingen

De hackathon met Kickstart AI en de Leprastichting leverde boeiende inzichten op, maar er is nog een praktijktest nodig. Hoewel de resultaten met standaardvoorbeelden veelbelovend zijn, kan de echte wereld anders uitpakken. User testing lijkt een essentiële volgende stap. Enkele observaties die voortkomen uit de hackathon:

Snelheid

Een LLM kan op dit moment traag zijn, zeker naarmate de input en output groot wordt. Voor typische vragen kan het snel enkele seconden duren voordat de verwerking is voltooid. Voor real-time toepassingen zoals deze (een zoekopdracht) is dit niet ideaal.

Dit is in principe een kwestie van optimalisatie van de opdracht die we aan de LLM geven: hoe korter de opdracht (zowel de vraag als het antwoord), hoe sneller de reactie. Maar we zien ook dat hoe korter de opdracht is, hoe minder consistent de output is. Dit is een kwestie van ‘prompt engineering’, en over tijd zullen de modellen en hardware ook sneller worden.

Kosten

Het gebruik van AI kost geld, dat wordt berekend op basis van het aantal (delen van) woorden en andere tekens die worden gebruikt (ook wel "tokens" genoemd). De kosten variëren per AI-model en hangen onder andere af van de complexiteit van het model, en de kosten die nodig zijn om het model te draaien, zowel op hardware als op elektriciteitskosten. 

De meeste cloud aanbieders bieden een keuze voor welk model er gebruikt wordt. Ieder model heeft zijn eigen specialiteiten, en brengt andere kosten met zich mee. Er zijn inmiddels ook veel Open Source modellen, die je zowel vanuit de cloud als ook zelf op je eigen machines kan draaien. 

Ethiek

Er zijn belangrijke ethische overwegingen verbonden aan AI. Het is verre van een ‘groene’ oplossing: het stroomverbruik van het toepassen van AI wereldwijd werd in een paper van de VU Amsterdam vergeleken met het stroomverbruik van Ierland. Ook is de ontwikkeling van AI gecentraliseerd bij grote bedrijven, vaak met onduidelijke methoden en intenties. Dit roept vragen op over datagebruik en -beheer, evenals de bredere maatschappelijke impact.

Maar er zit natuurlijk ook zeker een positieve kant aan: een artikel van MIT toont een mogelijke 40% toename in productiviteit, wetenschappelijk onderzoek naar ziekten als Alzheimer wordt versneld, en nieuwe Open Source modellen maken AI toegankelijker voor iedereen (wat goed aansluit bij de missie van Kickstart AI). 

placeholder
placeholder

Conclusie

De hackathon bleek een succesvolle middag te zijn waarin we elkaar goed hebben kunnen aanvullen met betrekking tot gebruikte technieken en gedachten over UX. Dit smaakt naar meer. Veel dank aan Kickstart AI voor deze leuke en leerzame middag, en aan Leprastichting voor het meedenken en beschikbaar stellen van hun materiaal.

martijn.jpg

Wil je ook weten wat AI voor jullie kan betekenen?

Neem dan contact met ons op!