LangChain a présenté une nouvelle abstraction d'agent appelée Middleware dans sa version 1.0, visant à résoudre les problèmes de contrôle limité sur l'ingénierie de contexte rencontrés par les développeurs avec les frameworks d'agents existants. Les agents sont composés d'un modèle, d'une invite et d'une liste d'outils, mais leur fiabilité en production reste un défi en raison de la complexité croissante des cas d'utilisation. Les développeurs ont souvent besoin de personnaliser l'état de l'agent, le contenu envoyé au modèle et la séquence des étapes exécutées, ce qui a conduit LangChain à introduire des fonctionnalités telles que la configuration d'exécution, les schémas d'état personnalisés et les hooks avant et après le modèle. Cependant, ces améliorations ont également augmenté la complexité des paramètres et leurs dépendances, rendant la coordination difficile. Le Middleware de LangChain 1.0 permet de modifier la boucle principale de l'agent en introduisant des concepts tels que before_model, after_model et modify_model_request, offrant ainsi une plus grande flexibilité et une meilleure composition des agents. Cette approche permet aux développeurs d'avoir un contrôle plus fin sur le comportement de l'agent et de mieux gérer la complexité des cas d'utilisation avancés.