Wat is een vectordatabase?
Zoeken op betekenis
Een gewone zoekfunctie zoekt op letters: typ "auto" en je vindt "auto". Zoek je op "wagen", dan vind je niets, ook al bedoel je hetzelfde. Een vectordatabase lost dat op door tekst om te zetten in een reeks getallen die de betekenis vastlegt. Teksten met een vergelijkbare betekenis krijgen vergelijkbare getallen, en dus kun je zoeken op nabijheid in plaats van op exacte overeenkomst.
Hoe die getallen ontstaan
Een apart model, een embedding-model, leest een stuk tekst en geeft er een reeks van enkele honderden tot enkele duizenden getallen voor terug. Die reeks heet een vector. Het model is zo getraind dat teksten over hetzelfde onderwerp dicht bij elkaar uitkomen, ook als er geen enkel woord overeenkomt.
Waarom bijna elke AI-toepassing er een heeft
Omdat het de kern is van RAG: bij elke vraag zoek je eerst de relevante passages uit je eigen documenten en geef je alleen die mee aan het taalmodel. Zonder vectordatabase zou je het hele archief moeten meesturen, wat niet past en onbetaalbaar zou zijn.
Wat je moet weten voordat je er een kiest
- Je hoeft niet iets nieuws te installeren. PostgreSQL kan het met de uitbreiding pgvector, en die draait waarschijnlijk al ergens bij je.
- De kwaliteit zit in het opknippen. Hoe je documenten in stukken verdeelt bepaalt het resultaat meer dan welke database je kiest.
- Combineer met gewoon zoeken. Voor productcodes, namen en nummers werkt exact zoeken beter. De beste systemen doen beide en voegen de resultaten samen.