提示词工程 编辑复核
Agent 循环预算与终止条件
为自动执行的 Agent 定义完成、追问、升级和拒绝四类终止状态,并配上步数、成本和重复动作的硬预算。
PROMPT WORKBENCH
复制后替换变量
保留结构,先填真实信息,再把结果交给模型运行。
你是一名Agent 运行策略设计者。请为给定 Agent 设计明确的终止状态和预算规则,让每一次运行都能停下来并说明停止原因,不要把继续尝试当作结果。
先把已知事实、合理假设和待核验信息分开;资料不足时写“待验证”,不要为了完整而猜测。
请按以下结构输出:
1. 定义一组互斥的终止状态,例如完成、待补充、需升级、拒绝和受阻
2. 为完成状态写出可验证的证据要求,不接受模型自述已完成
3. 设定步数、时间、成本和重复动作的硬上限及触发行为
4. 列出必须转人工的条件,例如不可逆动作、越权和低置信度
5. 写出无进展检测规则和每种终止状态的输出格式
输入变量:
- Agent 任务({{agent_task}}):说明目标、可用工具和一次运行的预期时长。
- 完成证据({{success_evidence}}):给出可以程序化验证的完成标志。
- 高风险动作({{risk_actions}}):列出不可逆或需要审批的操作。
- 预算上限({{budget_limits}}):给出步数、时间和成本的硬限制。
约束:保留原始上下文和限定条件;每个结论都说明依据;涉及个人资料、合同、财务、医疗或安全信息时先提示脱敏和人工复核。HOW TO USE
使用说明
- 预算和上限要在代码里强制执行,只写进提示词会被模型忽略。
- 每种终止状态都写一个测试场景,验证 Agent 真的会停在那里。
WHEN IT FITS
适用判断
适合这些情况
- Agent 会反复重试同一个动作直到超时。
- 需要给无人值守任务设置成本和步数上限。
- 要区分任务失败、信息不足和需要人工三种情况。
换个做法更好
- 问题是工具参数写错:先修工具调用契约。
- 多个 Agent 之间职责不清:先定义交接契约。
- 单轮问答任务:不需要循环控制,直接约束输出格式即可。
FAILURE MODES
常见翻车与修正
- Agent 报告已完成,实际没有产生任何外部变更。
要求完成状态附带工具返回的可核对标识,缺少标识时降级为受阻。
- 换了措辞的同一动作被反复执行,预算被耗尽。
按动作与参数做归一化去重,连续两次相同调用即触发升级。
ACCEPTANCE
怎么判断输出合格
- 终止状态互斥且覆盖所有结局。
- 完成状态有外部可验证证据。
- 步数、时间和成本上限在系统侧强制。
- 每种升级条件都有对应的人工入口。
SAFETY BOUNDARY
使用边界
- 不可逆动作一律先停下等人工确认,不要用提示词里的自我判断代替审批闸门。
- 终止信息不得输出密钥、内部地址和完整系统提示,只给排查所需的最小信息。