Anthropic's modellen offline: wat betekent dit voor jouw SaaS?
Dit weekend dwong de Trump-administratie Anthropic om zijn nieuwste en krachtigste modellen, Fable en Mythos (intern bekend als Claude Mythos 5), abrupt offline te halen voor gebruikers buiten de VS. Reden: export-controlregels. Anthropic zei weinig keuze te hebben. The Verge legt de achtergrond goed uit.
Voor jou als maker is dit relevant omdat het laat zien dat zelfs de grootste AI-providers van de ene op de andere dag een model kunnen intrekken of afschermen. Als jouw SaaS hardcoded gebouwd is op één specifiek model-ID, heb je een risico.
Wat betekent dit voor jouw project?
Als jij Claude Code gebruikt om een app te bouwen die AI-calls doet naar de Anthropic API, dan bepaal je waarschijnlijk ergens in je code welk model je aanroept. Zit dat model-ID diep verborgen in je codebase, dan ben je kwetsbaar: bij een volgende verstoring (of gewoon een model-upgrade die je wil uitproberen) moet je op meerdere plekken tegelijk zoeken en aanpassen.
De oplossing is simpel: één centrale plek waar je het model instelt, en de rest van je app haalt het daar vandaan. Dat heet een "provider-abstractielaag" en je bouwt hem in 20 minuten met Claude Code.
Hoe pak je het aan met Claude Code?
Stap 1: Laat Claude Code je huidige model-verwijzingen opsporen
Open je project in Claude Code en geef deze prompt:
Doorzoek de hele codebase op alle plekken waar een Anthropic model-ID hardcoded staat, zoals "claude-opus-4", "claude-sonnet", of een andere string die begint met "claude-". Maak een lijst van alle bestanden en regelnummers waar dit voorkomt.
Claud Code scant je project en geeft je een overzicht. Vaak schrik je van hoeveel plekken het al staat.
Stap 2: Maak één centrale config-plek
Geef daarna deze prompt:
Maak een nieuw bestand
lib/ai-config.tsaan. Daarin wil ik:
- Een constante
DEFAULT_MODELdie de waarde haalt uit de environment variableANTHROPIC_MODEL, met als fallback"claude-opus-4-5"- Een constante
FAST_MODELvoor snelle taken, fallback"claude-haiku-3-5"- Een type
ModelConfigmet de veldenmodel,maxTokensentemperature- Een helperfunctie
getModelConfig(useCase: 'default' | 'fast' | 'summarize')die de juiste config teruggeeft Exporteer alles zodat andere bestanden het kunnen importeren.
Je krijgt dan iets als:
// lib/ai-config.ts
export type ModelConfig = {
model: string;
maxTokens: number;
temperature: number;
};
export const DEFAULT_MODEL =
process.env.ANTHROPIC_MODEL ?? "claude-opus-4-5";
export const FAST_MODEL =
process.env.ANTHROPIC_FAST_MODEL ?? "claude-haiku-3-5";
export function getModelConfig(useCase: "default" | "fast" | "summarize"): ModelConfig {
switch (useCase) {
case "fast":
return { model: FAST_MODEL, maxTokens: 1024, temperature: 0.3 };
case "summarize":
return { model: FAST_MODEL, maxTokens: 512, temperature: 0.1 };
default:
return { model: DEFAULT_MODEL, maxTokens: 4096, temperature: 0.7 };
}
}
Stap 3: Vervang alle hardcoded model-IDs
Vervang nu in alle bestanden die je eerder gevonden hebt de hardcoded model-strings door een import vanuit
lib/ai-config.ts. GebruikgetModelConfig('default')voor zware taken engetModelConfig('fast')voor korte responses. Pas ook de API-calls aan zodat ze hetmodel-veld uit de config gebruiken.
Claud Code doet dit bestand voor bestand. Check even of de import-paden kloppen na afloop.
Stap 4: Voeg de env-variabele toe aan je .env
Voeg de volgende regels toe aan
.env.localen.env.example. Gebruik als voorbeeldwaardeclaude-opus-4-5voorANTHROPIC_MODELenclaude-haiku-3-5voorANTHROPIC_FAST_MODEL. Voeg ook een comment toe die uitlegt dat je hier het model kunt wisselen zonder code aan te raken.
Je .env.local ziet er dan zo uit:
# Wissel hier van model zonder code aan te passen
# Zie https://docs.anthropic.com/en/docs/about-claude/models
ANTHROPIC_MODEL=claude-opus-4-5
ANTHROPIC_FAST_MODEL=claude-haiku-3-5
Nu kun je morgen bij een nieuwe verstoring gewoon de env-variabele updaten in je hostingplatform (Vercel, Railway, Render) en je app doet de rest. Geen commit, geen deploy met code-wijzigingen.
Stap 5 (optioneel): Voeg een fallback toe voor als een model niet beschikbaar is
Voeg in
lib/ai-config.tseen functiewithFallbacktoe die een Anthropic API-call probeert met het opgegeven model, en bij een 404- of 503-fout automatisch herprobeert metclaude-haiku-3-5als noodmodel. Log een waarschuwing in de console als de fallback wordt gebruikt.
Dit is handig als je wat robuuster wil zijn tegen exacte situaties zoals dit weekend.
Wat te checken na afloop
- Zoek nogmaals in je codebase op
claude-en controleer dat er geen hardcoded model-ID meer overblijft buitenlib/ai-config.ts. - Start je app lokaal op en kijk of AI-functionaliteit nog werkt.
- Pas tijdelijk
ANTHROPIC_MODELin.env.localaan naar een niet-bestaand model-ID en controleer of je een duidelijke foutmelding ziet (en dat de app niet crasht zonder uitleg). - Controleer of
.env.exampleup-to-date is, zodat een mede-bouwer of toekomstige jijzelf weet welke variabelen nodig zijn.
Bij Eighty leer ik je Claude Code in het Nederlands gebruiken, van installatie tot een werkend SaaS-product. Wekelijks een nieuwe module, persoonlijke begeleiding.
