跳过主要内容
广告OpenFree logo推广你的产品触达更多潜在用户,助力产品增长与收益提升。投放广告
Favicon of Monty

Monty

Free 等级项目

Monty 是用 Rust 编写的轻量安全 Python 沙箱,用于运行 AI 生成的代码,旨在避免容器化沙箱的延迟、复杂性和成本。

访问 pydantic/monty

项目简介

Monty 是用 Rust 编写的轻量安全 Python 沙箱,用于运行 AI 生成的代码,旨在避免基于容器的沙箱在延迟、复杂性和成本上的开销。它有两种形态:OSS Monty 是以软件包形式安装的 MIT 许可 Python 3.14 沙箱;Full Monty 是商业服务器,通过 gRPC 流以服务形式运行同一沙箱。

核心功能

  • 低延迟沙箱:从运行中的沙箱池获取新的 OSS Monty 沙箱耗时低于 1 毫秒,Full Monty 约为 2 毫秒,而沙箱服务约为 1500 毫秒。
  • 沙箱内不存在文件系统、环境变量和网络;只能通过传入的函数和挂载访问宿主。
  • 宿主函数和外部查找让沙箱代码调用宿主提供的工具,同时只看到其返回值。
  • 快照可将整个沙箱状态在外部函数调用时或 REPL 片段结束时转储为字节,支持挂起与恢复。
  • VM 强制执行最大内存和执行时间等严格资源限制,因此像 'x' * 10**12 这样的操作会在尝试分配前引发 MemoryError。
  • 提供 Python、JavaScript/TypeScript 和 Rust 包;商业版 Full Monty 通过 gRPC 以容器镜像运行相同工作进程,并增加操作系统级隔离和横向扩展。

适用场景

  • 安全运行 LLM 生成的 Python 程序,尤其适用于 agent 编写调用工具的短程序,而不是依次发起多个单独工具调用。
  • 在 Pydantic AI 中支撑 Code Mode,为生成的代码提供安全执行环境。
  • 通过从字节挂起和恢复沙箱状态,实现长时间运行的 REPL 会话和人工介入工作流。
  • 无需为每个沙箱新建 VM 或容器,以较低成本和复杂度扩展大量沙箱工作进程。

快速开始

  • Python:uv add pydantic-monty
  • JavaScript 或 TypeScript:npm install @pydantic/monty
  • Rust:cargo add monty
  • 后续步骤可参考 Python、JavaScript 或 Rust 快速入门。

部署与要求

  • OSS Monty 以 Python、JavaScript/TypeScript 或 Rust 软件包安装,并在调用它的应用程序本地执行环境中运行代码。
  • Full Monty 是商业服务器,通过 gRPC 流以服务形式在远程运行同一沙箱,并以容器镜像形式提供,适合需要操作系统级隔离和横向扩展的较大规模部署。

采用前须知

  • 许可证:MIT。在使用、修改或分发项目前,请确认其具体条款。

评论

登录 后发表评论。

更多类似 Monty 的项目

Favicon of Keploy

Keploy

Free 等级项目星标数: 18.8K

随处录制,随处回放。

沙箱与代码执行

Keploy 捕获真实应用流量并将其转化为可编辑测试和依赖模拟,让开发者可在本地、CI 或 Kubernetes 的隔离环境中回放并验证变更。

Favicon of SPACE

SPACE

Free 等级项目星标数: 0.9K

面向智能体代码执行的隔离沙箱平台

沙箱与代码执行

SPACE 是面向智能体代码执行的沙箱平台,可在隔离的 Firecracker 微虚拟机中运行智能体与用户代码,并通过 HTTP API 创建 Linux 环境、执行命令、收集输出和管理沙箱生命周期。