Skip to content

v1.5.6 修复 DS4 长思考链截断 + 保留 max 思考深度

Choose a tag to compare

@HengXin666 HengXin666 released this 15 Aug 13:42
· 5 commits to main since this release

🎯 参考 freebuff2api-wokers#8

症状:deepseek-v4-flash 思考链稍长即自动截断,再次继续仍断(cc / Pi 客户端均复现,mimo 正常)。评论指出:推理任务会触发上游返回不同 agent(code-reviewer / base3 / base2),部分 agent 带单次 output 限制

修复内容

1. 保留 reasoning_effort: max(不再降档)

  • 旧实现把 max 一律降为 high(注释误以为 Luna 上限);官方 efforts 表:flash=[low, high, max]、pro=[high, max]——max 是合法档位;
  • 实测保留 max 后思考深度 30K → 45K 字符(智力提升),且完整返回(finish=stop,不截断)——这正是「思维链模式核心 = 模型智力提升」所需要的。

2. agent 兜底回退 base3 孪生

  • 主 agent 被上游以 free_mode_invalid_agent_model(403)拒绝时,自动回退 base3-free-* 孪生(官方 free-agents.ts FREEBUFF_WEB_BASE3_AGENT_ID_BY_MODEL);
  • 应对「上游按用途/推理任务路由到不同 agent、部分带 output 限制」的场景;
  • -max 扩展上下文 root 为预置配额、普通免费账号 403,不选作默认。

3. 路由模式不受影响:persona 替换(套件 applyPersona 语义)+ 首轮核心工具 + weak 近距引导 + flash 近距引导(用户指定文本)全部保留。

验证

  • 单元:normalizeReasoningFields max 保留断言 + agent_fallback mock(主 agent 403 → base3 成功)✓
  • 真实上游:effort=max + spec 路由 → reasoning=45K / 18K 字符,finish=stop 不截断 ✓
  • npm test / typecheck / compose / docker build 全绿 ✓
  • 本地代理已启动(127.0.0.1:28299,路由开 + spec + 免费模型分散 + 断连自愈)

🐳 镜像

ghcr.io/hengxin666/freebuff-proxy:1.5.6latest 同步),升级:docker compose pull && docker compose up -d(含远程部署)。