题目
如何通过步数、时间、费用和进展检查发现并终止无效循环?
答案
设置硬上限:最大模型轮次、工具次数、总时长、Token 和费用。运行时在每次调用前检查剩余预算,而不是等费用已经超出才发现。
再检查是否有实际进展,例如是否获得新证据、完成新子任务、修正了失败参数,或者使业务状态向目标推进。重复相同工具和参数、反复出现相同错误,都可以作为无进展信号。
不要仅凭重复次数终止所有循环。轮询一个正在处理的任务可能是正常行为,应结合操作类型、等待间隔和截止时间判断。
接近限制时可尝试一次调整方案、请求缺失信息或交付部分结果。终止时保存进度,并说明已完成什么、阻塞在哪里;不能让模型为了结束而编造成功。
