Paired: GitHub #357 ↔ GitCode #189
来自 agent-solution 仓 smartresearch-alpha(agent-core-java 0.1.16 消费者,真 LLM e2e 实测背景)。
涉及分支:930(0.1.16 血统)。
标题:[Feature] OpenAiCompatibleModelClient 支持 per-call timeout 配置,消费者不再需要装饰器补口
背景(agent-solution 仓 smartresearch-alpha 实测,agent-core-java 0.1.16)
ReActAgent.callModel 固定传 callTimeout = null;
OpenAiCompatibleModelClient.applyCallTimeout(call, null) 直接返回、不设 okhttp per-call 超时 ⇒ 单次模型调用无总时长上界;
ModelClientConfig.timeout 只进 read/write 超时(connect 另封 10s),不覆盖整次调用;
- 0.1.15 曾有
DEFAULT_CALL_TIMEOUT_SECONDS = 180f 回落,0.1.16 删除——相邻版本行为不同,消费者不易察觉。
现状代价
smartresearch-alpha 被迫自造 CallTimeoutModel 装饰器(null → 1200s)把「无上界」变显式上界,且必须经 delegate.invoke 虚分发(super.invoke 直连会绕过链上其他装饰器,例如工具调用执法层的参数注入)。装饰器存在的唯一意义是补一个配置口。
请求
ModelClientConfig(或 ModelRequestConfig)暴露 per-call timeout 配置项,applyCallTimeout 消费之;默认行为二选一(维持 0.1.16 现状,或回落 0.1.15 语义——请维护方定,但请写进文档)。落地后消费者可删除装饰器整类。
开源先例
langgraph(TimeoutPolicy:run_timeout / idle_timeout 原生配置)、OpenAI codex(codex-rs 的 stream_idle_timeout_ms 等原生旋钮)、openclaw(turn 级超时原生配置)——主流 agent 框架均原生暴露 per-call / 节点超时配置,未见过「靠给客户端套装饰器注入超时」的形态。
(关联 #188:本 issue 为其夹逼公式 min(per-call, remaining) 提供前置配置口;两者可独立评审、独立落地。)
Paired: GitHub #357 ↔ GitCode #189
标题:
[Feature] OpenAiCompatibleModelClient 支持 per-call timeout 配置,消费者不再需要装饰器补口背景(agent-solution 仓 smartresearch-alpha 实测,agent-core-java 0.1.16)
ReActAgent.callModel固定传callTimeout = null;OpenAiCompatibleModelClient.applyCallTimeout(call, null)直接返回、不设 okhttp per-call 超时 ⇒ 单次模型调用无总时长上界;ModelClientConfig.timeout只进 read/write 超时(connect 另封 10s),不覆盖整次调用;DEFAULT_CALL_TIMEOUT_SECONDS = 180f回落,0.1.16 删除——相邻版本行为不同,消费者不易察觉。现状代价
smartresearch-alpha 被迫自造
CallTimeoutModel装饰器(null → 1200s)把「无上界」变显式上界,且必须经delegate.invoke虚分发(super.invoke直连会绕过链上其他装饰器,例如工具调用执法层的参数注入)。装饰器存在的唯一意义是补一个配置口。请求
ModelClientConfig(或ModelRequestConfig)暴露 per-call timeout 配置项,applyCallTimeout消费之;默认行为二选一(维持 0.1.16 现状,或回落 0.1.15 语义——请维护方定,但请写进文档)。落地后消费者可删除装饰器整类。开源先例
langgraph(TimeoutPolicy:run_timeout / idle_timeout 原生配置)、OpenAI codex(codex-rs 的
stream_idle_timeout_ms等原生旋钮)、openclaw(turn 级超时原生配置)——主流 agent 框架均原生暴露 per-call / 节点超时配置,未见过「靠给客户端套装饰器注入超时」的形态。(关联 #188:本 issue 为其夹逼公式 min(per-call, remaining) 提供前置配置口;两者可独立评审、独立落地。)