EnableYourData.nl

Kennisbank · AI

RAG of text-to-SQL: welke AI past bij je bedrijfsdata?

RAG en text-to-SQL zijn twee manieren om AI te laten werken met je eigen data. RAG (retrieval-augmented generation) zoekt relevante tekstfragmenten in je documenten en laat het model daarmee een antwoord formuleren; text-to-SQL laat het model een query schrijven op een database, zodat de database het rekenwerk doet. Gebruik RAG voor vragen over documenten en kennis, en text-to-SQL voor vragen over cijfers.

Kernpunten

  • RAG is bedoeld voor ongestructureerde data, zoals documenten, handboeken en contracten.
  • Text-to-SQL is bedoeld voor gestructureerde data in een database, zoals omzet, voorraad en orders.
  • Bij RAG formuleert het model het antwoord; bij text-to-SQL rekent de database en schrijft het model alleen de query.
  • Je kunt beide combineren door elke vraag naar de juiste techniek te sturen.
  • ENABLE gebruikt alleen text-to-SQL; RAG op documenten zit niet in het platform.

Twee manieren om AI op eigen data te laten werken

Een taalmodel kent je organisatie niet. Het weet niet wat je omzet was, wat er in je inkoopvoorwaarden staat of welke klant achterloopt met betalen. Om AI bruikbaar te maken op eigen data, moet je het model op het moment van de vraag de juiste informatie geven.

Daarvoor zijn twee gangbare technieken. RAG (retrieval-augmented generation) haalt relevante stukken tekst op uit je documenten. Text-to-SQL laat het model een query schrijven op je database. Een derde route, een model bijtrainen op je eigen data (fine-tuning), is zelden de eerste keuze voor feitelijke vragen: een model onthoudt feiten niet betrouwbaar en moet bij elke wijziging opnieuw worden getraind.

Hoe RAG werkt

RAG is de gebruikelijke techniek achter een AI-kennisbank in een bedrijf: een assistent die vragen beantwoordt over het personeelshandboek, kwaliteitsprocedures, contracten of supportartikelen.

Bij enterprise RAG, RAG op de schaal van een organisatie, komen daar eisen bij. Rechten per document moeten in de zoekindex worden meegenomen, zodat niemand via de AI een document ziet waar hij geen toegang toe heeft. Verouderde versies moeten eruit, de bronvermelding moet kloppen en je moet regelmatig meten of de antwoorden juist zijn. Houd er ook rekening mee dat bij RAG tekstfragmenten uit je documenten naar het taalmodel gaan. In grote lijnen werkt RAG zo:

  1. Documenten worden opgeknipt in kleinere stukken tekst (chunks).
  2. Van elk stuk wordt een embedding gemaakt: een reeks getallen die de betekenis vastlegt. Die embeddings gaan in een vectordatabase of zoekindex.
  3. Bij een vraag zoekt het systeem de stukken die er het meest op lijken, vaak gecombineerd met gewoon zoeken op trefwoorden.
  4. De gevonden stukken gaan samen met de vraag naar het taalmodel.
  5. Het model formuleert een antwoord en verwijst naar de bronnen.

Hoe text-to-SQL werkt

Bij text-to-SQL krijgt het model de structuur van je database mee: tabellen, kolommen, relaties en beschrijvingen uit een datadictionary. Op basis daarvan schrijft het een SQL-query, die de database uitvoert. Het antwoord op "Wat was de marge per productgroep?" komt dus niet uit het taalmodel, maar uit je eigen database.

Daardoor is text-to-SQL sterk in precies het werk waar taalmodellen zwak in zijn: exact rekenen over duizenden of miljoenen regels. Het resultaat is controleerbaar, omdat je de query kunt lezen. De kwaliteit hangt vooral af van een helder datamodel en goede metadata.

RAG en text-to-SQL vergeleken

Beide technieken geven AI toegang tot eigen data, maar ze verschillen in bijna alles: het soort data, wat er naar het model gaat en hoe je een antwoord controleert.

RAGText-to-SQL
Soort dataOngestructureerd: documenten, e-mails, wiki'sGestructureerd: tabellen in een database of datawarehouse
Typische vraag"Wat is onze opzegtermijn voor leveranciers?""Wat was de marge per productgroep in het tweede kwartaal?"
Wat het model krijgtTekstfragmenten uit je documenten en de vraagMetadata (tabellen, kolommen) en de vraag
Wie levert het antwoordHet taalmodel, op basis van de fragmentenDe database; het model schrijft alleen de query
Controleerbaar viaBronvermelding naar het documentDe uitgevoerde query
Grootste risicoVerkeerde of verouderde fragmenten, toch een stellig antwoordEen query die technisch klopt maar een andere vraag beantwoordt
Rekenen over veel regelsZwakSterk
ToegangsrechtenPer document of map meenemen in de zoekindexVia databaserechten, views of filters
Belangrijkste voorbereidingDocumenten opschonen, actueel houden, rechten vastleggenDatamodel en datadictionary op orde brengen

Wanneer kies je RAG en wanneer text-to-SQL?

De vuistregel is eenvoudig: staat het antwoord in een tekst, kies dan RAG; moet het antwoord berekend worden uit tabellen, kies dan text-to-SQL.

Een veelgemaakte fout is RAG gebruiken op exports van tabellen, zoals een CSV met alle orders in een vectordatabase. Het systeem vindt dan een handvol regels die op de vraag lijken, en het model rekent daarmee. Een totaal over alle orders is op die manier niet betrouwbaar. Zo maak je de keuze:

  • Kies RAG voor vragen over beleid, procedures, contracten, productdocumentatie, offertes en notulen.
  • Kies text-to-SQL voor vragen over omzet, marges, voorraad, orders, uren, planning en andere KPI's.
  • Twijfel je, kijk dan naar het soort antwoord: een uitleg of citaat wijst op RAG, een getal of tabel op text-to-SQL.

RAG en text-to-SQL combineren

Veel vragen in een organisatie raken aan beide soorten data. "Waarom daalde de omzet in regio Noord?" vraagt om cijfers uit de database en om context uit verslagen of notities. Een gecombineerde oplossing stuurt elk deel van de vraag naar de juiste techniek: een routeringslaag bepaalt of er een query nodig is, een zoekactie in documenten, of allebei.

RAG kan text-to-SQL ook helpen. Bij grote databases met honderden tabellen kun je met RAG eerst de relevante tabelbeschrijvingen uit de datadictionary opzoeken, en pas daarna het model een query laten schrijven. Wel neemt de complexiteit toe: je hebt twee beveiligingsmodellen, twee bronnen van fouten en een lastigere evaluatie. Begin daarom met de techniek die bij je belangrijkste vragen past.

Wat ENABLE doet en niet doet

ENABLE gebruikt text-to-SQL. In de SQL Explorer stel je een vraag in gewone taal; de AI schrijft SQL op het PostgreSQL-datawarehouse van je organisatie en ENABLE voert die alleen-lezend uit. De AI ontvangt alleen metadata en de vraag, nooit rijen data.

ENABLE doet geen RAG: het platform doorzoekt geen documenten, SharePoint-sites of kennisbanken. Wil je ook vragen over documenten beantwoorden, dan heb je daarvoor een aparte RAG-oplossing nodig. Opgeslagen queries kun je wel via de Data-API als REST-endpoint beschikbaar maken, zodat andere systemen dezelfde gecontroleerde cijfers kunnen ophalen.

FAQ

Veelgestelde vragen

Wat is RAG?

RAG (retrieval-augmented generation) is een techniek waarbij een AI-systeem eerst relevante tekstfragmenten opzoekt in je eigen documenten en die samen met de vraag aan een taalmodel geeft. Het model baseert zijn antwoord op die fragmenten en kan naar de bron verwijzen. RAG wordt veel gebruikt voor AI-kennisbanken en assistenten op documenten.

Wat is het verschil tussen RAG en text-to-SQL?

RAG zoekt tekstfragmenten in documenten en laat het taalmodel daarmee een antwoord formuleren. Text-to-SQL laat het model een query schrijven op een database, waarna de database het rekenwerk doet. RAG past bij vragen over documenten, text-to-SQL bij vragen over cijfers.

Kan ik RAG gebruiken voor vragen over omzet of voorraad?

Dat is af te raden. RAG vindt een beperkt aantal tekstfragmenten en laat het model daarmee rekenen, waardoor totalen over veel regels onbetrouwbaar zijn. Voor cijfers uit tabellen is text-to-SQL geschikter, omdat de database het rekenwerk doet.

Wat is enterprise RAG?

Enterprise RAG is RAG op de schaal en met de eisen van een organisatie. Denk aan toegangsrechten per document in de zoekindex, alleen actuele versies, betrouwbare bronvermelding, logging en het regelmatig meten van de kwaliteit van de antwoorden.

Hoe bouw je een AI-kennisbank voor je bedrijf?

Een AI-kennisbank bouw je meestal met RAG. Je verzamelt en schoont de documenten op, legt vast wie wat mag zien, zet ze in een zoekindex en koppelt die aan een taalmodel dat antwoorden geeft met bronvermelding. Begin met een afgebakende set documenten en test de antwoorden met de mensen die de inhoud kennen.

Ondersteunt ENABLE RAG?

Nee. ENABLE gebruikt text-to-SQL op gestructureerde data in je datawarehouse en doorzoekt geen documenten. Voor vragen over documenten heb je een aparte RAG-oplossing nodig.

Veilig delen, snel live, zonder hoofdpijn

In een online demo laten we het portaal zien: dashboards per rol, row-level security, vragen in gewone taal en hoe wij het voor je inrichten en beheren.