新增
用量视图 + 积分构成视图(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) |