8 points par GN⁺ 2026-02-08 | Aucun commentaire pour le moment. | Partager sur WhatsApp
  • Interpréteur Python léger basé sur Rust conçu pour exécuter en toute sécurité le code généré par l’IA, en éliminant la complexité et la latence des sandbox de conteneurs
  • Blocage complet de l’accès au système de fichiers, aux variables d’environnement et au réseau, avec possibilité d’appeler uniquement les fonctions externes explicitement autorisées par le développeur
  • Offre un temps de démarrage inférieur à 1 microseconde et des performances d’exécution proches de CPython, tout en étant callable depuis Rust, Python et JavaScript
  • L’état d’exécution peut être sauvegardé et restauré sous forme de snapshot au niveau de l’octet, ce qui permet l’interruption et la reprise entre processus
  • Doit faire fonctionner la fonctionnalité Code Mode de Pydantic AI, et sera utilisé comme composant clé pour exécuter en toute sécurité le code Python écrit par un LLM

Présentation de Monty

  • Monty est un interpréteur Python expérimental écrit en Rust, conçu pour exécuter en toute sécurité le code généré par l’IA
    • Il évite le coût, la latence et la complexité des sandbox basées sur des conteneurs, et permet d’exécuter directement le code Python écrit par un LLM
    • Son temps de démarrage se mesure en quelques microsecondes, bien plus rapide que les centaines de millisecondes généralement observées avec les conteneurs
  • Fonctionnalités disponibles
    • Prise en charge de certaines syntaxes de Python, avec vérification statique des types basée sur les annotations de type
    • Aucun accès à l’hôte, et les appels à des fonctions externes sont limités à celles explicitement autorisées par le développeur
    • Appelable depuis Rust, Python et JavaScript, avec suivi et limitation de l’utilisation des ressources intégrés
    • Prise en charge de la capture de stdout/stderr, de l’exécution de code asynchrone et de la sauvegarde/restauration par snapshot
  • Limites
    • La bibliothèque standard se limite à sys, typing, asyncio, dataclasses (prévu) et json (prévu)
    • Les définitions de classes et l’instruction match ne sont pas encore prises en charge
    • Les bibliothèques tierces ne sont pas prises en charge
  • L’objectif de conception est unique : exécuter en toute sécurité le code écrit par des agents

Intégration à Pydantic AI

  • Monty alimente le Code Mode de Pydantic AI
    • Le LLM écrit du code Python au lieu d’effectuer des appels d’outils, et Monty l’exécute en toute sécurité
    • Dans l’exemple, des outils sous forme de fonctions comme get_weather et get_population sont définis, puis le LLM écrit le code qui les appelle

Comparaison avec les technologies alternatives

  • Monty a une complétude du langage limitée, mais se distingue par sa sécurité, sa vitesse et sa simplicité
    • Latence de démarrage de 0,06 ms, gratuit, installation simple, prise en charge des snapshots
  • Résumé de la comparaison avec d’autres technologies :
    • Docker : environnement CPython complet, sécurité correcte mais latence de démarrage de 195 ms
    • Pyodide : basé sur WASM, sécurité faible et latence de démarrage de 2800 ms
    • starlark-rust : langage très limité, rapide mais différent de Python
    • services de sandboxing : sécurité forte mais coût, latence et complexité de configuration élevés
    • YOLO Python(exec/subprocess) : rapide mais sans aucune sécurité
  • Grâce au contrôle d’accès aux fichiers, à la limitation des ressources et aux fonctions d’interruption/reprise basées sur les snapshots, Monty fournit un environnement Python sécurisé pour l’exécution de code IA

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.