Vercel AI Gateway statt Provider-SDKs

Im Sommer 2025 hatten wir in einem einzigen Repo drei AI-SDKs parallel laufen: @ai-sdk/openai, @ai-sdk/anthropic und einen selbstgebauten Wrapper für ein lokales Modell. Heute steht da nur noch eine Zeile: import {'{'} gateway {'}'} from "@ai-sdk/gateway". Hier ist warum.

Was das Problem war

Drei Provider-SDKs in einem Codebase ist nicht „nur drei Dependencies". Es ist:

Drei Auth-Mechanismen — drei Env-Vars, drei verschiedene Rate-Limit-Header, drei verschiedene Fehler-Schemata.

Drei Token-Counter — OpenAI, Anthropic und das lokale Modell zählen unterschiedlich. Pricing-Vergleich „pro 1k Token" ist deshalb meistens eine Lüge.

Drei Streaming-APIs — der eine liefert SSE, der andere chunked-JSON, der dritte einen WebSocket. Wir hatten drei verschiedene Streaming-Adapter im Frontend, jeder mit eigenen Bugs.

Drei Vendor-Lock-In-Punkte — Provider-Wechsel war kein „API-Key tauschen", sondern „eine Woche Refactor".

Das fühlte sich Monate lang nach „so ist das halt in AI-Land" an. War es nicht.

Wie der Gateway das löst

Vercel AI Gateway (GA seit August 2025) ist ein einziger Endpoint, hinter dem alle bekannten Provider hängen. Du sagst "openai/gpt-5" oder "anthropic/claude-4-7-sonnet" als String, der Gateway weiß was zu tun ist. Provider-Wechsel ist eine String-Änderung.

Konkret im Code:

// vorher
import OpenAI from "openai";
const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });
const resp = await openai.responses.create({ model: "gpt-5", input: prompt });

// nachher
import {'{'} streamText {'}'} from "ai";
import {'{'} gateway {'}'} from "@ai-sdk/gateway";
const resp = await streamText({'{'} model: gateway("openai/gpt-5"), messages: [...] {'}'});

Provider wechseln? gateway("anthropic/claude-4-7-sonnet"). Fertig. Kein Auth, kein neuer SDK, kein Streaming-Adapter.

Die fünf Sachen, die uns überrascht haben

1. Ein API-Key für alle Provider

Statt OPENAI_API_KEY, ANTHROPIC_API_KEY, GROQ_API_KEY etc. nur AI_GATEWAY_API_KEY (oder auf Vercel: gar nichts — OIDC-Token-basiert). Bei drei Projekten mit drei Kund:innen heißt das: keine vier-fach gerollte Key-Rotation mehr.

2. Zero Data Retention überall, ein Vertrag

ZDR vertraglich mit dem Gateway statt mit jedem einzelnen Provider zu verhandeln. Für DACH-Mittelstand ein riesiger Unterschied — der Datenschutz-Beauftragte einer Praxis will nicht drei AVVs lesen, sondern einen.

3. Model-Fallback ist eingebaut

Wenn OpenAI grad rate-limited oder kurz down ist, kann der Gateway auf Anthropic ausweichen — pro Request, ohne dass wir was im Code ändern müssen. Wir haben das via maxSteps und einer kleinen onError-Handler-Config aufgesetzt. Seit Q1 2026 hatten wir keinen einzigen User-sichtbaren AI-Outage mehr.

4. Observability gratis

Vercel-Dashboard zeigt pro Model: Token-Verbrauch, Latency-P50/P95, Fehler-Rate, Kosten. Vorher hatten wir das in einem selbst gebauten LangSmith-Setup, was eine Woche Arbeit war. Mit dem Gateway ist es Default — nichts zu konfigurieren.

5. Plain-String-Models sind die richtige Default-Abstraktion

Wenn der Gateway sich entscheidet, dass "openai/gpt-5" jetzt intern auf "openai/gpt-5.1" routet (z.B. neueres Modell, gleicher Preis), läuft unser Code weiter — wir bemerken's nicht mal. Wenn wir explizit pinnen wollen, schreiben wir "openai/gpt-5-2026-01-15". Beides ist Code-Konfiguration, kein Library-Refactor.

Was wir trotzdem im Auge behalten

Provider-spezifische Features (z.B. Anthropic Tool-Use vs. OpenAI Function-Calling) sind via Gateway auf das gemeinsame Subset reduziert. Wenn du absichtlich einen Provider-only Feature einsetzen willst (z.B. OpenAI Realtime API), brauchst du immer noch das Provider-SDK direkt.

Latency-Overhead ist minimal aber existiert — bei extrem latency-sensitiven Edge-Cases (Live-Voice-Calls) prüfen.

Pricing-Aufschlag beim Gateway selbst ist in den meisten Plans bereits inkludiert, aber check deinen Plan.

Was du daraus mitnimmst

Wenn du in deinem Projekt mehr als ein AI-Provider-SDK installiert hast, frag dich, warum. In 90% der Fälle hast du keinen guten Grund — du hast nur historische Pfadabhängigkeit. Vercel AI Gateway (oder das equivalente Konzept anderer Plattformen) reduziert deine Code-Komplexität, Vertrags-Komplexität und Vendor-Lock-In gleichzeitig.

Wenn dein AI-Code mehr Provider-SDK-Imports hat als deine Auth-Datei: Gateway. Sofort.