Python Code Executor 是一个在安全沙箱环境中执行 Python 代码的能力,底层通过 inference.sh 运行,使用前需要安装其 CLI 工具(belt)。安装命令为:npx skills add belt-sh/cli,随后执行 belt login 完成登录。
用途
该能力用于在隔离环境中运行 Python 脚本,避免本地依赖冲突或安全风险。它适合需要快速执行代码、处理数据、生成文件或调用外部 API 的场景。
主要能力
环境为 Python 3.10、仅 CPU。默认提供 8GB 内存,可通过 high_memory 变体使用 16GB 内存。超时时间可在 1 到 300 秒之间设置,默认 30 秒。预装了 100 多个库,按类别包括:
- 网络与抓取:requests、httpx、aiohttp、beautifulsoup4、lxml、selenium、playwright、scrapy
- 数据处理:numpy、pandas、scipy、matplotlib、seaborn、plotly
- 图像处理:pillow、opencv-python-headless、scikit-image、imageio
- 视频与音频:moviepy、av(PyAV)、ffmpeg-python、pydub
- 3D 处理:trimesh、open3d、numpy-stl、meshio、pyvista
- 文档与图形:svgwrite、cairosvg、reportlab、pypdf2
使用方式
通过 belt CLI 运行,基本命令如下: belt app run infsh/python-executor --input '{"code": "print('Hello World!')"}' 输入采用 JSON 格式,字段包括:code(要执行的代码字符串)、timeout(超时秒数)、capture_output(是否捕获输出)、working_dir(工作目录,可为 null)。 保存到 outputs/ 目录的文件会自动作为返回值返回,例如图片、CSV、视频、3D 模型等。使用高内存变体时,在应用 ID 后加上 @high_memory。
适用场景
网页抓取、数据分析与可视化、图像处理(缩放、裁剪、合成)、视频生成(文字叠加等)、3D 模型加载与导出、API 调用、PDF 报告生成,以及运行任意 Python 脚本实现自动化。
限制
仅支持 CPU,不包含 GPU 或机器学习库(如需 AI 图像、视频、文本生成,应使用对应的专用应用)。执行在隔离子进程中进行,属于非交互式环境,绘图需使用 plt.savefig() 而非 plt.show()。输出文件会被自动检测并返回。