Zakaria Gafaoui AI Tech Lead & Solutions Architect — from MVP to enterprise production
Available Full map
EN FR
CV (EN) Ask my CV
Lens
  • Identity1
  • Missions10
  • Deep dive14
  • Skill5
  • Product2
  • Note3

Hover a node to reveal its second ring. Click to recentre the map on it.

Deep dive

How to route several models without rewriting the application

Brouillon Alstom 1,5 j priority P1

Context & constraints

Plusieurs fournisseurs de modèles, des besoins de coût et de latence différents selon les usages, et une sécurité qui exige un point de contrôle unique sur les appels sortants.

Options considered

  • Un SDK par fournisseur dans l'application : rapide au début, insoutenable au troisième modèle
  • Une gateway interne : un contrat d'API unique, du routage, des quotas, de l'observabilité
  • Une passerelle du marché : fonctionnelle, mais un fournisseur de plus à faire homologuer

The decision

Gateway interne, contrat d'API unique, routage par usage

RationaleLe point de contrôle était une exigence de sécurité de toute façon ; autant en faire le point d'abstraction.

Accepted consequenceUn composant interne à maintenir, superviser et documenter.

What broke

Les différences de comportement en streaming entre fournisseurs. Le contrat commun a dû être défini sur le plus contraint, pas sur le plus riche — sinon chaque nouveau modèle devient une exception dans le code applicatif.

The outcome

  • Changement de modèle sans modification applicative
  • Quotas et repli automatique par usage

What I would do differently

Journaliser dès le premier jour le coût par requête et par usage. Rétrofitter cette mesure oblige à rejouer l'historique.

Extended universe

Related questions

  • Comment tu orchestres plusieurs services LLM derrière une seule gateway ?

    Un contrat d'API unique côté application, et derrière : routage par usage, quotas, repli automatique, observabilité du coût. La difficulté réelle n'est pas le routage, ce sont les différences de comportement en streaming entre fournisseurs. Le contrat commun se définit sur le plus contraint, sinon chaque nouveau modèle devient une exception dans le code applicatif. Le bénéfice : changer de fournisseur ne touche pas l'application.

    SourcesAPI Gateway LLMAlstom