CBS StatLine
SBI RAG Index
AI Chat
Research Tools

Wat betekent dit voor u?

Wij combineren officiële bedrijfsgegevens, branche-informatie en slimme analyse. Zo krijgt u in begrijpelijke stappen inzicht in uw bedrijf en kansen.

  • Bedrijfsanalyse — Sterke en zwakke punten, kansen en risico’s voor uw bedrijf, afgestemd op uw branche.
  • Content & website — Een duidelijke structuur en teksten die bij uw doelgroep passen.
  • Zichtbaarheid — Advies om beter gevonden te worden (zoekmachines en lokaal).
  • Marktbeeld — Hoe u zich verhoudt tot de markt en wat er speelt in uw regio.
  • Plan van aanpak — Een concreet stappenplan om de verbeterpunten aan te pakken.

U hoeft niets technisch te doen: u levert het bedrijf (bijv. KvK-nummer of naam) aan, wij leveren de analyses en adviezen. Vragen? Neem gerust contact met ons op.

CBS StatLine Mechanisme
SBI RAG Pipeline
AI Chat Engine
Research Tools
Volledige Architectuur
CBS StatLine
Officiele Nederlandse statistieken via OData API — gekoppeld aan SBI-codes
Wat is CBS StatLine? Het CBS (Centraal Bureau voor de Statistiek) biedt alle officiele Nederlandse statistieken gratis via een OData REST API. Per SBI-code kun je branchestatistieken, omzetdata, personeelscijfers, marktgroottes en regionale data ophalen. Dit maakt per-bedrijf benchmarking mogelijk zonder betaalde databronnen.
CBS OData API — Onderzoeksmechanisme
opendata.cbs.nl/ODataApi/odata/[dataset]/[filter]
✓ GRATIS OData v4
Stap 1 · SBI → Dataset mapping
Input: SBI code 4100
// Zoek relevante CBS datasets:
GET /ODataCatalog/Tables
?$filter=contains(ShortDescription,
'bouw')

Relevante datasets:
83931NED (Omzet bouw)
81573NED (Werknemers bouw)
84583NED (Marktprijzen)
37308 (Regionale stats)
Stap 2 · Data ophalen per SBI
// Omzetdata bouwnijverheid:
GET /odata/83931NED/UntypedDataSet
?$filter=BedrijfstakkenBranchesSBI
eq 'A1010004' (= SBI 41)
&$select=Perioden,Omzet,Bedrijven

Output:
Gemiddelde omzet per bedrijf
Groeipercentage YoY
Aantal actieve bedrijven NL
Stap 3 · Regionale benchmark
// Rijswijk = gemeente Rijswijk
// CBS regiocodes:
GET /odata/37308/Observations
?$filter=RegioS eq 'GM0603'
and Perioden eq '2024JJ00'

Output:
Lokale marktgrootte
Bouw-activiteit regio
Vergelijking landelijk gem.
Stap 4 · AI Synthesis
// CBS data → Claude prompt:

"Analyseer dit bedrijf op basis
van CBS branchedata SBI 4100:
{cbs_data_json}

Vergelijk met bedrijf:
{kvk_data}

Genereer: marktpositie,
groeipotentieel, risico-score."
// === VOLLEDIGE CBS STATLINE INTEGRATIE === // // 1. Dataset ontdekking voor SBI 4100 const discoverCBSDatasets = async (sbiCode) => { const res = await fetch( `https://opendata.cbs.nl/ODataCatalog/Tables?$filter= contains(ShortDescription,'${sbiToKeyword(sbiCode)}')` ); return res.json(); // → array van relevante datasets }; // 2. Branche-omzetdata ophalen const getCBSBrancheData = async (datasetId, sbiFilter) => { const url = `https://opendata.cbs.nl/ODataApi/odata/ ${datasetId}/UntypedDataSet ?$filter=${sbiFilter} &$select=Perioden,Omzet,AantalBedrijven`; const data = await fetch(url).then(r => r.json()); return data.value; // → [{Perioden, Omzet, AantalBedrijven}] }; // 3. Regionale data (gemeente Rijswijk = GM0603) const getCBSRegioData = async (gemeenteCode) => { return fetch( `https://opendata.cbs.nl/ODataApi/odata/37308/Observations ?$filter=RegioS eq '${gemeenteCode}' &$orderby=Perioden desc&$top=5` ).then(r => r.json()); }; // 4. Benchmark berekening const benchmarkBedrijf = (bedrijf, cbsData) => ({ omzetPositie: bedrijf.omzet / cbsData.gemOmzet, groeiverschil: bedrijf.groei - cbsData.brancheGroei, marktaandeel: bedrijf.omzet / cbsData.totaleMarkt * 100, regioScore: cbsData.regioActiviteit / cbsData.nationaalGem });
CBS DatasetIDMethodeGebruikUpdateKosten
Bouwnijverheid omzet83931NEDGETBranche benchmarkKwartaalGratis
Werkzame personen SBI81573NEDGETWerkgelegenheidJaarGratis
Regionale kerncijfers70072NEDGETGemeente benchmarkJaarGratis
Bedrijfsdemografie81589NEDGETMarktgroeiJaarGratis
Conjunctuurmeter bouw83625NEDGETMarktsentimentMaandGratis
Prijsindex nieuwbouw83662NEDGETPrijsbenchmarkKwartaalGratis
SBI RAG Index
Retrieval-Augmented Generation op de volledige SBI-classificatietabel (1.847 codes)
Waarom RAG voor SBI? De SBI-tabel (Standaard Bedrijfsindeling) bevat 1.847 codes met beschrijvingen, maar AI-modellen kennen deze niet altijd precies. Door alle SBI-codes + beschrijvingen + branche-kenmerken te vectoriseren in een lokale database (Chroma/Qdrant), kan het systeem razendsnel de meest relevante SBI context ophalen voor elke bedrijfsanalyse — zonder de AI te "hallucineren" over branchedetails.
RAG Pipeline — SBI Kennisbank
Embed → Index → Query → Augment → Generate
Vector DB Embeddings
1
Document Ingestie — SBI brondata
Bronnen: CBS SBI-2008 PDF + website · KvK SBI lookup tabel · RVO branchebeschrijvingen
Per SBI code: code · omschrijving · voorbeeldbedrijven · typische diensten · doelgroepen · risicofactoren
Chunking strategie: 1 document per SBI code (~300-500 tokens) + metadata: sector, divisie, groep, klasse
2
Vectorisatie — text-embedding-3-large
Model: OpenAI text-embedding-3-large (3072 dimensies) of lokaal: all-MiniLM-L6-v2 (384d, gratis)
1.847 SBI codes × embedding → opslaan in Chroma (lokaal) of Qdrant (cloud)
Eenmalige kosten: ~$0.04 voor volledige SBI tabel · Daarna: gratis queries
3
Query Processing — Semantisch zoeken
Input: "onderhoudsbedrijf gevelbekleding utiliteitsbouw Rijswijk"
→ embed query → cosine similarity search in vectorstore → top-5 SBI matches terugkrijgen
Hybrid search: BM25 (keyword) + vector similarity gecombineerd voor beste recall
4
Context Augmentation — Prompt samenstelling
Ophalen top-5 chunks → injecteren in Claude prompt als context
Prompt structuur: [system: jij bent expert SBI-analyst] + [context: {sbi_chunks}] + [vraag: {user_query}]
Result: Claude antwoordt met precieze SBI-kennis, geen hallucinaties over branchedetails
5
Output + Citaties — Traceerbaar antwoord
Elke claim wordt teruggeleid naar bronchunk + SBI-code
Output: {antwoord, bronnen: [{sbi, score, snippet}], confidence_score}
Re-ranking: Cohere Rerank API (optioneel) voor betere precisie bij complexe queries
// === SBI RAG SYSTEEM IMPLEMENTATIE === // // STAP 1: SBI data inladen en chunken async function ingestSBIData() { const sbiTable = await fetchSBIClassification(); const chunks = sbiTable.map(entry => ({ id: entry.code, text: `SBI ${entry.code}: ${entry.omschrijving} Sector: ${entry.sector} Typische bedrijven: ${entry.voorbeelden} Diensten: ${entry.diensten} Doelgroepen: ${entry.doelgroepen} Naastgelegen SBI's: ${entry.verwant}`, metadata: { code: entry.code, sector: entry.sector, niveau: entry.niveau } })); await chromaCollection.add({ ids: chunks.map(c => c.id), documents: chunks.map(c => c.text), metadatas: chunks.map(c => c.metadata), embeddings: await embedBatch(chunks.map(c => c.text)) }); } // STAP 2: RAG query voor een bedrijf async function querySBIContext(bedrijfsOmschrijving, topK = 5) { const queryEmbedding = await embed(bedrijfsOmschrijving); const results = await chromaCollection.query({ queryEmbeddings: [queryEmbedding], nResults: topK, where: { niveau: { "$in": ["klasse", "groep"] } } }); return results.documents[0].map((doc, i) => ({ sbi: results.metadatas[0][i].code, tekst: doc, score: results.distances[0][i], sector: results.metadatas[0][i].sector })); } // STAP 3: Augmented generation via Claude async function analyseMetRAG(bedrijf, vraag) { const sbiContext = await querySBIContext( `${bedrijf.naam} ${bedrijf.activiteiten} ${bedrijf.locatie}` ); const prompt = `Je bent een expert in de Nederlandse bedrijfsclassificatie. BRANCHE CONTEXT (uit SBI kennisbank): ${sbiContext.map(s => `[SBI ${s.sbi} - score ${s.score.toFixed(2)}]: ${s.tekst}`).join('\n\n')} BEDRIJF: ${JSON.stringify(bedrijf)} VRAAG: ${vraag} Baseer je antwoord ALLEEN op de bovenstaande SBI context. Citeer welke SBI-codes je gebruikt (formaat: [SBI XXXX]).`; return claudeComplete(prompt); }
AI Chat Engine
Hoe werkt de chat — welke bronnen worden gecombineerd, hoe worden tools aangeroepen
Orchestratie model: De AI chat gebruikt tool-use / function calling. Claude beslist zelf welke tools te gebruiken op basis van de vraag. Per vraag worden automatisch 1-6 databronnen bevraagd, gecombineerd en gesynthetiseerd in een antwoord met bronvermelding.
Chat Mechanisme — Tool Orchestratie
Vraag → Tool selectie → Parallel execution → Synthesis → Antwoord
Tool 1 · KvK Lookup
// Trigger: bedrijfsnaam/kvk-nr
function kvkLookup(query) {
GET KvK API
naam, adres, SBI
nevenactiviteiten
bestuurders
}
Kosten: gratis (1 call)
Tool 2 · CBS StatLine
// Trigger: branche/markt vragen
function cbsQuery(sbi, regio) {
Dataset discovery
Omzet + groei data
Regionale benchmark
Conjunctuurdata
}
Kosten: gratis
Tool 3 · SBI RAG
// Trigger: altijd (achtergrond)
function sbiRAGQuery(tekst) {
Embed query
Vector similarity
Top-5 SBI chunks
Branche context
}
Kosten: ~$0.0001
Tool 4 · Google Places
// Trigger: locatie/GMB vragen
function placesSearch(naam, loc) {
Nearby competitors
GMB rating + reviews
Openingstijden
Foto's, website
}
Kosten: ~€0.03/call
AI Research Chat
claude-sonnet · tools: kvk, cbs, sbi-rag, places, rvo
🤖
Hallo! Ik ben de AI Research Engine. Stel een vraag over een bedrijf, branche of regio en ik combineer automatisch CBS, KvK, SBI en meer.
System · 5 tools beschikbaar
Bronnen: KvK API CBS StatLine SBI RAG Google Places RVO Subsidies
Research Tools
Beschikbare tools die de AI automatisch kan inzetten
📊
CBS Branche Benchmark
STATISTIEK
Vergelijk een bedrijf met CBS branchegemiddelden: omzet, groei, personeel, regionale positie.
CBS OData SBI RAG GRATIS
🔍
KvK Bedrijfsanalyse
BEDRIJFSDATA
Zoek op KvK-nummer of naam. Krijg SBI-codes, vestigingen, bestuurders en activiteiten.
KvK API SBI RAG GRATIS
🌱
RVO Subsidie Finder
SUBSIDIES
Vind relevante subsidies op basis van SBI-code, locatie en bedrijfstype via RVO open data.
RVO Data SBI RAG AI Match GRATIS
🌎
Concurrentie Radar
MARKTANALYSE
Vind concurrenten in dezelfde regio + SBI-code via Google Places, KvK en CBS data.
KvK Places API CBS
📈
Markt Trend Analyse
TRENDS
Analyseer markttrends per branche: groei, conjunctuur, seizoenspatronen uit CBS tijdreeksen.
CBS TimeSeries AI Analyse GRATIS
🗺
Geo Markt Explorer
GEOGRAFIE
Combineer PDOK geodata + CBS regionale cijfers voor geografische marktanalyse per gemeente.
PDOK CBS Regio GRATIS
Volledige Architectuur
Hoe alle componenten samenwerken in het AI Research platform
System Architecture — Data Flow
Gebruiker
AI Chat Engine
Tool Router
KvK API
+
CBS OData
+
SBI RAG
+
Places API
AI Synthesis
Antwoord + Bronnen
Gratis databronnen
CBS StatLine (OData v4)
KvK Open Data API
RVO Subsidie Database
PDOK Geodata (Kadaster)
OpenStreetMap Nominatim
Wikidata SPARQL
SBI RAG Index (lokaal)
Betaalde services
Claude API (analyse, synthesis)
OpenAI Embeddings (vectorisatie)
Google Places API (locatie)
Cohere Rerank (optioneel)

Geschatte kosten per analyse:
~€0.02-0.05 per bedrijfsanalyse