10 juni 2026
Embeddings en vector databases: de kopie van je bedrijfskennis waar niemand het over heeft
Vraag een organisatie waar hun documenten staan en je krijgt een redelijk antwoord. SharePoint, een DMS, een netwerkschijf, een dossiersysteem. Vraag vervolgens waar hun embeddings staan en het wordt meestal stil. Terwijl die embeddings, zodra je een AI-assistent op je eigen kennis hebt aangesloten, een tweede kopie van diezelfde kennis zijn. In een ander formaat, op een andere plek, vaak buiten elk bestaand beheerproces.
Ik heb eerder uitgelegd hoe RAG werkt: documenten knippen, omzetten naar embeddings, opslaan in een vector database, en bij elke vraag de relevante stukken ophalen. Dat stuk sla ik hier dus over. Deze blog gaat over de twee onderdelen die in elke architectuurtekening als een onschuldig blokje staan getekend: de embedding en de vector database. Wat zijn ze technisch, hoe werkt dat zoeken eigenlijk, en welke vragen moet je stellen voordat je ze in productie zet.
Wat een embedding technisch is
Een embedding is een lange rij getallen. Niet een paar, maar honderden tot duizenden. Een veelgebruikt open-source model als all-MiniLM produceert 384 getallen per stuk tekst, andere modellen zitten op 768, 1024 of 1536, en de grootste varianten gaan richting de drieduizend. Elk van die getallen heet een dimensie.
Het belangrijkste misverstand wil ik meteen wegnemen: een embedding is geen samenvatting. Er staat geen verkorte versie van je tekst in. Het is een plek op een betekeniskaart. Het embedding-model heeft tijdens zijn training geleerd om teksten die over hetzelfde gaan dicht bij elkaar te plaatsen, en teksten die nergens op elkaar lijken ver uit elkaar. "De medewerker wil vrij nemen" en "verlofaanvraag indienen" delen bijna geen woorden, maar landen op die kaart vlak naast elkaar. Dat is precies waarom zoeken op betekenis werkt waar zoeken op trefwoorden faalt.
Wat betekenen die dimensies dan? Eerlijk antwoord: dat weet niemand precies. Het zijn geen nette eigenschappen als "gaat over geld" of "is juridisch". Het zijn richtingen in een wiskundige ruimte die het model zelf heeft gekozen tijdens de training. Je kunt een embedding dus niet lezen zoals je een samenvatting leest. Maar, en dit wordt later belangrijk, dat betekent niet dat er geen informatie in zit. Er zit juist heel veel informatie in. Alleen in een vorm die voor mensen onleesbaar is en voor software prima bruikbaar.
Nog twee technische eigenschappen die in de praktijk veel uitmaken.
Ten eerste: embeddings zijn modelgebonden. De getallen van model A betekenen niets in de kaart van model B. Je vraag en je documenten moeten dus altijd door hetzelfde model. En wil je ooit overstappen op een ander of nieuwer embedding-model, dan moet je al je documenten opnieuw door de molen halen. Bij tien documenten is dat niks. Bij twee miljoen chunks is dat een serieus project met serieuze rekenkosten. Dit is een vorm van lock-in waar bijna niemand vooraf over nadenkt.
Ten tweede: het embedding-model ziet je tekst in platte vorm. Gebruik je een embedding-API van een externe partij, dan stuur je dus elke chunk van elk document in leesbare tekst naar die partij. Niet één keer een testdocumentje, maar je hele kennisbank, chunk voor chunk. Voor publieke handleidingen maakt dat weinig uit. Voor dossiers, contracten en personeelsdocumenten is dat een dataflow die je bewust moet kiezen, niet per ongeluk.
Hoe similarity search werkt
Zoeken in embeddings is afstand meten. Je vraag wordt een punt op de kaart, en het systeem zoekt de documentchunks waarvan de punten het dichtst bij dat vraagpunt liggen. De meest gebruikte maat daarvoor is cosine similarity: die kijkt of twee vectoren dezelfde kant op wijzen. Wijzen ze bijna dezelfde richting uit, dan gaan de teksten over hetzelfde. Score dicht bij 1 is verwant, score richting 0 is ongerelateerd.
Met een paar duizend chunks kun je dat gewoon brute force doen: vergelijk de vraag met alles, sorteer, klaar. Dat is exact en snel genoeg. Het wordt pas interessant bij miljoenen vectoren. Dan is alles vergelijken te traag, en stappen systemen over op approximate nearest neighbor search, kortweg ANN. Een veelgebruikte techniek heet HNSW, een soort gelaagd netwerk van snelkoppelingen door de kaart heen, waarmee je in een fractie van de tijd bij de buurt van het antwoord komt.
Let op dat woord: approximate. Bij benadering. Zo'n index vindt meestal de juiste buren, maar niet gegarandeerd altijd. Je ruilt een beetje volledigheid in voor heel veel snelheid, en die verhouding is instelbaar. Voor een muziekaanbeveling boeit dat niemand. Voor een assistent die antwoorden geeft over medicatiebeleid of contractvoorwaarden wil je weten hoe die afweging staat afgesteld, en wil je meten hoe vaak het juiste fragment daadwerkelijk bovenkomt. Een systeem dat 95 procent van de tijd het juiste stuk vindt klinkt goed, totdat je beseft dat één op de twintig vragen op het verkeerde fundament wordt beantwoord.
Wat een vector database eigenlijk doet
Een vector database is op het eerste gezicht een opslagplek voor embeddings met een zoekfunctie erbij. Maar het echte werk zit in alles eromheen.
Hij bouwt en onderhoudt de ANN-index, zodat zoeken snel blijft terwijl er data bijkomt en afgaat. Hij bewaart naast elke vector ook de metadata: uit welk document komt deze chunk, welke versie, wanneer toegevoegd, wie mag het zien. Hij kan filteren tijdens het zoeken: geef me de dichtstbijzijnde chunks, maar alleen uit documenten van afdeling X. En de betere systemen combineren betekeniszoeken met klassiek trefwoordzoeken, omdat geen van beide alleen genoeg is.
Qua smaken heb je grofweg drie opties. Je kunt vectorzoeken toevoegen aan een database die je al hebt, bijvoorbeeld met pgvector in PostgreSQL. Je kunt een gespecialiseerde open-source vector database zelf draaien, zoals Qdrant, Weaviate of Milvus. Of je neemt een volledig beheerde clouddienst af. Die laatste optie is het snelst live, en het is ook de optie waarbij je afgeleide bedrijfskennis bij een externe partij neerzet, vaak buiten Europa, onder andermans voorwaarden. Geen van de drie is fout. Maar het is een datalocatiebeslissing, geen techniekkeuze, en zo moet hij ook genomen worden.
Een voorbeeld: het advocatenkantoor
Stel, een advocatenkantoor bouwt een interne assistent op de eigen jurisprudentiedatabase en dossiers. Het team kiest pragmatisch: een Amerikaanse embedding-API, een beheerde vector database in de cloud, demo binnen twee weken, partners enthousiast.
Tel nu even mee waar de dossierkennis staat. Eén: in het dossiersysteem, waar hij hoort, met rechten per zaak. Twee: in leesbare vorm langs de embedding-API gegaan, chunk voor chunk. Drie: als vectoren plus metadata in een beheerde database bij een derde partij. Vier: in de backups en snapshots van die database, want die maakt netjes backups. De rechtenstructuur per zaak uit het dossiersysteem? Die is onderweg verdwenen, want de vector database kent standaard maar één toegangsniveau: wie de API-sleutel heeft, kan alles doorzoeken.
Niemand heeft hier iets fout gedaan in de klassieke zin. Er is geen hack, geen lek, geen kwade wil. Er is alleen een kopie van de meest vertrouwelijke kennis van het kantoor ontstaan op plekken die in geen enkel beleidsdocument staan.
De vier productievragen
Dit brengt me bij de vier vragen die ik elke organisatie zou willen meegeven die embeddings in productie heeft of gaat krijgen.
Waar staan de embeddings, inclusief de route ernaartoe? Niet alleen de eindbestemming telt. De embedding-API ziet je tekst leesbaar voorbijkomen, de vector database slaat de vectoren met metadata op, en backups vermenigvuldigen dat geheel. Teken die hele route uit. Als ergens op die route een partij zit waar je je brondocumenten nooit zou neerzetten, heb je een gesprek te voeren.
Wie kan ze doorzoeken? Veel vector databases werken in de praktijk met één API-sleutel voor de hele collectie. De fijnmazige rechten uit je bronsystemen reizen niet automatisch mee. En er is iets extra wrangs aan de hand: semantisch zoeken maakt gevoelige informatie juist beter vindbaar. Wie vroeger het exacte bestandsnaampje moest kennen, hoeft nu alleen te vragen "wat speelt er rond de reorganisatie". Toegang per gebruiker afdwingen op chunk-niveau, bij elke zoekopdracht, is dus geen luxe maar de kern van het ontwerp.
Wat gebeurt er als het brondocument verdwijnt? Een document verwijderen uit het DMS verwijdert niets uit de vector database. Zonder actieve koppeling blijven de afgeleide chunks gewoon vindbaar en blijft de assistent er antwoorden op baseren. Dat is vervelend bij verouderd beleid, en serieuzer wanneer een document weg moet vanwege een bewaartermijn of een verwijderverzoek onder de AVG. Dit is geen juridisch advies, maar wel een technische realiteit: wie embeddings van persoonsgegevens bewaart, moet ze ook gericht kunnen terugvinden en wissen, en dat geldt ook voor de backups en snapshots eromheen. Bouw die koppeling tussen bron en vectoren vanaf dag één, niet als project achteraf.
Kunnen embeddings zelf gevoelige informatie lekken? Lange tijd was het comfortabele antwoord: nee joh, het zijn maar getallen. Dat antwoord is achterhaald. Onderzoekers van Cornell lieten in 2023 zien dat je uit tekst-embeddings de oorspronkelijke tekst grotendeels kunt reconstrueren: voor korte stukken tekst lukte dat in hun experimenten in de meeste gevallen vrijwel woordelijk, inclusief namen. De methode heet embedding inversion. Je hoeft de details niet te kennen om de conclusie te snappen: behandel een embedding qua vertrouwelijkheid alsof het de brontekst zelf is. Een gestolen vector database is dan geen bak abstracte getallen, maar gewoon een datalek van je documenten.
Het denkmodel
Als je één ding uit deze blog onthoudt, laat het dit zijn: embeddings zijn een kopie van je bedrijfskennis in een ander formaat. Geen metadata, geen bijproduct, geen technische ruis. Een kopie.
Alles wat je voor je brondocumenten geregeld hebt, moet je dus ook voor die kopie regelen:
- een bekende opslaglocatie, bewust gekozen, inclusief backups
- toegang per gebruiker, niet per API-sleutel
- een koppeling met de bron, zodat wijzigen en verwijderen doorwerkt
- een verwerkersafspraak met elke partij die de tekst of de vectoren ziet
- een plan voor het moment dat je van embedding-model wisselt
Niets hiervan is exotisch. Het is hetzelfde huiswerk dat organisaties voor elke database doen. Het wordt alleen vaak overgeslagen omdat de vector database als onderdeel van "de AI" wordt gezien in plaats van als wat hij is: een database met bedrijfsgegevens erin.
De demo is makkelijk. Productie is waar AI serieus wordt. En bij embeddings begint serieus met een simpele vraag aan je eigen team: waar staan ze, en wie kan erbij? Als daar geen vlot antwoord op komt, weet je waar je morgen begint.
↘︎ ALLE ARTIKELEN
- Waarom Europa eigen AI-modellen moet ontwikkelen
- De verborgen dataflow achter een simpele AI-vraag
- RAG begrijpelijk uitgelegd
- Het verschil tussen data residency en echte data-soevereiniteit
- Shadow AI: het datalek dat al gebeurd is
- Van AI-demo naar productie
- Embeddings en vector databases: de kopie van je bedrijfskennis waar niemand het over heeft
- AI-geletterdheid: waarom tooling zonder begrip een risico is
- Hoe je een open-source model host
- Agents, tool permissions en prompt injection: als AI niet alleen praat maar ook doet
- Waarom data in Europa houden belangrijk kan zijn
- Model gateways en LLM-routers, de verkeerstoren van je AI-landschap
- De AI Act is geen beleidsstuk, het is een technisch project
- Bedrijfskennis veilig aan AI koppelen: wie wat mag zien geldt ook voor de assistent
- GPU-infra zonder mist: VRAM, batching, latency en wat AI echt kost
- Observability, logs en audit trails voor AI, kun je terugzien wat er gebeurde?
- OpenAI-compatible APIs, de stekker die overal in past
- Self-hosting, Europese cloud en vendor lock-in, waar zit je nou echt vast?
- Use-case: host je eigen model in Europa
- One man company, hoe ik in mijn eentje bouw wat eerder een team vroeg
- Reverse engineering, bouw een compleet softwarepakket na in een dag
- Use-case: je complete boekhouding laten doen door een agent
- Een supervisor-agent voor al mijn projecten, een kopie van mezelf
- DeepGov, waarom honderden gemeenten niet elk hun eigen AI hoeven te bouwen
- The age of open source: de standaardkeuze voor AI kantelt
- Je moet het kunnen bedenken, AI werkt vooral als je het grotere plaatje ziet
- Gebruiken we over twee jaar nog wel een scherm?