Introduction
L'harnais d'agent est la boucle qui alimente un modèle de langage. Il envoie une invite, obtient une réponse, exécute les appels d'outils demandés par le modèle, renvoie les résultats et répète jusqu'à ce que le modèle indique qu'il a terminé. Chaque agent de production en a un. La question est de savoir où il s'exécute.
Contexte Technique
Il existe deux réponses à cette question, avec des propriétés de sécurité, des modes de défaillance et des implications différentes pour ce que l'agent peut faire. Les compromis varient également en fonction de savoir si vous construisez un agent mono-utilisateur ou multi-utilisateur. Nous sommes dans le camp multi-utilisateur, ce qui pose des problèmes que les constructeurs mono-utilisateur ne rencontrent pas.
La boucle peut s'exécuter dans le même conteneur que le code sur lequel elle travaille, ou sur le backend via une API. Chaque approche a ses avantages et ses inconvénients. L'exécution de l'harnais à l'intérieur du bac à sable présente une simplicité d'exécution, mais l'exécution à l'extérieur offre plus de flexibilité et de sécurité.
Analyse et Implications
L'exécution de l'harnais à l'extérieur du bac à sable permet de garder les informations d'identification à l'extérieur du bac à sable, de suspendre le bac à sable lorsque l'agent n'est pas en cours d'exécution et de traiter les bac à sable comme du bétail, ce qui signifie qu'ils peuvent être facilement remplacés en cas de défaillance. Cela nécessite cependant de résoudre des problèmes tels que la persistance des données et la gestion des sessions.
La mise en œuvre d'un harnais d'agent à l'extérieur du bac à sable nécessite de prendre en compte les problèmes de durabilité, de mise à l'échelle et de sécurité. Il est nécessaire de trouver des solutions pour garantir que l'harnais puisse survivre aux redéploiements, aux événements de mise à l'échelle et aux défaillances d'instances, tout en maintenant la sécurité et la confidentialité des données.
Perspective
Nous avons choisi de mettre en œuvre l'harnais d'agent à l'extérieur du bac à sable, ce qui nous a permis de résoudre les problèmes de persistance des données, de gestion des sessions et de sécurité. Nous utilisons des outils tels que Inngest pour la gestion des fonctions à longue durée de vie et Blaxel pour la gestion des bac à sable. Nous avons également mis en place un système de virtualisation des accès au système de fichiers pour permettre à l'agent de fonctionner de manière transparente.
Il est important de noter que la mise en œuvre d'un harnais d'agent à l'extérieur du bac à sable nécessite une planification et une exécution soigneuses pour garantir la sécurité, la scalabilité et la fiabilité du système. Il est également important de prendre en compte les besoins spécifiques de votre organisation et de votre utilisation de l'agent pour déterminer la meilleure approche pour votre cas d'usage.