AI open betekent in de praktijk: je integreert open of te gebruiken AI-modellen in je eigen systeem via API, met duidelijke grenzen, kostencontrole en security. Start zo: kies het juiste modeltype, gebruik de Responses API, parseer gestructureerde output, beperk input en context, en beveilig je API keys met server-side secrets, rotatie en minimaal benodigde scopes. Onderstaande stappen geven je een werkend pad van idee naar productie, inclusief concrete codefragmenten en checklists.
1) Wat je bedoelt met “AI open”, en wat je moet bouwen
In teams wordt “AI open” vaak op drie manieren gebruikt. Gebruik je eigen definitie, anders discussie je langs elkaar heen.
- Open integratie: je “staat” AI niet toe als losse chat, maar als component in je product (API calls, events, jobs).
- Open keuzes: je houdt de escape route open, je ontkoppelt je applicatie van één modelprovider via een adapter laag.
- Open security model: je maakt het threat model expliciet, je gebruikt least privilege, logging met beleid, en key rotatie.
Voor engineering wil je drie artefacten bouwen:
- Model Gateway: één interne service die alle AI requests afhandelt (auth, rate limiting, caching, schema validatie).
- Prompt Contract: een versiebaar contract voor inputs en outputs (JSON schema, velden, foutcodes).
- Security Envelope: secrets management, PII beleid, output filtering, audit logging.
Als je al weet wat je wil integreren, ga dan direct door naar de migratie naar de Responses API en de concrete security checklist.
2) Architectuur, dataflow, en de snelste weg naar een werkende flow
De snelste route naar iets dat in productie kan draaien:
- Definieer een minimale use case (een single turn taak, of een korte multi turn flow).
- Stuur alleen de relevante context naar je model (token budget).
- Forceer gestructureerde output (JSON) met een schema check in je code.
- Laat je gateway falen op duidelijke fouten (validation error, provider error, timeouts).
- Meet kosten en latency per endpoint, niet per developer.
Als je een “AI online” setup wil waarbij je direct modellen, API en security integreert, zie ook:
AI online: direct bouwen met modellen, API en security
2.1 Responses API in plaats van Chat Completions (praktisch)
OpenAI positioneert de Responses API als de richting voor nieuwe agent- en tooling flows. De migratiegids vergelijkt Messages van Chat Completions met Items en legt uit hoe je naar een response object migreert. (platform.openai.com)
Een minimalistische “server-side” flow ziet er conceptueel zo uit:
- Je gateway ontvangt een intern verzoek (bijv. “maak samenvatting”)
- Je zet het om naar een model input
- Je stuurt naar Responses (of de nieuwe aanbevolen variant)
- Je valideert het JSON schema
- Je retourneert alleen het deel dat je contract voorschrijft
Als je nog met Chat Completions werkt, start met migratie naar Responses, ook omdat parsing en stateful flows er simpeler uit kunnen zien. (platform.openai.com)
2.2 Voorbeeld: contract-first output (JSON)
Vermijd “free text” in productie. Je wil output die je code direct kan gebruiken. Dit is geen marketing, dit is minder incidenten.
Prompt contract (voorbeeld):
summary: stringkey_points: array van stringscitations: array van strings, leeg als je geen bronnen levert
In je gateway:
function validateSummaryContract(obj) {
if (!obj || typeof obj !== 'object') throw new Error('not an object');
if (typeof obj.summary !== 'string') throw new Error('summary must be string');
if (!Array.isArray(obj.key_points)) throw new Error('key_points must be array');
if (!Array.isArray(obj.citations)) throw new Error('citations must be array');
}
En je faalt hard als het contract niet klopt. Gebruik de provider output als input voor validatie, niet als waarheid.
3) Modellen, kostencontrole, en hoe je “open” niet duur maakt
“AI open” klinkt alsof je overal AI gebruikt. Kostencontrole is je rem.
3.1 Prijzen per 1M tokens en wijzigingen door de tijd
OpenAI publiceert de API-prijzen op de officiële pricingpagina. Daar staat ook expliciet dat er sinds 31 maart 2026 veranderingen zijn in bepaalde billing onderdelen, en dat API en ChatGPT abonnementen apart gefactureerd worden. (openai.com) (openai.com)
Wat jij in je systemen moet doen:
- Laat je gateway elk request voorzien van een model policy (welk model mag wanneer).
- Gebruik token budgets per use case (hard caps).
- Log input token usage en output token usage per endpoint.
Als je kostenexplosies ziet, is het meestal context bloat of onnodige multi-call cascades. “Open” maakt het risico groter, omdat iedereen toegang kan vragen. Daarom moet je policy centraal zijn.
3.2 Model selectie: niet alles hoeft “groot”
Praktisch selectiepatroon:
- Extractie, classificatie, simpele transformaties: kies een kleiner en goedkoper modeltype.
- Complex reasoning met lange context: kies een model dat je nodig hebt, maar beperk input en maak multi-step expliciet.
- Tools en agent loops: houd state klein, en evalueer output per stap met schema validatie.
Als je nog niet zeker bent welke API flow je nodig hebt, lees ook:
OpenAI Chat voor engineers: direct bouwen met API
4) Security: API keys, input data, output filtering (zonder aannames)
Security is het echte verschil tussen “werkt” en “kan in productie”.
4.1 Nooit API keys client-side blootstellen
OpenAI’s help center stelt expliciet dat het blootstellen van je API key in client-side omgevingen (zoals browsers of mobiele apps) gevaarlijk is, omdat kwaadwillenden die key kunnen misbruiken voor requests namens jou. (help.openai.com)
Server-side policy:
- Houd de key in een server secret store.
- Laat de frontend nooit rechtstreeks naar de AI provider bellen.
- Gebruik je gateway als enige egress voor AI requests.
4.2 Key rotatie als onderdeel van je runbook
Als je vermoedt dat een key is gelekt, adviseert OpenAI om de key onmiddellijk te roteren via de API Keys pagina. (help.openai.com)
Werk dit uit als onderdeel van je incident response:
- Detectie: alert op ongebruikelijke request rates of onverwachte geografische herkomst.
- Containment: disable of rate limit in je gateway.
- Rotatie: activeer nieuwe key, update secret store.
- Verificatie: check dashboards op daling in spend en errors.
- Postmortem: voeg detectieregels toe, en verbeter threat model.
4.3 Data handling: PII, secrets, en logging
Engineering regels die je vandaag al kunt toepassen:
- Redact secrets uit logs, inclusief request headers, auth tokens, en systeem prompts met credentials.
- PII minimization: verwerk wat je nodig hebt, niet wat gebruikers “per ongeluk” meesturen.
- Deterministische output waar mogelijk: JSON schema validatie verkleint datalekken via vrij tekstgedrag.
Als je het security denken wil structureren (threat model, data boundaries, controls), zie:
AI OpenAI: praktische gids voor API, models en security
4.4 Service contracten en falen met heldere foutcodes
“Open” systemen falen vaker, dus je foutmeldingen moeten bruikbaar zijn:
INPUT_VALIDATION_FAILED: schema input faaldeMODEL_POLICY_BLOCKED: request mocht niet op dit model padPROVIDER_TIMEOUT: upstream faalde, fallback mogelijkOUTPUT_SCHEMA_FAILED: model leverde output die niet parsebaar is
En in je gateway:
try {
const out = await callModel(...);
const obj = JSON.parse(out.text);
validateSummaryContract(obj);
return { ok: true, data: obj };
} catch (e) {
log.error({ code: mapError(e) });
return { ok: false, error: mapError(e) };
}
5) Implementatie: endpoints, gateway, rate limiting, en deploy checklist
Hier is een blueprint die je snel kunt omzetten naar code.
5.1 Gateway endpoints
Je gateway heeft minimaal:
POST /ai/summarize(voorbeeld)POST /ai/extractGET /ai/usage(interne metrics, geen klantdata)
Elke endpoint doet:
- AuthN/AuthZ (user of service token)
- Input validatie
- Rate limiting per klant of per job
- Model policy (welk model, welke caps)
- Provider call
- Output schema validatie
- Audit log (zonder PII)
5.2 Rate limiting en concurrency
Zonder limieten maakt “open” je een DDoS target, ook intern.
- Per tenant: requests per minuut cap
- Per endpoint: concurrency cap
- Per job: max retries (exponentieel, met jitter)
5.3 Timeout, retries, en idempotency
Typische regels:
- Timeout: stel een harde limiet in (bijv. 15 tot 60 seconden, afhankelijk van taak).
- Retries: alleen bij netwerkanomalieën of 5xx, niet bij validatie errors.
- Idempotency key: voorkom dubbele kosten bij client retry.
5.4 Observability
Minimale dashboards:
- Latency p50, p95, p99 per endpoint en per model
- Provider error rate per status categorie
- Output schema failure rate
- Tokens per request, gesplitst input en output
Als je wil leren hoe je AI in een end-to-end pipeline bouwt, deployt en beveiligt, zie:
AI in de praktijk: bouwen, deployen en beveiligen
5.5 Voorbeeld: model policy functie
const policies = {
summarize: { model: 'gpt-4o-mini', maxInputTokens: 6000, maxOutputTokens: 600 },
extract: { model: 'gpt-4o-mini', maxInputTokens: 3000, maxOutputTokens: 400 },
reason: { model: 'gpt-4o', maxInputTokens: 12000, maxOutputTokens: 1500 },
};
function choosePolicy(endpoint) {
const p = policies[endpoint];
if (!p) throw new Error('unknown endpoint');
return p;
}
Door dit centraal te zetten, maak je “AI open” beheersbaar.
6) Testen, evalueren, en migreren zonder downtime
Technisch testen van AI is geen optioneel bijwerk. Je wil regressies detecteren en je wil output fouten vroeg zien.
6.1 Testset ontwerp
Maak drie categorieën inputs:
- Gouden paden: verwachte output, basisniveau
- Edge cases: lange inputs, rare taal, ontbrekende velden
- Security cases: prompt injection pogingen, code fences, en data die je niet mag lekken
Voor schema outputs: test of de JSON valideert en of velden correct types hebben.
6.2 Canaries voor model updates
Als je een model vervangt, doe het via percentage rollout:
- 10 procent traffic naar nieuw model
- monitor schema failure rate en kosten per request
- pas bijsturen: model, prompt contract, of caps
- ga door naar 50 procent, dan 100 procent
6.3 Migratie naar Responses API zonder te breken
OpenAI beschrijft in de migratiegids verschillen tussen Chat Completions Messages en Responses Items, en noemt dat Chat Completions een pad is naar migratie. (platform.openai.com)
Praktische migratiestappen:
- Maak een adapter in je gateway: “provider client interface”.
- Implementeer Responses onder dezelfde interne contracten (input en output schema).
- Laat Chat Completions alleen nog werken voor legacy endpoints, en migreer endpoint voor endpoint.
- Gebruik canaries zoals hierboven.
7) Veelgemaakte fouten, directe fixes
- Fout: client-side provider calls met API key.
Fix: altijd via server gateway. (help.openai.com) - Fout: vrije tekst output in plaats van schema.
Fix: JSON contract + validatie + duidelijke foutcodes. - Fout: geen token caps.
Fix: maxInputTokens en maxOutputTokens per endpoint policy. - Fout: geen observability.
Fix: latency, error rate, schema failure rate, tokens per request. - Fout: geen runbook voor key leak.
Fix: rotatieproces, detectie alerts, containment via rate limit.
Extra context: leer en update je team
Als je intern training nodig hebt voor engineers, kun je ook kijken naar:
- AI cursus online: leer bouwen, deployen en beveiligen
- Cursus AI: leer AI bouwen, deployen en beveiligen
- AI cursus: leer AI bouwen, deployen en veilig maken
En als je wil bijhouden wat er recent verandert aan tooling of security fixes, zie:
AI nieuws van nu: releases, agenten en security fixes
Voor een bredere AI-engineering lens (aanpak en concepten) is dit ook relevant:
Artificial Intelligence uitgelegd voor engineers, met aanpak
Conclusie: “AI open” is een systeem, geen instelling
Als je “ai open” technisch wil uitvoeren: bouw een model gateway, definieer prompt contracten met schema validatie, maak model policy en token caps centraal, en beveilig je API keys met server-side secrets en rotatie. De kern is simpel: je accepteert de provider als component, maar jij bezit de grenzen en de fail modes.
Checklist voor de eerstvolgende sprint:
- Gateway met server-side API key, geen client exposure. (help.openai.com)
- Responses API integratie via adapter laag. (platform.openai.com)
- Token budgets en model policy per endpoint.
- JSON output contract + validator + foutcodes.
- Usage logging voor kosten en latency, plus schema failure rate.
- Key rotatie runbook en alerting.
Wil je opschalen naar een volledige AI stack met build, schaal en deploy? Dan past deze route ook:

Geef een reactie