必须通过max_tool_rounds参数限制工具调用轮数,取值1~5,仅在配置tools且tool_choice非none时生效;Python SDK、CLI及Hi Agent控制台均支持设置,超限将终止调用并输出答案。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在火山引擎方舟平台调用大模型API时,若不控制单次请求的工具调用轮数,模型可能陷入无限循环调用Search/Fetch等工具,导致超时、计费激增或返回中断。必须通过明确参数限制工具调用深度。
在方舟平台API请求体中设置max_tool_rounds
第一步:构造JSON请求体时,在顶层参数中添加max_tool_rounds字段。
第二步:赋值为整数,取值范围为1~5;设为1表示禁止任何工具调用,仅允许模型直接生成答案;设为3表示最多执行3轮工具调用(即Call→Observation→Call→Observation→Call→Observation→Answer)。
第三步:该参数仅在启用Function Calling能力时生效,需同时配置tools数组且tool_choice不为none。若遗漏tools定义,【max_tool_rounds将被完全忽略】。
通过SDK设置工具调用轮数上限
方法一:Python SDK(volcengine-ark 2.4.0+)
调用client.chat.completions.create()时,传入max_tool_rounds=2参数即可,无需手动拼接JSON;该参数会自动注入请求体并覆盖服务端默认值。
方法二:CLI命令行工具(ark-cli v1.8.3+)
执行ark chat --model doubao-seed-2.0 --max-tool-rounds 4 -f prompt.txt,注意--max-tool-rounds必须为正整数,输入0或负数会导致请求被服务端拒绝并返回400错误。
在Hi Agent控制台中配置Agent的工具调用深度
进入Hi Agent控制台 → 选择目标Agent → 点击「编排配置」→ 找到「执行策略」区域 → 将「最大工具调用轮数」滑块拖至所需数值(默认为3,可选1/2/3/4/5)→ 点击「保存并发布」。
此配置仅影响通过Hi Agent网关发起的请求,对直连方舟API的调用无约束力。发布后新会话立即生效,已有运行中的会话不受影响。
若Agent流程中包含多个工具节点,该数值限制的是整个决策链路中的总调用轮次,不是单个工具的调用次数。例如:第一轮调用Search,第二轮调用Fetch,第三轮调用Database Query,已达上限,模型必须终止工具调用并输出最终响应。











