已开启
[Feature]: agent_core 主循环运行预算与进度跟踪(轮次+时间双维度) #172
chenxiying创建于 20 天前
20 天前 添加了label:feature, sig/sig-agent-core-java
openJiuwen-bot
20 天前 评论:
20 天前 评论:
欢迎来到 openJiuwen 社区
Hey @weixin_45837958 , 感谢你对社区的贡献.
机器人使用手册
有关指令的使用,可以点击 此处 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。
联系指引
有疑问可以联系 SIG: sig-agent-core-java ,
维护者是: @shenwei21, @tianmingyong ,
审核者是: @foreach1991, @gcw_xJSJ32Ge, @jeffrey_qiao, @kangquansheng_makeIT, @xiongjie_makeit .


20 天前 修改了issue 的描述
20 天前 issue类型由 Experience-Feedback 改变为 Feature
20 天前 将 weixin_45837958 设为负责人
20 天前 issue状态由 TODO 改变为 BACKLOG
20 天前 关联了里程碑:agent-core-java v0.1.17
19 天前 关联了里程碑:agnet-core-java-v0.1.14
19 天前 关联了里程碑:agent-core-java v0.1.17
17 天前 修改了issue 的描述
17 天前 修改了issue 的描述
xiaoming
5 天前 评论:
5 天前 评论:
补充建议:本 issue 的“主循环弹性轮次预算”应吸收原 #190 的“单次运行墙钟总预算”需求,形成轮次与时间双预算。#190 不再作为独立 feature 继续推进。
建议在本 issue 的设计思路中增加以下约束:
- 为每次 ReActAgent invoke 建立独立的可选墙钟总预算和 deadline。预算状态不得存放在不同会话共享的 agent 实例状态中;未配置时间预算时保持现有行为,重复调用和并发会话互不串扰。
- 每轮以及模型调用、重试等待、流式响应读取和工具派发前重新计算 remaining。单次操作使用其已有阶段超时与 remaining 中的较小值;模型阶段超时语义与 #171 的连接、响应头、数据段空闲分层保持一致。重试、空流重试和非流式降级不得重新获得完整运行预算。
- 增加临近时间截止提示,与现有停滞提示分开计数并各自最多触发一次。时间提示用于给模型一次利用已有信息收尾的机会,不能永久污染后续会话。
- 时间预算耗尽后不再启动新迭代或工具调用,输出可识别的终止原因;同步和流式调用都要定义结果、上下文保存及工具尽力取消语义。无法响应取消的工具不得被承诺为可强制终止。
- 轮次绝对上限、时间 deadline、rail forceFinish 和模型/工具中断共同生效,任一更早满足的终止条件都应生效;自动延长轮次不得突破时间 deadline。
测试计划建议补充:固定墙钟预算下验证模型调用、重试等待、流式读取和工具执行均受 remaining 夹逼;验证临近截止提示只触发一次、到期后不再派发新工作;覆盖同步/流式、工具中断恢复、重复调用和并发会话;验证未配置时间预算时既有轮次行为逐字节兼容。


5 天前 修改标题为 “[Feature]: agent_core 主循环运行预算与进度跟踪(轮次+时间双维度)”,原标题为“[Feature]: agent_core 主循环弹性轮次预算与进度跟踪”
5 天前 修改标题为 “[Feature]: agent_core 主循环运行预算与进度跟踪(轮次+时间双维度)”,原标题为“[Feature]: agent_core 主循环弹性轮次预算与进度跟踪”
5 天前 修改了issue 的描述
5 天前 修改了issue 的描述
Paired: GitHub #311 ↔ GitCode #172
🚀 背景描述
要做什么:为 core 主循环新建运行预算机制,轮次与时间两个维度。两个维度同构(预算+临近收尾提示+到期终止+未配置零变化),合并为一个预算框架承接;时间维度需求来自 #190,经评审决定并入本特性。
当前现状(各分支均存在,非特定版本问题):
针对上述痛点引入:轮次维"保底轮次可配、有进展自动加时、停滞只提示、安全阀兜底";时间维"总预算可选、临近截止收尾、到期可识别终止"。
设计思路
按"痛点 → 机制"设计,两个维度共享同一预算框架(预算状态随单次执行隔离、提示同通道、终止同路径、事件同族):
划层与并存规则:
涉及到的对外API
新增 YAML 配置项,只增量演进,不改既有轮数配置项的名称、默认值与语义:建议轮数(保底)、硬上限、检查点节奏参数、总时间预算、临近截止阈值。
干预通道复用既有对话引导消息注入,不发明旁路通道。单次模型请求的时限收紧经单次调用超时参数(超时分层 #171)接线,本特性消费该通道。
预算与进度事件对外可见:轮次维(保底生效/检查点评估/延长/停滞提示/安全阀触发与终止)与时间维(总预算生效/临近提示/到期终止含原因)均以事件或轨迹字段产出,供轨迹与监控消费。
测试设计与测试计划