Cas 03 · Travaux choisis
Servir le trafic d’un assistant IA sans garder une connexion ouverte
- Livré et intégré — aucun résultat de production revendiqué
J’ai repensé le chemin de requête d’un assistant de support client IA pour qu’une conversation soit mise en file et interrogée par sondage plutôt que maintenue sur une connexion synchrone — livré et intégré.
- Rôle
- Senior Web Developer
- Compétences
- IA appliquée · Architecture · Fiabilité
- Domaine
- Plateforme e-commerce en production avec assistant IA
- Changement
- Chemin synchrone → file avec sondage côté navigateur
Contexte
Une plateforme e-commerce en production avec un assistant de support client IA qui sert ses clients, à côté des flux métier déjà établis de la plateforme.
Problème et zones floues
Il y a un décalage structurel au cœur de tout produit à base de LLM : un tour de modèle de langue prend couramment des dizaines de secondes, et tout ce qu’une requête web traverse pour l’atteindre — passerelles, pare-feu, proxys — a un budget de temps pensé pour des requêtes en millisecondes. Une conception synchrone a donc deux modes de défaillance à la fois. Le premier est évident : une réponse lente peut dépasser une limite quelque part sur le chemin. Celui qu’on manque : pendant qu’elle tourne, elle occupe ce chemin, et le client suivant attend derrière. De l’extérieur les deux se ressemblent : l’IA est lente. ⛔ Aucun des deux n’est un problème de modèle.
Mon rôle
Mon rôle : je travaille sur le système de support client IA de l’entreprise — structure des connaissances, routage des réponses, intégration d’outils, gestion des sessions, évaluation, garde-fous et escalade vers une personne — et j’ai conçu puis livré le changement de chemin de requête décrit ici. Je maintiens aussi la plateforme e-commerce autour.
Recueil du besoin
La question utile n’était pas « comment rendre le modèle plus rapide » mais « qu’est-ce qui, sur ce chemin, attend qu’une requête finisse vite, et qu’arrive-t-il à tous les autres quand l’une d’elles ne finit pas ? ». Y répondre fait passer le problème du réglage de modèle à l’architecture de connexion.
Architecture et arbitrages
Sortir du traitement synchrone. La requête est mise en file ; le navigateur interroge toutes les quelques secondes et affiche la réponse quand elle est prête. Rien ne garde de connexion ouverte, donc aucun plafond de temps sur le chemin ne gouverne la conversation, et les clients sont servis en parallèle, ⛔ pas en file les uns derrière les autres. Le coût est un client un peu plus complexe et un état d’attente visible — un échange que je referais, parce que l’autre solution échoue en silence et de façon injuste.
Mise en œuvre et intégration
Des workers de file sur le framework déjà utilisé par la plateforme, avec sondage côté navigateur, et gestion des reprises et des erreurs autour des appels au modèle. Deux contrôles sont venus avec : les sessions inactives expirent — une conversation silencieuse est relancée, et sans réponse elle se ferme et libère la capacité qu’elle retenait — et les requêtes plus légères sont routées vers des paliers de modèle plus petits au lieu que chaque appel parte vers le plus gros, ce qui est le contrôle de coût d’inférence le plus simple qui ne dégrade pas les réponses qui comptent.
Contrôles en production
Reprises et gestion d’erreurs autour des appels au modèle ; gestion du cycle de vie des sessions ; et une approche d’évaluation conçue dans le système plutôt que rajoutée après — y compris la justesse quand une seule réponse doit aller chercher et combiner plusieurs éléments, et le comportement face à des sondages adverses et d’ingénierie sociale. Cette évaluation est en cours de construction, ⛔ ce n’est pas un durcissement livré : je décris une conception, ⛔ je ne revendique pas un résultat.
Impact
La refonte est terminée et intégrée à la plateforme. Aucun chiffre de performance n’est publié pour ce travail, et aucun ne le sera — je n’ai pas de résultat en production que je puisse revendiquer honnêtement.
Enseignement réutilisable
Quand une fonctionnalité IA est décrite comme lente, mesurez le chemin avant de toucher au modèle. D’expérience, le modèle fait généralement ce qu’il a toujours fait, et c’est l’architecture autour qui a changé le vécu de l’utilisateur — et la correction consiste presque toujours à cesser de garder une connexion ouverte.
Preuves publiques
Tout ce qui précède peut être discuté publiquement. Ce qui est retenu, et ce qui est en préparation :
Rien de l’assistant du client n’est publié — ni sa structure de connaissances, ni ses prompts, ni son jeu d’évaluation, ni le moindre chiffre de performance. Les mécanismes décrits plus haut sont génériques et ne sont pas la propriété de ce client ; une implémentation indépendante sur mon propre contenu est un autre système, sans rapport avec l’activité de cet employeur.
Voici la méthode derrière tout ça
Les réponses viennent de ce site. Il vous dira quand un projet ne vaut pas la peine d’être construit.