跳转到主要内容
在智能体上设置停止条件,让运行按你的预算结束,而不是由模型决定。第一个满足的条件会把它的原因记录为运行的停止原因,并以 stopped 状态返回运行。另外,步数上限会限制每次运行或继续调用中的模型轮次。Rust 只有步数上限。

组合内置上限

token 和费用上限取决于提供商报告的用量,所以也要保留步数或时长上限。

可用的辅助函数

在 C#、PHP(AgentSdk::)和 Java 中,辅助函数位于 AgentSdk 上;在 Ruby 中位于 PhaseoAgentSdk 上;在 TypeScript、Python 和 Go 中是包级函数。时长参数有所不同:

何时检查条件

各语言检查条件的时机不同,对步数上限的处理方式也不同:
Python 的停止条件不会提前结束工具循环。请用 max_steps 限制工具循环。传给 run() 的 stop_when 会被忽略;请在定义上设置它。

读取运行停止的原因

已停止的运行是正常返回,而不是错误。检查运行状态是否为 stopped,读取它的停止原因,再读取用量和最后一步。由你的应用决定哪些原因算作成功、可以重试,或值得展示给用户。

编写自定义条件

自定义条件接收运行的状态,返回停止的原因,或者返回一个表示“否”的值以继续运行。当运维人员或你的界面需要解释运行为何结束时,就返回一个原因字符串;它会被保存为停止原因。
最后修改于 2026年11月5日