LACUNA: Safe Agents as Recursive Program Holes
LACUNA est un modèle de programmation sécurisé pour les agents LLM qui traite les actions comme des trous de programme typés remplis par le modèle et validés par une vérification statique des types avant l'exécution, unifiant ainsi le flux de contrôle de l'agent avec le code généré tout en prévenant les échecs d'exécution et en limitant l'accès aux outils.
Article original sous licence CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète
Imaginez que vous êtes le PDG d'une entreprise et que vous embauchez un assistant brillant mais légèrement peu fiable (l'IA) pour effectuer votre travail.
L'Ancienne Méthode (Agents Actuels) :
Habituellement, vous donnez à l'assistant une instruction spécifique et minuscule : « Appelez la compagnie téléphonique. » L'assistant fait exactement cela, puis s'arrête et attend votre prochaine commande. Vous tenez le classeur, décidez de l'ordre des tâches et gardez les clés du bureau. L'assistant ne peut pas décider d'appeler la banque à la place, ni de réécrire les règles du bureau, car il n'a qu'un seul bouton à presser à la fois.
Le Problème :
Parfois, l'assistant est confus par une note astucieuse que vous avez écrite (une « injection de prompt »), ou il s'arrête à mi-chemin d'une tâche et fait une erreur, laissant le bureau dans un état désordonné et incohérent. Comme l'assistant n'est autorisé qu'à presser des boutons, il ne peut pas détruire le bâtiment, mais il peut tout de même causer beaucoup de chaos dans la pièce où il se trouve.
La Nouvelle Méthode (LACUNA) :
L'article présente LACUNA, qui modifie la relation. Au lieu de donner à l'assistant un seul bouton à presser, vous lui donnez un espace vide dans un contrat (un « trou tapissé ») et vous dites : « Remplissez cet espace avec le code nécessaire pour résoudre ce problème, mais il doit s'intégrer parfaitement dans notre contrat légal. »
Voici comment cela fonctionne, en utilisant des analogies simples :
1. Le « Contrat Magique » (Trous Tapissés)
Imaginez un contrat qui stipule : « Le résultat final de cette section doit être une Liste de Nombres. »
- Vous demandez à l'IA : « Trouvez les nombres premiers dans cette liste. »
- L'IA rédige tout un paragraphe d'instructions (code) pour le résoudre.
- La Vérification de Sécurité : Avant que l'IA ne soit autorisée à réellement faire quoi que ce soit, un Inspecteur strict (le compilateur) vérifie le paragraphe de l'IA.
- Le paragraphe aboutit-il réellement à une « Liste de Nombres » ? Si l'IA tente de renvoyer une « Liste de Pommes », l'Inspecteur la rejette immédiatement.
- L'IA a-t-elle tenté d'utiliser un outil qu'elle n'est pas autorisée à toucher ? (par exemple, essayer d'ouvrir un fichier pour lequel elle n'a pas la clé). L'Inspecteur repère cela aussi.
- Le Résultat : Si l'IA fait une erreur, le contrat est rejeté avant que toute action ne se produise. Le bureau reste propre. L'IA reçoit l'avis de rejet, réessaie et rédige un meilleur paragraphe.
2. La Règle « Tout ou Rien »
Dans l'ancienne méthode, si une IA tentait de « Supprimer un fichier » puis de « Calculer une somme », et que le calcul échouait, le fichier pourrait déjà être supprimé.
Dans LACUNA, c'est comme un bloc d'argile unique et indivisible.
- L'IA sculpte tout le bloc.
- L'Inspecteur vérifie l'intégralité du bloc d'un seul coup.
- Si n'importe quelle partie de la sculpture est incorrecte (la mauvaise forme, le mauvais matériau), le bloc entier est jeté. Rien ne se produit. Le bureau reste exactement tel qu'il était avant que l'IA ne commence. Cela prévient les catastrophes « à moitié finies ».
3. Le « Porte-Clés » (Capacités)
L'article parle également des Capacités. Imaginez que l'IA se voit attribuer un ensemble spécifique de clés (un porte-clés) pour le travail.
- Si le travail est « Lire le menu », l'IA reçoit la « Clé du Menu ».
- Si le travail est « Envoyer un e-mail », l'IA reçoit la « Clé de l'E-mail ».
- Même si l'IA est trompée par une mauvaise note disant : « Utilisez la Clé de la Banque pour voler de l'argent », elle ne peut physiquement pas le faire. Elle n'a pas la Clé de la Banque dans sa poche. L'Inspecteur vérifie son porte-clés avant qu'elle ne soit autorisée à tourner la serrure.
- Cela signifie que même si un pirate informatique trompe l'IA pour qu'elle tente de faire quelque chose de mal, l'IA manque littéralement des « clés » pour ouvrir ces portes.
4. Les « Poupées Russes Empilées » (Récursion)
L'IA peut écrire du code qui inclut davantage d'instructions pour elle-même.
- Vous demandez : « Rédigez un rapport sur trois sujets. »
- L'IA rédige un plan qui dit : « D'abord, je demanderai à l'IA de rechercher le Sujet A, puis le Sujet B, puis le Sujet C, et enfin de les combiner. »
- Chacune de ces petites demandes est également un « trou » qui est vérifié par l'Inspecteur avant d'être exécuté. C'est comme un ensemble de poupées russes, où chaque poupée est inspectée avant d'être autorisée à s'ouvrir.
Ce Que L'Article A Réellement Découvert
Les chercheurs ont testé ce système (LACUNA) en utilisant un langage de programmation appelé Scala 3.
- Sécurité : Ils ont constaté que l'« Inspecteur » a intercepté environ 8,6 % des tentatives de l'IA avant qu'elles ne puissent s'exécuter. Il s'agissait de tentatives qui avaient soit la mauvaise forme, soit tentaient d'utiliser des outils auxquels l'IA n'avait pas droit.
- Nouvelle Tentative : Lorsque l'IA faisait une erreur, le système lui demandait de réessayer. En moyenne, il ne fallait que 0,7 tentative pour obtenir une réponse valide.
- Performance : Le système a résolu environ 27 % des tâches de recherche difficiles et 76 % des tâches de service client. Cela était à peu près identique à celui d'autres agents IA standards, prouvant que l'ajout de cette vérification de sécurité stricte ne rendait pas l'IA « moins intelligente », simplement plus sûre.
- Sécurité : Ils ont testé le système contre des pirates informatiques tentant de tromper l'IA (injection de prompt). Comme l'IA était limitée par son « porte-clés » (capacités), les pirates ne pouvaient pas amener l'IA à faire des choses en dehors de son champ autorisé, même s'ils réussissaient à tromper l'IA pour qu'elle tente de le faire.
Le Bémol (Limites)
L'article admet quelques points :
- Ce n'est pas parfait : L'Inspecteur vérifie si l'IA a suivi les règles (a-t-elle utilisé les bons outils ? a-t-elle renvoyé le bon type de réponse ?), mais il ne vérifie pas si l'IA a fait la bonne chose sur le plan logique. Si l'IA rédige un code parfait qui calcule une mauvaise mathématique, l'Inspecteur le laisse passer.
- Il faut une IA intelligente : Si l'IA n'est pas très bonne pour écrire du code, elle sera souvent rejetée, et le processus sera lent.
- C'est plus lent : Parce que le système doit s'arrêter, vérifier et re-vérifier le code à chaque fois, cela prend plus de temps et de puissance de calcul que de simplement laisser l'IA presser un bouton.
En résumé : LACUNA transforme l'IA d'un presseur de boutons en un entrepreneur qui doit soumettre un plan complet pour approbation avant d'effectuer tout travail. Si le plan enfreint les règles, le travail ne commence jamais, maintenant le système à l'abri des erreurs et des ruses.
Noyé(e) sous les articles dans votre domaine ?
Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.