Skip to content

配置超时、自动重试和备用模型 ​

连接 AI 助手

模型服务或工具偶尔超时、调用失败时,智能体开发服务平台(AgentWorks)可以按配置自动重试,减少手动重发请求。你可以分别限制一次模型或工具调用的耗时,也可以限制整次任务的耗时;模型调用重试时,还可以切换到备用模型。

设置模型和工具的单次超时与重试 ​

一次请求可能包含多次模型调用和工具调用。步骤级容错 按每次调用分别计算超时和重试次数,适合处理临时的连接或服务故障。新建模板默认启用模型调用和工具调用的步骤级容错:单次超时 1 小时,最多重试 3 次,每次间隔 3 秒。

注意

重试前确认工具能否重复执行

下单、发消息、扣款和修改业务数据等工具可能已经执行成功,只是结果没有及时返回。启用工具或任务重试前,请确认业务接口支持重复请求去重;不能安全重复执行时,关闭对应的自动重试,并在失败后检查业务系统中的实际结果。

  1. 打开目标智能体模板,选择 编辑。

  2. 在 容错配置 中开启 启用容错配置。

    关闭总开关会停用这里设置的任务重试、步骤重试和模型降级切换。总开关开启时,任务级和步骤级容错至少开启一项。

  3. 开启 步骤级容错,在 步骤类型 中选择 模型调用、工具调用,或同时选择两项。

    两种类型分别使用自己的超时和重试设置;至少选择一种类型。

  4. 为选中的类型设置 单次步骤超时。按服务正常响应时间留出余量,避免正常的慢调用也被中断。

    时长必须为正整数,最长 72 小时。页面可以选择秒、分钟或小时。

  5. 按需开启 步骤自动重试,填写次数和间隔。

    • 最大重试次数 (1-10):可填 1 到 10 的整数。
    • 重试间隔(秒,1-10):可填 1 到 10 秒的整数。
    • 只需要限制单次耗时、不希望自动重复调用时,保持自动重试关闭。
  6. 保存模板,将配置应用到测试实例,验证后再更新生产实例。

自动重试用于处理可恢复的调用失败。凭证错误、无权访问或业务参数不正确等问题,需要先修正相应设置,不能靠增加重试次数解决。

限制整次任务的耗时 ​

需要限制整次任务的执行时间时,可以设置 任务级容错。任务总超时约束整次执行,包括其中的调用和重试,任务重试不会重新计时;步骤超时只约束某一次模型或工具调用。任务级容错默认关闭。

例如,为查资料并整理结果的任务设置 10 分钟的总超时,为每次模型调用设置 1 分钟的单次步骤超时。

  1. 在智能体模板的 容错配置 中开启 任务级容错。

  2. 设置 任务总超时时间。

    时长必须为正整数,最长 168 小时。页面可以选择分钟或小时。达到总超时后,平台按超时失败结束任务,不再继续任务级重试。

  3. 需要在任务发生可恢复失败时继续尝试,才开启 任务自动重试。

    任务最大重试次数 (1-10) 和 任务重试间隔(秒,1-10) 均为 1 到 10 的整数。任务自动重试默认关闭;开启后的表单初始值为最多 3 次、间隔 3 秒。

  4. 保存模板,并按验证步骤检查超时和重试结果。

任务重试也可能重新调用工具。涉及业务写入时,同样需要检查工具重复执行的风险。

在模型调用失败时切换备用模型 ​

主模型暂时不可用时,可以在模型调用重试时按顺序切换备用模型;实际尝试受重试次数和超时限制,不一定会尝试列表中的每个模型。界面将这个功能称为 模型降级切换,也使用 Failover 这个名称。模型降级切换默认关闭,只有模型调用的步骤自动重试开启后才能启用。

备用模型共用当前智能体的模型凭证,包括 API Key 和服务地址。因此,选择前需要确认同一凭证确实可以调用这些模型。用另一份凭证获取到模型名称,不会让智能体改用那份凭证运行。

  1. 在 步骤级容错 中选择 模型调用,开启 步骤自动重试。

  2. 开启 模型降级切换。

  3. 添加至少一个备用模型。

    • 租户已启用非空备用池时,只能从池内选择。
    • 租户没有限制备用范围时,可以从当前凭证的模型列表选择,也可以选择托管凭证后通过 获取模型 查找模型名称。
  4. 在 Failover 备用模型与请求顺序 中核对顺序。使用英文逗号分隔,或通过上移、下移调整列表顺序。

  5. 保存模板,将配置应用到测试实例。使用固定输入验证备用模型的回答、工具调用能力和输出格式,再用于生产。

备用模型的效果和速度可能与主模型不同。需要严格输出格式或特定工具调用能力的任务,应逐个验证备用模型,而不只检查名称是否能选中。

为租户限定备用模型范围 ​

有相应凭证管理权限时,可以为租户设置统一的备用模型池。启用非空备用池后,智能体模板和实例中的备用模型只能从这个池选择;每个智能体仍使用自己的模型凭证。

  1. 打开 凭证管理 的 模型凭证,选择 Failover 配置。

  2. 开启 启用租户级 Failover 备用池。

  3. 选择一份托管模型凭证,通过 获取模型 选择可用模型。

    这份凭证用于获取和检查模型列表。实际运行时,备用模型仍使用各智能体自己的模型凭证。

  4. 在 Failover 模型范围与请求顺序 中核对模型名称和顺序,选择 测试并保存。

    选择来源凭证并填写备用模型后,保存时会重新获取该凭证的模型列表。获取失败,或所填模型不在列表中时,保存会被阻止。修正凭证或模型名称后重新保存;模型名称通过检查后,仍需用实际请求验证。

  5. 回到需要切换模型的智能体模板,检查已选备用模型是否都在新范围内,再更新并测试相关实例。

关闭租户备用池后,开发者可以在智能体中自行配置备用模型。关闭备用池不代替关闭某个智能体的 模型降级切换。

允许实例使用不同的容错设置 ​

同一模板创建的实例可以使用不同的等待时间和重试策略,例如测试实例尽快报错,生产实例为临时故障多留一点恢复时间。默认使用模板设置;模板开放单独配置后,可以在创建或编辑实例时调整。

  1. 在智能体模板的 容错配置 中开启 开放给 Agent 实例单独配置,保存模板。

  2. 选择需要操作的入口。

    • 新建实例:从智能体模板详情选择 创建实例,在创建页直接设置。
    • 已有实例:打开目标智能体实例,选择 编辑。
  3. 在实例的 容错配置 中检查并调整任务级、模型调用和工具调用设置。

    实例是否启用容错由模板总开关决定,实例不能单独修改总开关。实例保存的是整份容错设置;即使只想改一个数值,也请核对其他项。

  4. 完成创建,或选择 保存修改,通过该实例的实际接入方式验证结果。

从智能体实例列表进入的新建页面不显示这份容错表单。通过该入口创建的实例先使用模板值;需要单独调整时,创建后再编辑实例。

未单独设置的实例使用模板值。已有实例保存过单独的容错设置后,更新模板时也要检查这些实例的值,不能只改模板就认为所有实例都使用了新策略。

应用到已有实例并验证 ​

为已有模板首次应用容错设置时,建议先编辑并保存模板,再编辑并保存目标实例。模板中显示了默认值,不表示已有运行配置已经更新;重启成功也不能代替实际调用验证。

  1. 编辑并保存来源智能体模板,确认超时、重试和备用模型设置符合预期。

  2. 按更新智能体模板并验证现有实例编辑并保存测试实例。如果模板允许单独配置,同时核对实例的整份容错设置。

  3. 使用一条正常请求,确认回复和工具结果没有受到非预期影响。

  4. 在非生产测试环境模拟一次临时失败或慢响应,检查是否按所选策略重试、切换模型或结束任务。

    网页版对话显示重试提示时,本次任务仍在继续;等待最终结果,或按需要停止任务。飞书、QQ 中的重试通知同样不是任务完成通知。

  5. 查看实例的 Trace 和业务系统记录,确认最终结果、实际调用及有无重复写入。

  6. 保留测试输入和预期结果,验证通过后逐个更新生产实例。

任务失败或取消后,已经完成的业务操作不会因此自动撤销。需要重新发起请求时,检查已产生的结果,避免重复提交。