更新时间:2026-08-03 GMT+08:00
分享

插件创建方法

在AgentArts中创建一个完整的自定义插件,需要依次完成插件和工具的创建。其中插件负责定义连接目标与鉴权方式,工具负责定义具体的接口与参数,二者共同构成一个可被智能体调用的完整插件能力。

插件与工具是什么

在 AgentArts 中,插件和工具是“集合”与“个体”的关系:

  • 插件:是一个功能集合,定义了一组工具共用的基础属性,包括服务域名、基准路径和鉴权方式。可以把它理解为“连接到某个外部服务的通道”。
  • 工具:是插件内具体的执行单元,每个工具对应一个独立的API接口,负责完成一项具体的单一任务。智能体在实际运行时,调用的是工具,而不是插件本身。

平台要求同一插件下的工具需具备同类功能,判断标准是:这些工具是否服务于同一业务域。

表1中,https://{endpoint}/v2/{project_id}/ocr是所有接口的根基,它定义了插件的连接目标(由服务域名+基准URL构成);/general-text这类后缀是各工具独有的“路径”,它区分了插件内的不同能力。

表1 文字识别插件示例

插件名称

工具名称

API接口地址

文字识别插件

通用文字识别

https://{endpoint}/v2/{project_id}/ocr/general-text

通用表格识别

https://{endpoint}/v2/{project_id}/ocr/general-table

手写文字识别

https://{endpoint}/v2/{project_id}/ocr/handwriting

正确示例:

文字识别插件(公共部分:https://{endpoint}/v2/{project_id}/ocr)
├── 工具1:通用文字识别   →  /general-text
├── 工具2:通用表格识别   →  /general-table
└── 工具3:手写文字识别   →  /handwriting

错误示例:

将不同功能的工具混在一起,三个工具功能完全不同,不应放在同一插件下,会造成大模型在匹配插件能力时产生混淆。

插件中工具混乱
├── 工具1:天气查询   →  weather.api.com
├── 工具2:文字识别   →  ocr.myhuaweicloud.com
└── 工具3:发送邮件   →  mail.api.com

插件URL与工具path的拆分

确定了插件包含哪些工具之后,下一步要规划插件URL与工具path的拆分方式。这本质上是“公共路径放哪里”的问题。

拆分原则:将所有工具共享的公共路径放入插件URL,将各工具独有的路径放入工具path。

以文字识别为例:

完整 API 地址:
https://ocr.cn-southwest-2.myhuaweicloud.com/v2/{project_id}/ocr/general-text

正确拆分方式:
插件 URL  = https://ocr.cn-southwest-2.myhuaweicloud.com/v2/{project_id}/ocr
工具 path = /general-text

错误拆分方式:
插件 URL  = https://ocr.cn-southwest-2.myhuaweicloud.com
工具 path = /v2/{project_id}/ocr/general-text

两种方式都能调通,但正确拆分的优势在于:公共路径只需在插件层维护一次,每个工具的path保持简洁。当插件下有多个工具时,若服务域名或公共路径发生变化,只需修改插件层一处,无需逐个修改所有工具。

关于路径变量(如 {project_id}):

API路径中的变量如果是一个固定值,在配置插件时可以设置为固定值;如果是动态变化的变量,需要通过平台的“添加变量”功能在插件URL中声明,不能将变量写死为固定值。

图1 配置路径变量

相关文档