Un client m'a appelé à 8 h du matin un jeudi. Son résumeur de documents basé sur l'IA renvoyait des 503 depuis minuit parce qu'OpenAI subissait une panne partielle sur l'endpoint gpt-4o. Ils avaient un contrat SaaS de 40 k £ par mois et leur client enterprise criait au scandale. Je n'avais qu'une seule question en tête : pourquoi personne n'avait intégré un basculement vers Anthropic dans cette chose ?
C'était il y a huit mois. Vercel AI Gateway est la solution la plus proche d'une réponse clé en main à ce problème exact. Mais « la plus proche » fait beaucoup de travail dans cette phrase. Laissez-moi vous dire ce qu'il fait réellement, à quoi ressemblent les chiffres et où vous devriez rester méfiant.
---
Ce que Vercel AI Gateway est réellement
La plupart des gens voient le nom et supposent que c'est un proxy avec un joli logging. C'est un peu plus que ça, mais pas aussi plus que le texte marketing l'implique.
À la base, Vercel AI Gateway s'intercale entre votre code applicatif et plusieurs fournisseurs de LLM : OpenAI, Anthropic, Mistral, Google Gemini et d'autres. Vous envoyez une seule requête à l'endpoint de la gateway. La gateway décide quel modèle/fournisseur appeler, gère les tentatives, met en cache les réponses sémantiques et retourne le résultat. Vous obtenez une seule ligne de facture au lieu de quatre tableaux de bord API.
L'intégration du SDK est véritablement soignée. Si vous utilisez déjà le Vercel AI SDK, vous remplacez votre import de fournisseur par le client de la gateway et passez une config providers. Peut-être quinze minutes de travail sur un projet existant.
Ce que ce n'est pas, c'est un réducteur de coût magique en soi. Les économies proviennent de trois comportements spécifiques : le routage par coût, la mise en cache des prompts répétés et l'évitement des redémarrages à froid après les défaillances des fournisseurs. Si vous ne tirez pas de valeur d'au moins l'un de ces trois, la gateway ajoute de la surcharge sans bénéfice.
---
Comment fonctionne la logique de routage
Priorité du fournisseur et routage pondéré
Vous configurez une liste de fournisseurs avec un ordre de priorité ou une distribution pondérée. Le routage par priorité est simple : essayez le fournisseur A, et s'il retourne un 429 ou un 5xx, passez au fournisseur B. Le routage pondéré divise le trafic par pourcentage, ce qui vous permet de dire « 70 % OpenAI, 30 % Mistral » et de tester les différences de coût sur le trafic réel sans migration complète.
J'ai utilisé le routage pondéré sur un outil de génération de contenu que Seahawk a construit pour une entreprise de médias au dernier trimestre. Nous avons exécuté gpt-4o-mini à 60 % contre mistral-medium à 40 % pendant un mois. Mistral était environ 34 % moins cher par million de tokens à l'époque, mais la qualité de sortie pour l'extraction JSON structurée était nettement plus faible. Nous avons terminé à 80/20 en faveur d'OpenAI. L'idée, c'est que la gateway a rendu ce test A/B sans effort. Sans elle, nous aurions dû câbler deux clients SDK distincts et gérer la répartition dans la logique applicative.
Comportement de basculement
Le basculement est la fonctionnalité vedette et il fonctionne comme annoncé, dans l'ensemble. Quand OpenAI retourne un 5xx, la gateway réessaie sur le fournisseur suivant configuré en environ 800 ms selon mes tests. Pour les réponses en streaming, c'est un peu plus compliqué : le stream peut redémarrer silencieusement depuis le fournisseur de secours, et si vous ne traitez pas correctement le stream côté client, vous pouvez obtenir un chunk d'ouverture dupliqué. Ça nous a piégés une fois.
Une chose à savoir : la gateway ne fait pas de basculement sémantique. Elle ne sait pas que votre réponse Anthropic claude-3-5-sonnet pourrait formuler les choses différemment que l'équivalent OpenAI. Vous êtes responsable de la compatibilité des prompts entre les fournisseurs. Pour la plupart des interfaces de style chat, c'est correct. Pour les sorties structurées avec des schémas stricts, testez indépendamment chaque fournisseur de votre chaîne de basculement avant de passer en production.
---
La couche de mise en cache : où vit l'argent réel
C'est la partie que la plupart des gens sous-estiment. Vercel AI Gateway inclut la mise en cache sémantique, pas seulement la mise en cache exacte.
Le cache de correspondance exacte est indispensable : si la même chaîne de prompt passe par la passerelle deux fois, retournez la réponse en cache. Le cache sémantique va plus loin. En utilisant la similarité par embedding, il reconnaît que « résumez ce paragraphe en trois phrases » et « donnez-moi un résumé de trois phrases de ce paragraphe » sont la même demande et sert le résultat en cache.
Pour le projet de résumeur de documents (celui qui a failli donner une crise cardiaque à mon client), nous avons instrumenté le taux de hit du cache après l'activation du cache sémantique avec un seuil de similarité cosinus de 0,92. Sur deux semaines de trafic en production : 41 % de taux de hit du cache. À 0,015 £ pour 1 000 tokens de sortie sur GPT-4o, ce n'est pas négligeable sur 2 millions de tokens de sortie quotidiens.
Faites les calculs de coin de table vous-même :
- 2 000 000 tokens de sortie/jour
- 41 % servis depuis le cache = 820 000 tokens non facturés
- À 0,015 £/1 000, cela fait 12,30 £ économisés par jour
- Sur un mois : environ 370 £
Pas révolutionnaire pour une grande entreprise. Significatif pour un opérateur SaaS indépendant qui surveille sa marge. Et c'est un seul projet, un mois.
La fonctionnalité de cache de prompt OpenAI gère maintenant nativement le cache de préfixe, donc pour les longs prompts système vous en obtenez déjà une partie gratuitement. Le cache sémantique de Vercel s'ajoute à cela, gérant la variation du contenu du tour utilisateur.
---
Observability: Better Than Nothing, Not Good Enough Alone
Chaque requête via la passerelle est enregistrée : latence, comptages de tokens, fournisseur utilisé, hit/miss du cache, estimation de coût. Vous voyez cela dans le tableau de bord Vercel. C'est propre et lisible.
Mais voilà. Si vous gérez un système en production sérieux, vous avez déjà quelque chose comme Datadog, Grafana, ou au minimum LangSmith dans votre pipeline de traces. Le tableau de bord Vercel vous donne une visibilité au niveau de la passerelle. Il ne vous donne pas les traces au niveau du span sur l'ensemble de votre application. Vous ne pouvez pas voir que la demande d'un utilisateur particulier a pris 4,2 secondes parce que 3,1 de ces secondes ont été passées dans votre étape de récupération avant même que le LLM ne soit appelé.
Je traite donc l'observabilité intégrée de la passerelle comme un premier filtre : le problème est-il au niveau de l'appel LLM ou ailleurs ? Pour aller plus loin, j'exporte toujours vers un outil de traçage approprié.
Un nombre spécifique à connaître : la passerelle ajoute environ 15-30 ms de latence par demande en moyenne selon ce que j'ai mesuré sur les déploiements en région EU. Pour la voix en temps réel ou les exigences UX sous 100 ms, c'est important. Pour le traitement de documents asynchrone, ce ne l'est pas.
---
Ce que cela coûte vraiment de fonctionner
Vercel AI Gateway est inclus dans le plan Pro (17 £/mois au moment de la rédaction) et supérieur. Il n'y a pas de surcharge par requête de Vercel. Vous payez toujours directement les coûts en tokens du fournisseur sous-jacent.
Le coût caché est opérationnel : vous ajoutez maintenant Vercel comme dépendance dans votre chemin d'inférence. Si Vercel a un problème de réseau edge, vos appels LLM échouent peu importe que OpenAI soit parfaitement sain. J'ai vu cela se produire une fois au cours des six derniers mois, une panne partielle d'environ 12 minutes sur l'edge Vercel en région EU-West. Pour la plupart des apps c'est acceptable. Pour tout ce qui a des engagements de SLA mesurés en nines, factorisez-le.
Il y a aussi la question de la résidence des données. Vos prompts et complétions passent par l'infrastructure Vercel. Pour la plupart des apps grand public : sans pertinence. Pour la santé, la finance, ou tout ce qui touche à des données personnelles sensibles au RGPD de manière significative : lisez attentivement l'accord de traitement des données avant de conduire quoi que ce soit à travers. J'ai dû dire à deux clients fintech de sauter la passerelle entièrement pour cette raison et de gérer le routage au niveau de l'application.
---
Quand l'utiliser et quand la sauter
Je vais être direct à ce sujet parce que le marketing destiné aux développeurs autour des outils IA tend à survendre.
Utilisez Vercel AI Gateway si :
- Vous êtes déjà sur Vercel et utilisez l'AI SDK (zéro friction supplémentaire)
- Vous avez une stratégie multi-fournisseur et voulez un basculement sans écrire de logique de retry
- Votre app a assez de prompts répétés ou sémantiquement similaires pour que le cache soit rentable
- Vous voulez un tableau de bord des coûts sans configurer d'intégrations de facturation distinctes chez les fournisseurs
Passez votre chemin ou réfléchissez-y attentivement si :
- Vous avez des exigences strictes en matière de résidence des données (RGPD, HIPAA)
- Vous avez besoin d'une latence d'inférence totale inférieure à 50ms et chaque saut compte
- Vous exécutez une infrastructure non-Vercel et l'ajout de leur edge introduit plus de complexité qu'elle ne résout
- Votre variété de prompts est extrêmement élevée et le taux de réussite du cache sémantique sera de toute façon proche de zéro
En 2022, nous avons construit un outil d'analyse de documents juridiques sur une pile auto-hébergée pour un cabinet de la City of London. Même si Vercel AI Gateway avait existé à l'époque, il aurait été immédiatement hors de question. Les prompts contenaient des informations confidentielles de clients et l'équipe de conformité IT du cabinet n'aurait jamais approuvé un proxy tiers. Nous avons mis en place notre propre couche d'abstraction de fournisseur en environ quatre heures de travail. Elle gérait le basculement entre deux fournisseurs avec une simple file d'attente prioritaire. Pas glamour. Totalement adéquat.
---
La configuration pratique (version courte)
Si vous avez décidé que c'est adapté à votre projet, voici la séquence que je suis :
- Activez la gateway dans les paramètres de votre projet Vercel sous l'onglet « AI »
- Installez ou mettez à jour
aiet@ai-sdk/openai(et les autres packages de fournisseur dont vous avez besoin) vers les dernières versions - Remplacez l'instanciation directe du client du fournisseur par le client gateway depuis
@vercel/ai-gateway(consultez la documentation officielle pour le chemin d'import exact, il a déjà changé une fois) - Définissez votre liste de fournisseurs par ordre de priorité dans l'objet de configuration de la gateway
- Définissez votre seuil de similarité du cache sémantique : je commence à 0,90 et j'ajuste en fonction des taux de réussite observés après une semaine de trafic
- Déployez dans un environnement de staging et déclenchez délibérément des défaillances de fournisseur pour vérifier que la chaîne de basculement fonctionne comme vous vous y attendez
- Surveillez le taux de réussite du cache et la latence p95 pendant les deux premières semaines avant de tirer des conclusions
C'est tout. Honnêtement pas compliqué.
---
FAQ
Vercel AI Gateway prend-il en charge les réponses en streaming ?
Oui, le streaming fonctionne via la gateway. Le seul piège est le basculement en milieu de flux : si le fournisseur principal s'arrête lors d'une réponse en streaming, la gateway réessayera avec le fournisseur suivant, mais le flux redémarre. Selon la façon dont votre interface utilisateur côté client gère le contenu partiel, cela peut causer un scintillement visible ou une première phrase dupliquée. Testez cela explicitement dans votre interface avant de déployer.
Puis-je utiliser Vercel AI Gateway sans le SDK Vercel AI ?
Techniquement, vous pouvez accéder au point de terminaison de la gateway directement via HTTP, mais l'intégration du SDK est où cela devient ergonomique. Sans le SDK, vous écrivez vos propres wrappers fetch autour de l'URL de la gateway, gérez le streaming vous-même et traitez les tentatives manuellement. À ce stade, vous pourriez aussi bien construire votre propre abstraction de fournisseur. La valeur de la gateway est étroitement couplée au SDK en pratique.
Comment le cache sémantique gère-t-il les données sensibles ou personnalisées ?
Il ne le fait pas automatiquement. Si vous envoyez des prompts qui incluent des données spécifiques à l'utilisateur (noms, numéros de compte, contexte de session), le cache tentera de faire correspondre les prompts sémantiquement similaires indépendamment du fait que ces données diffèrent entre les utilisateurs. Cela peut causer des correspondances de cache incorrectes dans les flux personnalisés. Vous devriez soit désactiver le cache sémantique pour ces routes, soit inclure une clé de cache limitée à l'utilisateur si la gateway le supporte dans votre tier de plan.
Que se passe-t-il pour mes requêtes si Vercel a une panne ?
Elles échouent. La passerelle est dans le chemin critique. Si vous avez besoin d'une véritable résilience multi-cloud, vous devriez avoir un disjoncteur au niveau de la couche application qui peut contourner entièrement la passerelle et accéder directement aux fournisseurs. Je garde les clients SDK des fournisseurs initialisés en secours dans toute application où le temps de disponibilité compte vraiment.
---
Le résumé honnête : Vercel AI Gateway est une infrastructure bien construite qui mérite sa place dans une pile IA native Vercel. Ce n'est pas un révolutionnaire de vos économies unitaires, mais un taux de hit du cache de 35-40 % sur la bonne charge de travail plus un basculement automatique représente une réelle amélioration opérationnelle par rapport au câblage manuel de tout. Sachez simplement ce qu'il ne peut pas faire avant de vous y engager. L'appel téléphonique de 8 h d'un client paniqué est une façon misérable de découvrir où vos hypothèses se sont trompées.
