6.1 KiB
6.1 KiB
R2.2.11 任务报告
范围与口径
- 只读复取 PK01 Sub2API 最近2小时所有分组,并以最近30分钟作为趋势对照。
- 请求分母、客户错误和上游错误以 Sub2API 原生 admin/ops 为主;system-log 缺失时才使用 target runtime 日志。
- 分组与账号数据在滚动窗口内持续变化,报告使用本轮最后一次完整分组快照;共享账号的 upstream cause 不跨组相加。
- 未发送探针,未修改 runtime、YAML、proxy、账号或调度配置。
所有分组概要
最近2小时初始总览:1391请求、37个客户错误,客户错误率2.66%;74个上游错误,上游错误率5.32%。滚动窗口下钻时请求数增长到约1403,但客户错误总数仍为37。
unidesk-codex-pool:约763请求、26客户错误,错误率3.41%;上游错误率约7.86%。自用:约640请求、11客户错误,错误率1.72%;上游错误率约2.19%。grok:0请求、0错误。- 两个活跃组均无排队,查询时并发约9至10/218;没有证据把主因归为容量不足或需要降低并发。
- 账号29
https://api.lwylink.xyz pro 0.1与账号30https://api.lwylink.xyz plus 0.05因余额不足403不可用;其余7个OpenAI账号当前可用。
最近30分钟对照:412请求、19客户错误,错误率4.61%;27个上游错误,上游错误率6.55%。其中:
unidesk-codex-pool:251请求、17客户错误,错误率6.77%。自用:160请求、2客户错误,错误率1.25%。- 错误没有整体消退,而是更集中到
unidesk-codex-pool。
主因一:账号27的Responses兼容性400
账号27 https://sub.yjxm1221.top plus 0.025 是当前客户错误主因:
- 2小时:139次尝试、91成功、48失败,失败率34.53%,评分38/E;26个分组客户错误中占24个。
- 最近30分钟:48次尝试、30成功、18失败,失败率37.50%;17个客户错误全部来自账号27且全部是400。
- 2小时客户错误状态分布中400有21个,另有404、503、524;模型以
gpt-5.6-terra、gpt-5.6-luna、gpt-5.6-sol为主。 - 代表请求
1f3fe800-a72a-4383-88ba-e7311abb8534在630 ms内失败,原文为Input must be a list。 - 代表请求
ee991d2f-08fe-4251-a509-c3d1a4bd8e45先经历账号33的524和账号28的503,切到账号27后返回Invalid 'input[213].id',最终502。 - 另有
invalid_id_prefix类流式response.failed。这些更符合该上游对Responses长历史/input item格式的兼容缺陷,不是并发、网络或普通5xx不稳定。 - 通用400不能直接加入临时不可调度或failover,否则会把真实客户参数错误错误切号;若后续治理,应只针对已证实的精确兼容错误短语和未提交响应阶段处理。
主因二:长等待后504,切号已无时间窗
自用组11个客户错误全部是 gpt-5.6-sol:8个504、2个503、1个524,10个为流式。
lyon98012小时109次尝试、100成功、9失败,失败率8.26%,评分75.2/C;8个客户错误,8次failover全部失败。- 请求
02f0cc91-6f7f-4106-b902-49ee5260ed57等待约29分31秒后才收到账号15的504;1 ms后选号因context canceled失败。 - 最近30分钟
lyon9801已恢复为34/34成功、TTFT P95约7.8秒;窗口内2个客户错误均来自账号27,不是账号15。 - 当前 OpenAI response-header timeout 为disabled。长等待是客户影响放大器,但现有数据只有端到端耗时,不能断言全部时间都在等待响应头,也不能直接把观测下限当配置值。
上游隔离与切号效果
- 账号28
https://ai.whistlelads.com plus 0.03:2小时24次尝试全部触发失败,但有26次临时不可调度事件,分组客户错误为0;大量错误被换号吸收。最近30分钟7次失败中5次切号恢复、2次失败。 - 账号31
https://sub2.pokexiao.com plus 0.03:2小时215次尝试仅1次失败,评分93.1/A;最近30分钟126次中124成功,2次failover均恢复。 - 账号33
https://api.iceiu.com plus 0.03:2小时约3.6%失败,评分B;最近30分钟失败率升到14.55%,并有6次HTTP 200后forward failure,需要关注。 - 成功切号样本
4d305f0f-3e4f-4e0d-86d1-060a03820d22:账号32返回524、账号28返回503,约14秒后由账号27完成并最终HTTP 200,证明5xx failover链路能工作。
HTTP 200后的客户体验错误
unidesk-codex-pool2小时有12个、最近30分钟有6个forwardFailureWithHttpSuccess。自用2小时有3个、最近30分钟有1个同类事件。- 请求
e41f8745-e223-4fbf-9fb8-041a40c8ad94最终HTTP 200,但约417秒后出现stream data interval timeout,trace正确标记为degraded。 - 这类请求不会进入普通HTTP客户错误分子,因此37个客户错误不是全部体验损失;分组间存在共享账号证据,不能简单把所有forward failure相加成全局唯一请求数。
调优建议
- 优先治理账号27的精确Responses兼容错误族,而不是降低全池并发:先按错误短语、请求阶段和模型统计;候选方案是对已证实的
Input must be a list、Invalid input[*].id、invalid_id_prefix在响应未提交前触发failover或暂时避免把对应请求形态路由到该账号。是否需要Sub2API源码变更取决于现有精确classifier能否配置表达,不能用通用400规则替代。 - 研究上游超时与客户deadline的预算关系:目标是让504或无响应在客户context取消前暴露并留出切号时间。缺少客户deadline和response-header阶段耗时前,不直接给出安全timeout数值。
- 保留账号28现有短冷却策略;它已显著避免客户错误,不建议仅因上游失败率高而长期禁用。
- 对账号33继续短窗口观察,重点看HTTP 200后
response.failed/stream timeout;这类错误无法在响应已提交后安全换号。 - 账号29、30的余额不足属于静态不可用,应由账号所有者补充余额或退役;当前无排队,暂不构成容量事故。
- 不因2小时旧错误降权
lyon9801;最近30分钟已恢复。若再次出现长等待504,按request ID同步抓trace和基础设施快照。