SuperAPI AI 工具集

architect-create-client-tool

智能体与模型

查看项目

更新于 10-15 21:37

技能介绍

用途:客户端工具在调用方的浏览器或应用中运行,而非 ElevenLabs 服务器。智能体通过事件流发出调用,由客户自己的代码执行,区别于由 ElevenLabs 调用 HTTP 端点的 webhook 工具。所有 API 调用使用 xi-api-key: $API_KEY 访问 https://api.elevenlabs.io。

主要能力与用法:先读取当前状态,GET /v1/convai/agents/$AGENT_ID?branch_id=$BRANCH_ID 确认智能体、其 LLM 及是否为工作流智能体(工作流按节点通过 additional_tool_ids 限定工具范围),并 GET /v1/convai/tools 避免重复创建或复用已有客户端工具。随后 POST /v1/convai/tools 创建工具,配置按客户端类型区分。关键字段:name 为稳定的 snake_case 标识,须与客户端代码监听的一致;description 供 LLM 判断何时调用,需具体;parameters 是参数对象数组(非 JSON-Schema 对象),每项含 id、裸字符串 type、description、value_type、dynamic_variable、constant_value、required,且必须恰好填充一个取值来源;无输入时传 parameters: []。expects_response 决定智能体是否暂停等待客户端返回结果,纯副作用工具应设为 false,否则会等到超时。execution_mode 可选 immediate 或 post_tool_speech。

客户端事件契约:调用时客户端收到 ClientToolCall 事件,含 tool_call_id、tool_name、parameters;若 expects_response 为 true,客户端必须在 response_timeout_secs 内回传相同 tool_call_id 的 ClientToolResult 字符串结果,否则超时。

附加与验证:通过 PATCH /v1/convai/agents/$AGENT_ID?branch_id=$BRANCH_ID 附加,单节点智能体加入 tool_ids,工作流智能体保持基础 tool_ids: [] 并加入对应节点的 additional_tool_ids;在提示词中说明调用时机与失败处理。创建后重新 GET 确认工具存在并限定到目标节点。

限制:expects_response 为 true 但客户端无处理器会导致每次调用超时,属客户端代码缺口;常见错误包括 schema_mismatch(参数取值来源或类型问题)、validation(必填缺失或 response_timeout_secs 超过 120)、not_found(id 错误)。