创建沙箱工具
创建沙箱工具允许用户在安全的环境中测试和验证智能体的功能,确保在实际部署前能够发现和解决问题。当前仅支持创建代码解释器。代码解释器能够理解并解释代码的逻辑,帮助用户(特别是初学者)更好地理解代码的运行机制和功能。
创建沙箱工具有两种方式:
前提条件
- (可选)已创建委托,具体请参考创建委托。
- 如需通过私有网络VPC访问工具,请确保已开通虚拟私有云,并已创建私有网络、子网、安全组。详细操作请参见创建虚拟私有云和子网、创建安全组。
操作步骤
- 登录AgentArts智能体开发平台。
- 在左侧导航栏选择“开发中心 > 组件库 ”,单击“沙箱工具”页签,进入沙箱工具界面。
- 单击右上角“创建代码解释器”。
- 在“创建代码解释器”的弹框中,输入相关配置信息,参数说明请参考表1。
表1 参数说明 参数
说明
基本信息
名称
工具的名称,同一账号下沙箱工具名称不可重复,创建后不支持修改。
命名规则:
- 以字母开头,字母或数字结尾。
- 名称中需包含数字、字母、中划线。
- 最大长度为48个字符。
描述
用于对工具内容和用途的简要说明。
命名规则:长度不大于4096个字符。
权限与访问控制
委托
授予的代理权限或代理功能,允许代表智能体与外部系统进行通信和交互。
选择IAM中已创建的委托,如未创建,请单击“创建委托”,具体请参考创建委托。
API Key名称
系统默认选择为“API Key认证”,API Key是用于身份验证和授权访问的唯一标识符。
系统会自动生成API Key的名称,可根据需求自定义修改。
可观测配置
日志记录
- 未开启,工具运行过程产生的日志无法上报至云日志服务。
- 开启后,工具运行过程产生的日志会上报云日志服务(LTS)。
高级配置
出网网络配置
- 公网访问:能够连接到外部的互联网,访问外部的资源和服务。
- 私网访问:能够连接到内部的私有网络,访问内部的资源和服务。
- 选择已配置的VPC,如未配置,请单击“新建VPC”,具体请参考创建虚拟私有云和子网。
- 选择已配置的子网,如未配置,请单击“新建子网”,具体请参考创建虚拟私有云和子网。
- 选择已配置的安全组,如未配置,请单击“新建安全组”,具体请参考创建安全组。
配置后可单击
刷新。
通过SDK创建代码解释器
代码解释器工具支持在代码沙箱中进行上传、下载和执行代码等操作。SDK提供create_code_interpreter接口用于创建代码解释器工具,通过SDK创建的代码解释器将在代码解释器列表中展示。
前提条件
- 拥有华为云AgentArts Tools的访问权限。
- 拥有创建和管理Tools资源所需的权限。
操作步骤
在Python文件中通过SDK创建代码解释器,相关参数说明以及配置示例如下:
- 方法名:create_code_interpreter
- 配置以下参数:
参数名
类型
描述
name
str
Required code_interpreter名称。
api_key_name
str
Required apiKey名称。
description
str
代码解释器的描述。Default:None
auth_type
str
认证方式。Default:None
execution_agency_name
str
为代码解释器提供访问云服务的权限的IAM委托名。Default:None
observability
Dict
可观测性配置(日志+指标)。Default:None
network_config
Dict
出站网络配置。Default:None
agent_gateway_id
str
Agent Gateway ID。Default: None
tags
List
标签列表。Default:None
- 返回值如下:
包含代码解释器信息的字典,包括:
- id (str): 代码解释器的ID。
- name (str): 代码解释器的名称。该名称在您的帐户中必须是唯一的。
- description (str): 代码解释器的描述,用于LLM上下文分析。
- created_at (str): 创建时间。
- updated_at (str): 更新时间。
- execution_agency_name(str): IAM委托名。
- agent_gateway_id (str): Agent Gateway ID。
- workload_identity (Dict): 认证信息。
- observability (Dict): 可观测性配置(日志+指标)。
- access_endpoint(str): 访问域名。
- tags(List): 标签列表。
- network_config(Dict): 出站网络配置。
from agentarts-sdk.tools import CodeInterpreter
demo_client = CodeInterpreter(region="your_region")
code_interpreter = demo_client.create_code_interpreter(
name="your_code_interperter_name",
api_key_name="your_api_key_name"
)
后续操作
创建成功后,您可以将工具集成到您的Agent代码中,使Agent能够调用隔离环境来完成代码运行、浏览器操作等复杂任务。详细操作请参见在智能体中集成工具。
更多操作
您还可以对已创建的代码解释器执行如下操作。
|
操作 |
说明 |
|---|---|
|
查看代码解释器 |
|
|
删除代码解释器 |
代码解释器删除后不可恢复,请谨慎操作。
|
|
复制代码解释器 |
支持用户基于已配置的工具快速创建新的工具。
|