SuperAPI AI 工具集

code-execution

编程与开发

查看项目

更新于 10-15 23:49

技能介绍

用途:Code Execution 工具在 Anthropic 托管的沙箱中运行 Python,作为模型响应的一部分。适合需要模型真正计算而非仅描述的场景,如数据分析与转换(CSV、JSON、parquet)、图表绘制(matplotlib、plotly)、数学验证、运行模型刚写的单元测试,以及任何“答案取决于代码输出”的任务。

主要能力:沙箱内为 Python 3.12+,预装 pandas、numpy、matplotlib、scipy、scikit-learn、pillow、requests、beautifulsoup4 等;文件系统为临时性,默认无网络访问,CPU 与内存有限,不适合训练模型。执行在服务端完成,无需自行管理工具调用循环。

使用方式:在请求中启用工具,例如 tools: [{ type: "code_execution_20250522", name: "code_execution" }],并附带请求头 anthropic-beta: code-execution-2025-05-22。上传文件用 Files API,文件在沙箱内位于 /mnt/user-data/。读取结果时遍历响应内容中的 code_execution_tool_result 块,检查 stdout、stderr 与 return_code,生成的文件通过 file_id 经 Files API 下载。多轮分析可传入 container ID 复用沙箱,使 pip 安装、写入文件与变量得以保留;容器在闲置后自动过期。matplotlib 图可保存为图片文件并返回 file_id。可搭配扩展思考,让模型先规划再编码。

限制:新容器不保留已安装包,需在开头 pip install;默认无不受限网络,外部数据需预先获取;容器过期后文件系统清空;每次调用执行时间有限(通常 60-120 秒);不适合长时间训练或网页抓取。安全上沙箱隔离,但模型可能把上传数据写入日志或把消息中的密钥打印到 stdout,持久化前应清理输出。

最佳实践:仅在分析、数学、测试、绘图时启用;多轮分析使用容器持久化;复杂分析搭配扩展思考;始终检查 return_code;通过 Files API 获取生成的图;限制上传文件大小,大数据先在客户端采样。