Un pipeline de documents ou de tickets construit sur un modèle de langage peut réussir toutes les démos et ne jamais partir en production, car la production exige ce qu'une démo n'exige pas : un jeu annoté sur lequel le recetter, un chemin de données qui reste dans votre infrastructure, une place pour la mauvaise réponse et un responsable après le lancement. Voici à quoi ressemble chacun de ces manques, ce qui le comble, et comment reconnaître les prestataires d'ingénierie qui mènent vraiment ce travail jusqu'en production dans votre propre périmètre.
Le pilote a fonctionné. Sur un ensemble de documents triés sur le volet, le modèle a extrait les champs, trié les tickets et convaincu les personnes qui l'avaient demandé. Des mois plus tard, il tourne toujours dans un bac à sable sur des données d'échantillon, et personne ne sait dire ce qu'il faudrait pour l'activer sur la vraie file.
Ce manque ne se comble pas en changeant de modèle. Une démo répond à la question de savoir si un modèle sait lire un document. La production demande ce qu'il advient de chaque document, y compris le document scanné, le fil transféré et celui sur lequel le modèle se trompe, sur des données qui n'ont peut-être jamais eu le droit d'atteindre le service utilisé par le pilote.
La réponse courte est structurelle. Avant de changer de modèle, construisez quatre choses que le pilote a laissées de côté : un jeu de recette tiré du trafic réel et noté par champ, un chemin de données où poids, index, logs et données d'évaluation restent tous dans votre infrastructure, des validateurs et une file de revue pour les sorties qui échouent, et un responsable d'exploitation, avec de la capacité, un repli et un monitoring. Ce qu'amBrain peut étayer publiquement sur son propre travail autour des LLM, en intégralité : Nous avons mené une intégration LLM jusqu'en production dans le périmètre FinTech d'un client : extraction et normalisation d'avis non structurés émis par des brokers et des places de marché — opérations sur titres, modifications d'instruments et de marges — en enregistrements structurés que consomme le système de trading. Le client n'est pas nommé, cet article n'est pas une étude de cas de ce projet, et aucun chiffre ci-dessous n'est mesuré sur un système à nous.
En 2015, Sculley et ses collègues de Google ont écrit que seule une petite fraction des systèmes de machine learning réels est constituée du code de machine learning, et que l'infrastructure nécessaire qui l'entoure est vaste et complexe. Un pipeline à base de modèle de langage a la même forme, et un pilote construit à partir de cette seule petite partie n'a rien autour de lui pour tourner en production.
Mettez ce dont disposait le pilote à côté de ce dont la file de production a besoin, et le travail manquant devient une liste :
Le premier artefact manquant est un jeu annoté de documents réels, avec la réponse que chacun doit produire. Sans lui, chaque changement de prompt ou de modèle est jugé par celui qui lit la sortie ce jour-là, et le pilote ne peut pas franchir un jalon qui n'a jamais été mis par écrit.
Les « Rules of Machine Learning » de Google placent la mesure avant le modèle : la règle n° 2 est : d'abord, concevoir et implémenter des métriques. Pour l'extraction et le routage de tickets, la métrique n'est pas un score unique pour tout le document :
Quand le pilote a été construit sur un modèle hébergé avec des échantillons, des données synthétiques ou des documents que quelqu'un a validés à la main, et que les données réelles ne peuvent pas être transmises à un fournisseur externe, le résultat du pilote ne se transpose pas : le modèle à l'intérieur peut être un autre modèle, ou le même modèle à poids ouverts avec une quantification et des réglages de serving différents, et dans les deux cas sa qualité doit être mesurée à nouveau sur le jeu de recette.
Le modèle est le composant qu'il est évident de ramener à l'intérieur. Ce n'est pas le seul, car un pipeline à base de modèle de langage copie les données dans plus d'endroits que l'appel au modèle :
Le masquage aide là où les logs doivent quitter une zone restreinte. Presidio, un framework open source lancé chez Microsoft, détecte et anonymise les données personnelles dans du texte, et sa documentation indique que, la détection étant automatisée, rien ne garantit qu'il trouvera toutes les informations sensibles. Le masquage réduit l'exposition ; il ne remplace pas le fait de garder les données à l'intérieur.
Un pilote reçoit des documents ; la production reçoit tout ce que les expéditeurs produisent. Avant tout appel au modèle, le pipeline doit transformer cela en un texte vers lequel il peut renvoyer :
Les entrées longues demandent un soin particulier. Dans « Lost in the Middle », publié dans TACL en 2024, Liu et ses collègues ont montré que, pour les modèles qu'ils ont testés, la performance est souvent la plus élevée lorsque l'information pertinente se trouve au début ou à la fin du contexte d'entrée, et se dégrade significativement lorsqu'elle se trouve au milieu d'un long contexte. Découper un long document par section, en conservant la source sur chaque chunk, est un choix par défaut plus sûr que de supposer que le modèle lit tout le contexte de manière uniforme, et le jeu de recette montre ce qui vaut pour vos documents.
Le décodage contraint limite le modèle à un JSON conforme à un schéma : vLLM le prend en charge sous le nom de structured outputs, et llama.cpp au moyen de grammaires. Il fixe la forme de l'enregistrement, dans la limite des fonctionnalités de schéma que le backend prend en charge et tant que la génération n'est pas coupée par la limite de tokens, mais pas sa véracité : un enregistrement bien formé peut tout de même contenir une date fausse.
La véracité se vérifie après le modèle, par du code auquel l'entreprise fait déjà confiance :
La confiance que le modèle s'attribue lui-même est un garde-fou faible. Le GPT-4 Technical Report d'OpenAI, publié en 2023, montre que sur un benchmark à choix multiples le modèle pré-entraîné était très bien calibré et que le post-entraînement a réduit la calibration. Une certitude autodéclarée ou une probabilité de token est un signal à tester sur le jeu de recette, pas un seuil auquel se fier par défaut.
Un enregistrement qui échoue à un contrôle, quel qu'il soit, va dans une file de revue, et non dans le système aval. La file est un produit à part entière : il lui faut un responsable, un plan de capacité en heures de relecture, le passage source affiché à côté de chaque champ, et des corrections qui reviennent alimenter le jeu de recette.
Un ticket de support est un texte écrit par quelqu'un d'extérieur à l'entreprise, et un document peut porter des instructions que son expéditeur y a placées délibérément. L'OWASP Top 10 for LLM Applications 2025 place l'injection de prompt (prompt injection) en premier, y compris l'injection indirecte, où les instructions arrivent à l'intérieur d'un contenu externe que le modèle traite, comme un site web ou un fichier.
Trois entrées de cette même liste se traduisent en règles de conception pour un pipeline de documents :
L'OWASP note aussi qu'on ne sait pas s'il existe une prévention infaillible de l'injection de prompt. Ce sont les contrôles de sortie et la limite de privilèges qui font l'essentiel du travail, pas la formulation du prompt.
Le comportement d'un pipeline est le produit de plusieurs artefacts qui changent indépendamment les uns des autres. Traitez-les comme une seule release, et stockez son identifiant sur chaque enregistrement qu'elle produit :
Figer les versions ne rend pas les sorties identiques. Thinking Machines Lab a montré en septembre 2025 qu'un serveur d'inférence peut renvoyer des complétions différentes pour le même prompt à température zéro, parce que le résultat d'une requête dépend du nombre d'autres requêtes qui partagent son batch ; le même billet montre que des kernels invariants au batch éliminent ce phénomène au prix d'une perte de vitesse. À moins que le serveur n'utilise de tels kernels, la reproductibilité consiste à relancer le jeu de recette à chaque release et à comparer les scores, pas à attendre un texte identique.
La capacité se planifie en tokens, pas en documents. Mesurez la distribution de la longueur des entrées et des sorties sur le trafic réel, car une longue pièce jointe peut coûter autant que de nombreux tickets courts, et le temps de génération croît avec la longueur de la sortie.
Les systèmes de serving regroupent les requêtes en batches pour garder l'accélérateur occupé. Dans l'article sur vLLM, présenté à SOSP 2023, Kwon et ses collègues ont rapporté que la pagination du cache clé-valeur de l'attention améliorait le débit d'un facteur 2 à 4 à niveau de latence égal, par rapport aux systèmes qu'ils ont évalués. Des batches plus gros augmentent le débit et augmentent aussi la latence de chaque requête, ce qu'une file de back-office peut absorber et une étape interactive non, d'où la séparation des deux :
Le repli est ce qui rend l'activation du pipeline réversible. Le processus manuel qui existe aujourd'hui reste le socle, et le pipeline lui retire du travail champ par champ plutôt que de le remplacer à une date unique.
Les tableaux de bord des serveurs disent si le pipeline a répondu. Ils ne disent pas si les réponses étaient justes, et un modèle qui se dégrade sur un nouveau template garde sa latence. Le monitoring d'un pipeline d'extraction ou de tickets couvre les deux :
Le Generative AI Profile du NIST, NIST AI 600-1, publié en juillet 2024, organise ce travail selon les quatre fonctions de son AI Risk Management Framework : gouverner, cartographier, mesurer et gérer. Les noms comptent moins que la conséquence : la mesure après le lancement est une activité identifiée et dotée de personnel, pas quelque chose que l'équipe du pilote fait quand elle en a le temps.
Activer le pipeline pour tout à une seule date réunit tous les risques en un seul événement. Un déploiement progressif les tient séparés :
Un pilote qui lit bien les documents et ne passe pourtant jamais en production n'a pas échoué à la lecture. On ne lui a jamais donné de jeu de recette à passer, de chemin de données qu'il avait le droit d'utiliser, de place pour ses mauvaises réponses ni de responsable pour le lendemain du lancement.
La question derrière cet article, qui peut installer un pipeline LLM dans votre propre infrastructure et le mettre réellement en production, se tranche par un test qui ne demande aucune liste de fournisseurs. Un prestataire qui fait ce travail pose des questions sur la recette et l'exploitation avant de recommander un modèle :
Chaque élément est un point que vous pouvez aborder dès la première conversation, et une réponse vague signifie que le travail manquant du pilote n'a pas encore été cadré.
La première question n'est donc pas de savoir quel modèle faire tourner dans votre périmètre. C'est de savoir quels champs, sur quels documents, vous accepteriez de voir automatisés, mesurés par rapport à quoi, et qui reprend les enregistrements qui échouent à la validation.
Ce qu'amBrain peut étayer publiquement au-delà de l'intégration en production décrite dans le résumé ci-dessus : amBrain construit des logiciels depuis 2019. Nous travaillons en trois formats : livraison complète, équipe dédiée ou ingénieurs intégrés à votre équipe.
Apportez votre architecture actuelle et le mode de défaillance qui vous inquiète : nous les passerons en revue ensemble en une demi-heure.