Retour au blog
IA Native · Comparatif fournisseurs · 10 min de lecture

AI Gateway Postgres : fournisseurs natifs vs endpoints compatibles OpenAI

Affane Daylami · Fondateur· 24 août 2026

Un AI Gateway route les appels vers plusieurs fournisseurs LLM depuis un point d’entrée unique. Chez Aurabase, cette couche vit directement dans le backend Postgres. OpenAI, Anthropic (Claude) et Google Gemini disposent chacun d’un client natif codé en dur, avec sa propre gestion des erreurs, de la facturation des tokens et du streaming. Tout le reste, Mistral, Scaleway AI, Ollama en auto-hébergé, passe par un adaptateur générique compatible OpenAI. La distinction n’est pas cosmétique : elle détermine ce qui fonctionne vraiment (bascule automatique, comptage précis des tokens de raisonnement) et ce qui fonctionne « tant que le fournisseur imite fidèlement l’API OpenAI ».

On a vérifié cette distinction directement dans le code du service aura-ai, pas dans une page marketing : trois modules de provider (anthropic, gemini, openai) composent le gateway, rien de plus. Le reste du paysage confirme qu’il s’agit d’une vraie catégorie développeur, pas d’un argument marketing isolé. Neon publie deux pages dédiées (« AI Gateway » et « Backend for AI agents »), LiteLLM s’est imposé comme projet open source de référence, et Braintrust y consacre ses propres comparatifs.

L’essentiel
  • 3 fournisseurs natifs vérifiés dans le code : OpenAI, Anthropic (Claude), Google Gemini (services/aura-ai/src/llm/mod.rs).
  • Mistral, Scaleway AI et Ollama passent par l’adaptateur OpenAI générique (OPENAI_BASE_URL), pas par un client dédié.
  • Le natif apporte plus que la connexion : circuit breaker par (projet, fournisseur), retry à backoff, chaîne de fallback (ordre par défaut Anthropic → OpenAI → Google), normalisation des motifs d’arrêt.
  • Anthropic ne couvre que le chat : pas d’API d’embeddings, contrairement à OpenAI et Gemini qui couvrent les deux.
  • Neon, LiteLLM et Braintrust confirment la même catégorie côté marché, avec trois approches différentes : gateway managé, proxy open source, contenu comparatif.
#
Définition

Qu’est-ce qu’un AI Gateway sur un backend Postgres ?

Un AI Gateway centralise les appels vers des fournisseurs LLM externes derrière une seule interface, au lieu de coder chaque intégration SDK côté application. Les clés API restent côté serveur, jamais exposées au client. Le gateway ajoute une couche commune de retry, de bascule et de comptage de coûts par-dessus des fournisseurs dont les formats de réponse diffèrent.

Sur un backend Postgres comme Aurabase, ce choix a une conséquence directe : le même gateway alimente le chat applicatif, le NL2SQL (traduction langage naturel vers SQL) et le RAG (recherche vectorielle pgvector). Un fournisseur mal intégré dégrade les trois fonctionnalités à la fois, pas une seule. C’est ce qui rend la distinction natif/compatible plus qu’un détail d’implémentation.

#
Distinction technique

Fournisseur natif ou endpoint compatible : la différence concrète

Un client natif code la forme réelle de l’API du fournisseur : structure de la requête, format de réponse, champs d’usage propres à ce fournisseur. C’est le cas d’Anthropic, dont l’API « Messages » ne ressemble pas à celle d’OpenAI, ou de Gemini, dont le comptage des tokens de raisonnement (thoughtsTokenCount) s’ajoute au compteur de sortie au lieu d’y être déjà inclus.

Un endpoint compatible OpenAI, lui, réutilise le client OpenAI existant et change seulement l’URL de base. Cela fonctionne parce que le fournisseur tiers (Mistral, Scaleway AI, Ollama) a choisi d’imiter le contrat d’API d’OpenAI, souvent avec des écarts : pas de champ de tokens de raisonnement séparé, pas de garantie sur la forme exacte des erreurs. La compatibilité s’arrête là où l’imitation s’arrête.

#
Vérifié dans le code

3 clients LLM natifs chez Aurabase, pas plus

Le fichier qui organise les providers dans aura-ai ne laisse pas de place à l’ambiguïté. Trois modules, un par fournisseur natif, rien d’autre déclaré.

services/aura-ai/src/llm/mod.rs
RUST
pub mod anthropic;
pub mod gemini;
pub mod openai;

Chaque module implémente le trait ChatProvider (complétion, streaming, nom de modèle). Deux d’entre eux, OpenAI et Gemini, implémentent en plus EmbeddingProvider. Anthropic n’en a pas besoin : Claude n’expose pas d’API d’embeddings côté fournisseur, un fait produit d’Anthropic lui-même, pas une lacune du code Aurabase.

OpenAICLIENT NATIFChat + embeddings, fichier services/aura-ai/src/llm/openai.rs
Anthropic (Claude)CLIENT NATIFChat uniquement (pas d’embeddings côté Anthropic), fichier llm/anthropic.rs
Google GeminiCLIENT NATIFChat + embeddings, comptage de tokens de raisonnement additif, fichier llm/gemini.rs
MistralENDPOINT COMPATIBLERoute via le client openai.rs, variable OPENAI_BASE_URL
Scaleway AIENDPOINT COMPATIBLERoute via le client openai.rs, variable OPENAI_BASE_URL
Ollama (auto-hébergé)ENDPOINT COMPATIBLERoute via le client openai.rs, variable OPENAI_BASE_URL
#
Configuration

Brancher Mistral, Scaleway AI ou Ollama sur un projet Aurabase

Configurer Mistral, Scaleway AI ou Ollama ne demande pas de nouveau module : la même variable OPENAI_BASE_URL redirige le client openai.rs vers un autre point de terminaison compatible. C’est une bascule de configuration, pas un développement.

.env aura-ai
BASH
# Provider par défaut : OpenAI natif
OPENAI_API_KEY=sk-...
# Basculer sur un fournisseur compatible OpenAI (Mistral, Scaleway AI, Ollama...)
OPENAI_API_KEY=<clé du fournisseur choisi>
OPENAI_BASE_URL=<URL de base compatible OpenAI du fournisseur>
# ex. Mistral : https://api.mistral.ai/v1

Le comportement change en conséquence. Les erreurs HTTP restent classifiées par le même mécanisme (429 → limite de débit, 5xx → transitoire et retryable, 404 → modèle inconnu), parce que la classification vit au niveau du transport HTTP, pas du parsing spécifique au fournisseur. Ce qui ne suit pas : le comptage précis des tokens de raisonnement, propre au client dédié Gemini.

#
Résilience

Pourquoi le natif change la donne : bascule, erreurs, facturation

Le gateway d’Aurabase ajoute trois mécanismes de résilience au-dessus des trois clients natifs. Un circuit breaker par couple (projet, fournisseur) coupe les appels vers un fournisseur en échec répété, avec un jeton de sonde en état semi-ouvert avant de le rouvrir. Un retry à backoff exponentiel avec jitter relance les erreurs transitoires (timeout, 5xx, 429), sans dépendance à une bibliothèque externe de nombres aléatoires.

Retry et fallback ne se cumulent pas naïvement
Quand plusieurs fournisseurs sont configurés en chaîne, une seule tentative est faite par fournisseur avant de basculer au suivant, pour éviter l’amplification (retry × fallback) qui multiplierait les appels amont et la latence totale. L’ordre par défaut de cette chaîne est Anthropic, puis OpenAI, puis Google Gemini.

Chaque fournisseur nomme aussi différemment le motif d’arrêt d’une réponse : length chez OpenAI, MAX_TOKENS chez Gemini, max_tokens chez Anthropic, pour la même réalité (troncature). Le code normalise ces trois vocabulaires vers un jeu commun (stop, length, content_filter, tool_use, other). Sans cette normalisation, un client multi-fournisseur devrait connaître les trois vocabulaires pour détecter une réponse tronquée.

La facturation illustre le même risque. Chez OpenAI et Anthropic, le raisonnement du modèle est déjà compris dans le compteur de tokens de sortie facturés. Chez Gemini, thoughtsTokenCount s’ajoute séparément à candidatesTokenCount : l’ignorer sous-estime le coût réel d’une requête. Un adaptateur générique compatible OpenAI n’a aucune raison de connaître cette particularité, propre au format de réponse natif de Gemini.

#
Paysage 2026

Neon, LiteLLM, Braintrust : où se situent les meilleurs LLM gateways en 2026 ?

Le marché confirme qu’un AI Gateway est devenu une brique attendue, pas un argument marketing isolé. Neon publie deux pages produit dédiées, « AI Gateway » et « Backend for AI agents », toutes deux orientées développeur Postgres. LiteLLM s’est imposé comme projet open source de référence pour unifier les appels vers un grand nombre de fournisseurs derrière un format proche d’OpenAI. Braintrust publie de son côté ses propres comparatifs sur le sujet, signe que la catégorie pèse assez pour justifier du contenu éditorial dédié.

Ces acteurs répondent à un besoin réel : réduire le couplage entre le code applicatif et un fournisseur LLM donné. La différence avec Aurabase tient à l’intégration. Le gateway ne vit pas à côté du backend : il partage le même service que le NL2SQL et le RAG, sur la même base Postgres. Le compromis inverse existe aussi : un proxy dédié comme LiteLLM couvre en général davantage de fournisseurs qu’un gateway intégré à un backend applicatif.

AurabaseIntégré au backend Postgres (service aura-ai)3 natifs vérifiés + compatible OpenAI pour le reste
Neon AI GatewayProduit dédié, à côté de la base Postgres managéeDocumenté sur deux pages officielles distinctes
LiteLLMProxy open source indépendant, devant n’importe quel backendLarge éventail de fournisseurs via un format proche d’OpenAI
#
Honnêteté éditoriale

Quand choisir un gateway natif, quand choisir un proxy généraliste

Un gateway natif comme celui d’Aurabase a un avantage réel quand le backend et l’IA doivent rester dans le même système : NL2SQL, RAG et chat applicatif partagent alors la même politique de résilience et la même facturation, sans service supplémentaire à opérer.

Le compromis inverse existe. Si votre priorité est de couvrir un très grand nombre de fournisseurs, ou si le gateway doit servir plusieurs backends indépendants et pas seulement un projet Postgres, un proxy généraliste comme LiteLLM reste souvent le bon choix. Aurabase ne cherche pas à concurrencer cette largeur de couverture : le pari est la profondeur sur 3 fournisseurs majeurs, intégrée au reste du backend.

Pour comprendre comment cette intégration change concrètement l’usage du NL2SQL par rapport à une approche par connecteurs externes, l’approche choisie par Supabase, voir Supabase mise sur des connecteurs, pas sur du NL2SQL natif.

#
Vue d’ensemble

Gateway natif intégré contre proxy LLM généraliste

Synthèse des critères qui distinguent réellement les deux approches, sans jugement de valeur : chacune répond à un besoin différent.

FournisseursProfondeur sur 3 fournisseurs majeurs + compatible OpenAI pour le resteLarge éventail de fournisseurs, intégration généralement uniforme
Clés APIChiffrées côté backend, même service que la base de donnéesChiffrées côté proxy, service séparé du backend applicatif
Lien NL2SQL / RAGMême service, même résolveur de providerAucun lien natif, intégration à construire soi-même
RésilienceCircuit breaker par (projet, fournisseur), fallback, retry à backoffDépend de la configuration retenue pour le proxy
DéploiementUn service en moins à opérer (déjà dans le backend)Détachable, réutilisable sur plusieurs projets/backends

Pour voir ce gateway à l’œuvre sur un cas concret, voir le tutoriel NL2SQL sur Postgres. Pour le détail des capacités IA natives d’Aurabase, voir la page IA native.

#
Questions Fréquentes

FAQ

Peut-on utiliser Mistral avec Aurabase ?+
Oui, via l’endpoint compatible OpenAI : configurez OPENAI_API_KEY avec la clé Mistral et OPENAI_BASE_URL avec l’URL de base de l’API Mistral. Ce n’est pas un client natif dédié : Mistral passe par le même code que le fournisseur OpenAI, avec les mêmes limites, dont l’absence de comptage séparé des tokens de raisonnement.
Que se passe-t-il si le fournisseur LLM principal tombe en panne ?+
Un circuit breaker par couple (projet, fournisseur) détecte les échecs répétés et coupe les appels vers ce fournisseur. Si une chaîne de fallback est configurée (ordre par défaut : Anthropic, puis OpenAI, puis Google Gemini), la requête bascule automatiquement vers le fournisseur suivant, avec une seule tentative par fournisseur pour éviter l’amplification retry × fallback.
Quelle est la différence entre un client natif et un endpoint compatible OpenAI ?+
Un client natif code la forme réelle de l’API du fournisseur : structure de requête, format de réponse, champs d’usage propres à ce fournisseur, comme le comptage additif des tokens de raisonnement chez Gemini. Un endpoint compatible réutilise le client OpenAI existant en changeant seulement l’URL de base, ce qui fonctionne tant que le fournisseur tiers imite fidèlement le contrat d’API d’OpenAI.
Aurabase propose-t-il des embeddings pour tous les fournisseurs natifs ?+
Non. OpenAI et Google Gemini implémentent l’interface d’embeddings, pas Anthropic. Claude n’expose pas d’API d’embeddings côté fournisseur : ce n’est pas une lacune du code Aurabase, mais une caractéristique du produit Anthropic lui-même. Le guide technique AI Gateway détaille la configuration par fournisseur, natif ou compatible.
TESTER LE GATEWAY

Un gateway IA intégré à votre base Postgres

Créez un projet Aurabase gratuit et connectez un fournisseur LLM natif ou compatible OpenAI en quelques minutes.

Aucune carte bancaire requise · 500 MB gratuits · 50 000 MAU