许多代理任务(例如财务计算和数据科学工作流)都需要代理生成和执行代码。借助 Agent Engine 代码执行功能,您的代理可以在安全、隔离且受管理的沙盒环境中运行代码。
代码执行功能包括:
沙盒可以在不到一秒的时间内创建并执行代码。
沙盒支持文件输入和输出,整个请求或响应的文件大小上限为 100 MB。
沙盒最多可将其执行状态(内存)保留 14 天。此存留时间 (TTL) 设置是可配置的。
代码执行是 Agent Engine 套件的一部分。不过,您无需将代理部署到 Agent Engine 即可使用代码执行功能。代理可以在任何位置运行,甚至在本地运行。
代码执行功能适用于任何代理框架和任何生成式模型。
以下是使用代码执行沙盒的主要操作:
创建沙盒:创建一个安全、隔离的空间来运行不受信任或可能有害的代码。这种隔离可防止代码触及系统的资源、文件或网络,从而降低安全风险。当您需要安全地运行代码时(例如对于数据科学代理、编排脚本或在开发测试期间),沙盒至关重要。沙盒提供有限的文件系统,且无法访问网络。
获取沙盒:显示特定代码执行沙盒的配置和状态。您可以查看详细信息,例如其当前状态(例如正在运行或已停止)和存留时间 (TTL)。这样一来,您就可以跟踪沙盒并在运行代码之前或之后验证其状态。
列出沙盒:列出项目中的所有代码执行沙盒。您可以按沙盒状态或类型等条件过滤结果。 这有助于检查、监控和管理项目中的多个沙盒。
执行代码:将您的代码以及任何必需的输入文件发送到沙盒以安全执行。响应包含结果,例如标准输出 (
stdout
)、标准错误 (stderr
) 以及代码生成的任何文件。沙盒还可以维护状态,从而使后续的Execute Code
调用能够基于之前的调用。对于需要环境在多次代码运行中保持状态的交互式会话或复杂任务,这一点至关重要。