github linguo2625469/workbuddy2api-panel v1.9.0
v1.9.0 — 用量与积分构成视图 + 模型实测上限标注 + max_body_mb 热生效

latest releases: v1.13.0, v1.12.0, v1.11.11...
one month ago

新增

用量视图 + 积分构成视图(PR #12 @zhouweirun)

  • 用量:按(小时|日 × 域 × 账号 × 模型)分桶记录逐请求 token 用量——总量卡片、时序图(原生 SVG 手绘,无构建依赖)、分账号 / 分模型 / 分域拆分;失败尝试计入请求数,重试放大看得见。数据落盘 data/usage.json(原子替换 + 30s 防抖),小时桶 90 天后折叠为日桶长期保留,重启不丢
  • 积分构成:把每个账号的余额摊开成逐包明细(面额 / 剩余 / 已用 / 发放 / 到期),跨账号对比卡按来源稳定配色(同色即同类)——「两个号任务完成度一样、积分差 1500」这类问题一眼可见(首登赠送与活动包同名同码,只有发放时间能区分)
  • 修复 cmd/credit 把国际版账号查到 CN 计费域恒 401 的 bug(余额查询 2/3 → 3/3)

模型实测输出上限标注(风险提示)

  • 上游声称的 max_output_tokens 普遍虚高:实测 16 个 CN 模型中 8 个被静默钳制(请求更大也不报错,输出到真实上限即截断),最深的声称 1M 实际 32K
  • 新增探测工具 scripts/probe_max_tokens.py:核心判据区分「finish=length 上游截断(可信)」与「finish=stop 模型主动收尾(不可作判据,自动强化提示重试)」;提示词目标值按档位量级缩放防提前收尾;并行 + 单模型时间预算控制成本。--panel-out 把结果写入 data/output_probes.json(合并语义,断点续测)
  • 面板「模型与档位」最大输出列叠加实测标注:钳制 → 红 32K ⚠ 钳制 12×;一致 / 更大 → 绿 48K ✓ / 64K ↑;满额未触顶 → 灰 ≥40K;探测超 30 天自动标注天数。实测值不写死在代码与配置里——上游调整后重跑一次工具、下次查询即刷新,网关零重启
  • 现有 /v1/* 与 /panel/api/models 接口零改动(新增只读端点 /panel/api/model_probes 透传探测文件)

修复

  • server.max_body_mb 面板保存后热生效(issue #17):此前面板能改能落盘,但运行值在启动时固化、静默不生效且不提示重启;现在保存即时生效。413 文案补充成因(多图会话历史图片每轮以 base64 重发,几张 MB 级截图叠两三轮即破 8MB)与解法;也澄清了该限制是网关自身默认值而非 WorkBuddy 上游限制
  • internal/usage 补齐单元测试(成败计数与 pt+ct 兜底口径 / Rollup 二次折叠幂等 / 落盘恢复往返 / 时序拼接 / Stop 最终落盘)

兼容性

  • 用量记录为纯新增:data/usage.json 不存在时视图为空,不影响任何现有功能
  • 探测数据文件不存在时,面板「模型与档位」行为与旧版完全一致
  • 老配置、老 auth 文件零改动
文件 说明
wb2api-panel-v1.9.0-windows-amd64.zip Windows amd64(wb2api.exe + config 示例 + README)

Don't miss a new workbuddy2api-panel release

NewReleases is sending notifications on new releases.