• AI द्वारा जनरेट किए गए कोड को सुरक्षित रूप से चलाने के लिए डिज़ाइन किया गया Rust-आधारित हल्का Python interpreter, जो container sandbox की जटिलता और latency को हटाता है
  • filesystem, environment variables और network access को पूरी तरह ब्लॉक करता है, और केवल वही external functions कॉल की जा सकती हैं जिन्हें developer ने निर्दिष्ट किया हो
  • 1 microsecond से कम startup time और CPython जैसी execution performance देता है, तथा Rust·Python·JavaScript तीनों से कॉल किया जा सकता है
  • execution state को byte-level snapshot के रूप में save और restore किया जा सकता है, जिससे processes के बीच pause और resume संभव है
  • यह Pydantic AI की Code Mode सुविधा को चलाएगा, और LLM द्वारा लिखे गए Python code को सुरक्षित रूप से execute करने वाले मुख्य घटक के रूप में उपयोग होगा

Monty का अवलोकन

  • Monty Rust में लिखा गया एक experimental Python interpreter है, जो AI द्वारा जनरेट किए गए कोड को सुरक्षित रूप से चलाने के लिए बनाया गया टूल है
    • यह container-आधारित sandbox के cost, latency और complexity से बचता है, और LLM द्वारा लिखे गए Python code को सीधे चला सकता है
    • इसका startup time कुछ microseconds के स्तर पर है, जो सामान्य containers के सैकड़ों milliseconds से कहीं तेज़ है
  • समर्थित क्षमताएँ
    • Python code के कुछ syntax के execution का समर्थन, जिसमें type hints-आधारित static type checking शामिल है
    • host access पूरी तरह ब्लॉक, और external function calls केवल उन्हीं functions तक सीमित हैं जिन्हें developer ने स्पष्ट रूप से अनुमति दी हो
    • Rust·Python·JavaScript से कॉल किया जा सकता है, और resource usage tracking और limiting फीचर बिल्ट-इन हैं
    • stdout/stderr capture, asynchronous code execution, और snapshot save/restore का समर्थन
  • सीमाएँ
    • standard library में केवल sys, typing, asyncio, dataclasses(आगामी), json(आगामी) उपलब्ध हैं
    • class definitions और match statements का अभी समर्थन नहीं है
    • third-party libraries समर्थित नहीं हैं
  • इसका डिज़ाइन उद्देश्य केवल एक है: agent द्वारा लिखे गए कोड को सुरक्षित रूप से चलाना

Pydantic AI integration

  • Monty, Pydantic AI की Code Mode को चलाता है
    • LLM, tool calling की जगह Python code लिखता है, और Monty उसे सुरक्षित रूप से execute करता है
    • उदाहरण में get_weather, get_population जैसे functional tools परिभाषित किए जाते हैं, और LLM उन्हें कॉल करने वाला कोड लिखता है

वैकल्पिक तकनीकों से तुलना

  • Monty में language completeness सीमित है, लेकिन security, speed और simplicity में यह मजबूत है
    • startup latency 0.06ms, free, आसान installation, snapshot feature supported
  • अन्य तकनीकों के साथ तुलना का सार:
    • Docker: पूरा CPython environment, security अच्छी लेकिन startup latency 195ms
    • Pyodide: WASM-आधारित, security कमजोर और startup latency 2800ms
    • starlark-rust: बहुत सीमित language, तेज़ लेकिन Python से अलग
    • sandboxing services: security मजबूत लेकिन cost, latency और setup complexity अधिक
    • YOLO Python(exec/subprocess) : तेज़ लेकिन security बिल्कुल नहीं
  • Monty, file access control, resource limits, और snapshot-आधारित pause/resume फीचर्स के जरिए
    AI code execution के लिए सुरक्षित Python environment प्रदान करता है

अभी कोई टिप्पणी नहीं है.

अभी कोई टिप्पणी नहीं है.