Wanneer een bezoeker typt "ik verhuis, hoe zit het met mijn contract?", gebruikt hij het woord "opzegging" noch het woord "overdracht", die nochtans in uw voorwaarden staan. Klassiek zoeken op trefwoorden vindt niets. Semantisch zoeken zoekt de betekenis van de vraag en vindt de passages die erover gaan, ook als ze anders geformuleerd zijn.
Trefwoorden of betekenis: twee manieren van zoeken
Zoeken op trefwoorden vergelijkt de woorden van de vraag met die van de documenten. Het is snel, precies voor exacte termen en makkelijk uit te leggen: een document wordt gevonden omdat het het gezochte woord bevat. Klassieke zoekmachines verbeteren dat principe met wegingsmethodes zoals BM25, die meer gewicht geven aan zeldzame woorden en aan documenten waarin ze vaak voorkomen.
Semantisch zoeken vergelijkt de betekenis. Elke documentpassage en elke vraag worden omgezet in embeddings, reeksen getallen die hun betekenis voorstellen. Het systeem vindt dan de passages waarvan de betekenis het dichtst ligt, ook zonder gemeenschappelijk woord.
| Situatie | Zoeken op trefwoorden | Semantisch zoeken |
|---|---|---|
| Synoniemen ("tarief" en "prijs") | Mist de passage vaak | Vindt ze |
| Vraag in gewone taal | Hangt af van de gekozen woorden | Werkt goed |
| Exacte referentie, nummer, code | Zeer precies | Minder betrouwbaar |
| Vraag in een andere taal dan het document | Faalt | Werkt met een meertalig model |
| Uitleg van het resultaat | Eenvoudig: het woord staat erin | Moeilijker: de betekenis ligt dichtbij |
Waarom het nuttig is voor een AI-assistent
Bezoekers kennen de woordenschat van uw bedrijf niet. Ze schrijven zoals ze praten, met hun eigen woorden, soms met fouten, soms in een andere taal. Semantisch zoeken overbrugt die kloof en laat de assistent de juiste informatie vinden in de kennisbank.
Bij assistenten die met RAG werken, is het de eerste stap: de relevante passages vinden en ze aan het taalmodel geven, dat het antwoord schrijft. De passages staan meestal in een vectordatabase, die dat zoeken snel maakt, ook bij grote volumes.
Hybride zoeken
De twee methodes hebben complementaire sterktes. Veel systemen combineren ze: zoeken op trefwoorden vindt exacte termen (een productnaam, een formuliernummer), semantisch zoeken vindt andere formuleringen. De resultaten worden daarna samengevoegd en gerangschikt. Dat hybride zoeken geeft meestal betere resultaten dan elk van beide alleen, vooral in domeinen waar vaktaal en gewone taal samengaan.
De grenzen van semantisch zoeken
- Dichtbij betekent niet juist. Een passage over de garantie van een nieuw toestel ligt dicht bij een vraag over de garantie op een herstelling, zonder erop van toepassing te zijn. Het model en zijn instructies moeten daarna de reikwijdte controleren
- De opdeling van documenten telt. Een te lange passage mengt onderwerpen, een te korte verliest haar context. Duidelijke secties met een expliciete titel verbeteren de resultaten
- Getallen worden slecht voorgesteld. "Termijn van 14 dagen" en "termijn van 30 dagen" hebben voor een embeddingmodel een zeer gelijkaardige betekenis, terwijl het verschil telt voor de klant
- Het resultaat is minder uit te leggen. Komt een verkeerde passage boven, dan is het moeilijker te begrijpen waarom dan bij zoeken op woorden
Die grenzen verklaren waarom zoeken nooit alleen volstaat: de bronvermelding, de instructie om "ik weet het niet" te zeggen en het nalezen van gesprekken blijven nodig.
Hoe u documenten schrijft die makkelijk gevonden worden
Wat de zoekmethode ook is, enkele schrijfgewoonten helpen de assistent:
- Een duidelijke titel per sectie, met de woorden die uw klanten zouden gebruiken: "Uw contract opzeggen of overdragen bij een verhuizing"
- Het onderwerp herhaald in belangrijke alinea's, in plaats van een voornaamwoord dat naar een titel drie alinea's hoger verwijst
- Gangbare synoniemen één keer vermeld: "het verplaatsingstarief (de prijs)"
- De termen in de drie talen voor kernbegrippen, als uw publiek meertalig is
En in KernChat?
KernChat gebruikt vandaag geen semantisch zoeken met embeddings. De bronnen van de kennisruimtes gaan volledig in de context van het model, dat de documenten zelf leest en andere formuleringen begrijpt. Gaan de bronnen boven de groottegrens van een assistent, dan rangschikt een zoekopdracht op trefwoorden van het type BM25 de bronnen met de meeste gemeenschappelijke woorden met de vraag, zodat die eerst aan bod komen. Voor de documentatie van een kmo vermijdt die aanpak gemiste passages en houdt ze elke regel in haar volledige context.