Aller au contenu

Guides de migrationDepuis un proxy IA maison

D'un proxy maison à un plan de contrôle que vous n'exploitez pas

Beaucoup d'équipes ont écrit un petit service devant OpenAI et Anthropic : il détient les clés, relance, journalise, compte les tokens selon une table de coûts et applique un quota par équipe. Cette page fait correspondre chacune de ces tâches à INFRO, indique celles qui restent dans votre code, et montre comment migrer un service à la fois pendant que le proxy tourne encore.

Votre propre service devant les fournisseurs : clés, relances, journalisation, quotas

Les comptes INFRO sont en libre-service. Le catalogue, la documentation et le contrat d'API sont publics, la passerelle est déployée, et tout ce qui va au-delà de la v1 est marqué Plus tard. Offres et essai

Où en sont les choses

Ce que font habituellement ces proxys

Détenir les clés fournisseur, émettre des clés internes par équipe, relancer et basculer, journaliser les requêtes, chiffrer les tokens à partir d'une table tenue à la main, et refuser une équipe qui dépasse son quota.

Ce qu'ils coûtent à maintenir

Quelqu'un est responsable de la table de prix, des nouveaux modèles, des nouveaux paramètres de chaque fournisseur, de la base de données derrière les journaux et de l'astreinte pour le proxy lui-même.

Deux façons de migrer

Remplacez-le : les services appellent INFRO, qui appelle vos fournisseurs. Ou gardez-le derrière INFRO pendant un temps : connectez le proxy comme connexion openai-compatible et transférez ses services amont un par un.

Un proxy que vous avez écrit fait exactement ce dont vous avez besoin, et cela a de la valeur. Gardez-le si l'une de ces raisons explique son existence.

  • Il modifie la requête : templating de prompts, récupération injectée dans le contexte, nettoyage des PII avec vos propres modèles, ou post-traitement des réponses. Les garde-fous d'INFRO sont des règles de motifs et des vérifications par modèle de décision ; INFRO n'exécute pas votre code dans le chemin de la requête.
  • Il doit s'exécuter dans votre réseau ou dans une région désignée. Les offres d'INFRO sont hébergées sur le réseau de Cloudflare ; un déploiement auto-hébergé ou hybride relève d'un contrat entreprise.
  • Il sert des modèles qu'aucune API fournisseur n'expose, comme des poids que vous hébergez sur des GPU internes, et rien d'autre. INFRO peut router vers ce serveur comme connexion openai-compatible, mais le serveur reste le vôtre.
  • Il est petit, maîtrisé, et personne ne demande de budgets, d'attribution ni de basculement. Une passerelle serait alors une migration sans rien au bout.

Les modifications, une ligne chacune. Tout ce qui n'est pas listé ici reste tel quel.

 Votre proxyINFRO
URL de baseL'hôte interne de votre proxy.https://api.infro.io/v1 (format OpenAI), /v1/messages (format Anthropic), /v1/responses (OpenAI Responses).
CléUne clé interne émise par votre proxy pour chaque équipe ou service.Une clé de passerelle INFRO par service, avec sa propre liste d'autorisation de modèles, sa liste de fournisseurs, ses plages IP, son environnement et sa limite de dépenses.
ID du modèleLes alias définis par votre proxy.vendor/model, ou un nom de route : une route est un alias qui se résout en une liste ordonnée de vos connexions, modifiée dans la console.
En-têtesVos propres en-têtes d'équipe, d'utilisateur ou de fonctionnalité.X-INFRO-Feature, X-INFRO-User-Id, X-INFRO-Trace-Id, ou metadata.user_id, metadata.session_id, metadata.tags dans le corps.

Avant · votre proxy

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://llm-proxy.internal.example.com/v1",
  apiKey: process.env.LLM_PROXY_KEY,
  defaultHeaders: { "X-Team": "search" },
});

await client.chat.completions.create({
  model: "default-chat",
  messages: [{ role: "user", content: "Hello" }],
});

Après · INFRO

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.infro.io/v1",
  apiKey: process.env.INFRO_API_KEY, // one key per service
  defaultHeaders: { "X-INFRO-Feature": "search" },
});

await client.chat.completions.create({
  model: "default-chat", // a route with the same name
  messages: [{ role: "user", content: "Hello" }],
});

Gardez vos alias

Créez une route pour chaque alias défini par votre proxy, avec le même nom, et les services continuent d'envoyer le même model. Une clé peut être épinglée à des routes nommées, pour qu'elle ne puisse pas appeler un modèle directement.

Migrez un service à la fois

Connectez le proxy lui-même comme connexion openai-compatible et ajoutez-le comme cible de route. Les services peuvent passer à INFRO d'abord ; les services amont passent ensuite du proxy à des connexions directes.

Les équipes deviennent des projets

Les quotas par équipe deviennent des budgets de projet et des limites de dépenses par clé. Les membres peuvent être limités aux projets sur lesquels ils travaillent.

Ce que fait votre configuration aujourd'hui face à INFRO, vérifié par rapport à ce que la passerelle implémente. Une ligne indique que INFRO n'a rien.

Votre proxyCe que cela y faitDans INFRO
Coffre de clésmême formeDes clés fournisseur dans la configuration du proxy ou un coffre de secrets.Des connexions fournisseur, scellées au repos, plusieurs clés par fournisseur avec les clés de secours en dernier.
Clés internesmême formeLes clés que le proxy émet par équipe ou service.Des clés de passerelle avec listes d'autorisation de modèles, listes de fournisseurs, plages IP, un environnement, une limite de dépenses, le renouvellement et un interrupteur.
Relances et replismême formeDu code dans le proxy.Des routes avec des cibles prioritaires ou pondérées, des règles conditionnelles sur la requête et des règles d'échec par type (429, 5xx, timeout, connexion, identifiant, modération).
Quotasmême formeDes compteurs de tokens ou de dollars par équipe.Des budgets par organisation, projet, membre, clé et client final qui refusent au plafond avec 402, tenus même en concurrence.
Table de prixdifférentUne table de prix par token tenue à la main.Le tarif public de l'éditeur issu du catalogue d'INFRO, vos tarifs négociés là où vous les saisissez, et unpriced quand aucun n'est connu, jamais zéro.
Journaux de requêtesdifférentDes lignes dans votre propre base de données.Le journal des requêtes et les traces dans la console, GET /v1/requests, les exports, et les spans vers votre collecteur OpenTelemetry. La capture des prompts est désactivée tant que vous ne l'activez pas.
Transformations de prompts et de réponsesrienTemplating, récupération, nettoyage avec votre propre logique.Non disponible. Les garde-fous bloquent, masquent ou signalent selon des motifs et des vérifications par modèle de décision ; INFRO n'exécute pas votre code.
Modèles auto-hébergésdifférentvLLM, TGI ou Ollama derrière le proxy.Une connexion openai-compatible vers ce serveur, routée comme n'importe quel autre fournisseur. Le serveur reste le vôtre à exploiter.
L'exploiter vous-mêmedifférentIl s'exécute là où vous le déployez.Hébergé. Un déploiement auto-hébergé ou hybride relève d'un contrat entreprise, pas d'une offre.Enterprise — Disponible dans le cadre d'un contrat Enterprise plutôt qu'en libre-service.

Ce que INFRO ne fait pas

  • Exécuter votre propre code dans le chemin de la requête : templating de prompts, récupération, transformations personnalisées.
  • Batch, Files, fine-tuning et Realtime, ou les embeddings chez d'autres fournisseurs qu'OpenAI, Azure OpenAI, Mistral ou un endpoint compatible OpenAI.
  • L'épinglage à une région ; la résidence des données est sur la feuille de route, pas disponible.
  • Un déploiement auto-hébergé sans contrat entreprise.

Ce qui n'est pas repris

  • Les journaux de votre proxy. Il n'y a pas d'outil d'import ; laissez-les où ils sont.
  • Sa table de prix. Saisissez plutôt vos tarifs négociés dans la console ; les tarifs publics viennent du catalogue.
  • Transformations personnalisées. Elles restent dans votre code, avant l'appel à INFRO.

Questions

INFRO peut-il se placer devant notre proxy existant ?
Oui. Connectez le proxy comme connexion openai-compatible avec son URL de base et sa clé, et routez vers lui comme vers n'importe quel fournisseur pendant que vous transférez ses services amont.
Nos contrats fournisseurs changent-ils ?
Non. Vous connectez les comptes fournisseurs que vous détenez, et vos fournisseurs continuent de vous facturer directement à vos propres tarifs. INFRO est un abonnement avec 0 % de majoration sur les dépenses de modèles.
Qu'est-ce qui reste dans notre code ?
Tout ce qui modifie le prompt ou la réponse : templating, récupération de contexte, nettoyage personnalisé, post-traitement.

Migrez avec nous, ou seul

Le programme de migration transpose votre configuration un proxy IA maison en connexions, routes et budgets INFRO lors d'un appel, et migre le premier service avec vous. Vos fournisseurs continuent de vous facturer directement ; INFRO est un abonnement et ajoute 0 % aux dépenses de modèles.

Sources

Le comportement des SDK décrit sur cette page provient de ces sources, lues le 19 octobre 2026.