Wat is het?
Een vector database is een gespecialiseerde database die is ontworpen om embeddings, numerieke representaties van tekst, documenten of andere data, op te slaan en snel te doorzoeken op basis van gelijkenis. Waar een gewone database records ophaalt op basis van exacte overeenkomsten zoals een klantnummer of een factuurdatum, haalt een vector database de meest semantisch vergelijkbare items op: het document dat het meest lijkt op wat je zoekt, ook als de exacte woorden niet overeenkomen.
Vector databases zijn de technische ruggengraat van RAG-systemen en semantisch zoeken: ze bewaren de kennisbank waartegen AI-queries worden afgezet.
Waarom het ertoe doet voor het MKB
Voor het MKB is een vector database relevant zodra je AI wilt laten werken met je eigen documenten, contracten, klantdossiers of interne kennis in plaats van alleen met algemeen trainingsmateriaal.
- Documenten die niet in een strak gestructureerde database passen, zoals e-mails, rapporten, notities en gescande contracten, worden doorzoekbaar op inhoud en betekenis, niet alleen op bestandsnaam of datum.
- Een AI-agent die werkt op een vector database kan nauwkeurige antwoorden geven op basis van jouw specifieke bedrijfskennis, zonder dat die kennis opnieuw in een model hoeft te worden getraind.
- Hetzelfde systeem schaalbaar uitbreiden met nieuwe documenten is eenvoudig: je voegt de content toe, genereert embeddings en de database staat meteen klaar voor gebruik.
De vector database is wat RAG en semantisch zoeken in de praktijk mogelijk maakt: zonder een plek om de embeddings op te slaan en snel te doorzoeken, zijn de technieken theoretisch.
Hoe het werkt
Een vector database werkt in twee fasen: inladen en ophalen. In de inlaadfase worden documenten omgezet naar embeddings; in de ophaalfase wordt een zoekvraag op dezelfde manier omgezet en vergeleken met de opgeslagen vectors.
- Documenten worden opgesplitst in kleinere stukken (chunks) die elk een afgeronde eenheid tekst bevatten.
- Elk stuk wordt door een embedding-model omgezet naar een numerieke vector en opgeslagen in de database.
- Bij een zoekvraag wordt de vraag eveneens omgezet naar een vector via hetzelfde model.
- De database berekent welke opgeslagen vectors het dichtst bij de zoekvraag liggen via een gelijkenismaat.
- De meest relevante chunks worden teruggegeven aan het AI-systeem, dat er vervolgens een antwoord mee samenstelt.
Bekende vector databases zijn Pinecone, Weaviate, Qdrant en pgvector (als extensie op PostgreSQL). Voor kleinere toepassingen kan een eenvoudige in-memory implementatie voldoende zijn; voor grotere productiesystemen is een beheerde cloudservice gebruikelijker.
Voorbeeld uit de praktijk
Stel, een administratiekantoor wil dat medewerkers vragen kunnen stellen over klantcontracten zonder handmatig te zoeken. Het kantoor laadt alle lopende contracten in een vector database: elk contract wordt opgesplitst in stukken en omgezet naar embeddings. Als een medewerker vraagt "welke klanten hebben een jaarlijkse indexatieclausule?" zoekt het systeem de meest relevante contractpassages op uit de vector database en geeft die door aan een taalmodel, dat een helder overzicht samenstelt. De medewerker hoeft geen bestanden te openen; het antwoord is er in seconden.
Vergelijking en misvattingen
Een gewone relationele database zoals PostgreSQL of MySQL zoekt op exacte waarden: klantnummer, datum, bedrag. Een vector database zoekt op semantische gelijkenis: welk document lijkt het meest op deze vraag. De twee systemen vullen elkaar aan: gebruik een relationele database voor gestructureerde transactiedata en een vector database voor ongestructureerde documenten en kennisinhoud.

