research: compare Jev intent state with the previous turn
Independent Staging Quality Gate / validate (push) Successful in 12m0s
Independent Staging Quality Gate / publish (push) Successful in 3m35s

V0 on the existing 157 real rows matches the 09-19 cache. The staging extract has no case linkage, so V1/V2 are unmeasured and the verdict stays 缺数据.
This commit is contained in:
jesse-ux
2026-09-27 11:41:53 +08:00
parent 710c848b30
commit e3bd3930e3
13 changed files with 100475 additions and 26 deletions
@@ -0,0 +1,45 @@
# 进度 · Jev 意图分类 v2:上一轮放进 state(2026-09-27)
- 分支:`codex/jev-intent-v2-20260927`
- 基线:`origin/staging` @ `710c848b`
- 任务书:`docs/tasks/TASK-rectification-jev-intent-classifier-research-v2-20260927.md`
- 报告:`docs/research/jev_intent_2026_09_27.md` / `.json`
- 结论:**缺数据**。有上一轮 0 条,V1/V2 没有数字,不能判过门。
## 已跑到的数
| 项 | 结果 |
| --- | --- |
| 来源 B | 157(点选 17 / 采集 107 / 无焦点 33)。gold 全部来自 09-19 文件,不是新标 |
| 有上一轮 / 无上一轮 | 0 / 157 |
| Jev V0 intent | 91.1%(自洽 96.2%,高置信错误 6.4%,低置信召回 24.1%) |
| Flash V0 intent | 89.2%(09-19 缓存,生产提示;Flash 没有置信度) |
| 无焦点 `unclear → answer_current_focus` | Jev V0 = 7,Flash V0 = 5 |
| 来源 C V0 相对 09-19 公布值 | 点选 0 pp,采集 +0.05 pp(公布值四舍五入到 92.2%),无焦点 0 pp |
V0 没有重打接口,state 与 09-19 相同,数字从 `jev_runs_v2.json` 重算。`--from-report` 只读报告 JSON 的 `rows`,来源 B intent 仍是 91.1%。
## 接口
- SDK:`typesafe-sdk 0.7.0`(09-19 进度里写的版本,未升级)
- 模型:响应字段 `model=jev-1.13.0`
- 连通性:合成样本 V0 1 次,1295 ms,1120 input tok;V2(多一个承接 Noul)1 次,971 ms,`continues_previous_turn=0.16`,规则阈值 0.9 未沿用上一轮。这两次不进计分,费用可忽略
- 来源 B / C 的 V1、V2、Flash+V1:0 次
## 代码
- `build_state(..., variant=)`:默认仍是四字段。V1 加 `previous_turn`,V2 再加 `previous_decision` 和承接 Noul。Choice 的 criteria 原文没改。
- `continues_previous_turn ≥ 0.9` 时沿用上一轮的 intent,并带上它的 answer_class,再走原来的 `enforce_combo`。低于 0.9 用本轮结果。
- 没有 `case_id` 的行不会被串成上一轮。
- 未改 `frontend/src/**`,未加部署环境变量。
## 测试
`python -m unittest tests.test_jev_intent_research`:15 passed。开工时文件里已有 12 条(任务书写的 11 条之外,fix2 已加报告 JSON 那条),本次新增 3 条:V1/V2 state 形状、承接规则、案件首轮 `previous_turn=null`。旧断言未改。
## 偏离
1. 重抽来源 B 被 staging 库挡住,见 `BLOCKED.md`。旧 157 条对不上 `turn_id`,因为交来的文件里没有这个字段。
2. 没有拿「上一轮 = null」去打满 V1/V2。那样测的是空字段,不是 Magpie 的喂法。
3. Flash V0 不可省,所以用了 09-19 的生产提示缓存,没有新的 Flash 调用。Flash+V1 按让步可以缺,这里确实缺。
4. 来源 C 没有上一轮,按任务书不跑 V1/V2。V0 用缓存重算,没有再花 900 次调用。
+1 -1
View File
@@ -295,7 +295,7 @@
| `TASK-rectification-cluster-width-research-20260914.md` | `PROGRESS-rectification-cluster-width-research-20260914.md` | **研究单**:上一轮证明调权重改不动交付区间宽度——所有方案宽度中位数都等于整个搜索窗。先确认 sweep 的宽度口径是否含淘汰(M0),再画簇结构像(M1),最后量三个改法:放宽簇上限、按分差决定是否合并、交付区间改分位覆盖(M2)。真值覆盖率不得下降 | 已验收(结论收入定论页 `docs/research/rectification_minute_resolution_closure_2026_09_14.md`,`a643452b`) | `cf972f40` |
| `TASK-rectification-jev-intent-classifier-research-20260919.md` | `PROGRESS-rectification-jev-intent-classifier-research-20260919.md` | **研究单**:TypeSafe Jev(只做 Choice/Score/Noul 的校准判断模型,$0.042/Mtok)能否接管校正流的意图分类。产品 09-19 授权评估(推翻 09-15「分类只用贵模型」需重新拍板)。Agent 模拟校正流造 ≥900 条中文语料(标签先定、独立复核)+ 真机样本做代表性锚,量准确率 / 高置信错误率 / 低置信召回 / 延迟;只离线测,不改线上 | **关单**(产品 2026-09-19 拍板):结论 **缺数据**,Jev 不接管、不影子双跑、不再造语料;09-15「分类只用贵模型」口径维持 | 真人 157 条:Jev intent 91.1% vs 线上 Flash 89.2%,无焦点层两边都差(78.8% / 69.7%,同一错模式);挡住上线的是 Jev 置信度不可用:高置信错误全集 6.4% / 无焦点 12.1% > 3%,低置信召回 24%。fix2 507ef959 已验收通过 |
| `TASK-rectification-jev-intent-classifier-research-v2-20260927.md` | `PROGRESS-rectification-jev-intent-classifier-research-v2-20260927.md` | **研究单 v2**:Magpie 把上一轮决策塞进 Jev state 后路由效果大改;核实 TypeSafe 仍只有 `jev-1.13.0`(与 09-19 同版本),变量只在喂法。产品 09-27 授权:重抽真人来源 B(带 `case_id` 与上一轮,推翻 09-19「不再造语料」),state 三变体 V0/V1(+上一轮)/V2(+上一轮决策+承接 Noul),门槛沿用 09-19 不放宽;不接管、不影子双跑维持 | **待执行**(任务书 2026-09-27 推 staging,产品自备 key) | 无焦点层 `unclear→answer_current_focus` 逐变体计数、有/无上一轮分组、Flash+V1 归因列;结论过门 / 未过门 / 缺数据 |
| `TASK-rectification-jev-intent-classifier-research-v2-20260927.md` | `PROGRESS-rectification-jev-intent-classifier-research-v2-20260927.md` | **研究单 v2**:Magpie 把上一轮决策塞进 Jev state 后路由效果大改;核实 TypeSafe 仍只有 `jev-1.13.0`(与 09-19 同版本),变量只在喂法。产品 09-27 授权:重抽真人来源 B(带 `case_id` 与上一轮,推翻 09-19「不再造语料」),state 三变体 V0/V1(+上一轮)/V2(+上一轮决策+承接 Noul),门槛沿用 09-19 不放宽;不接管、不影子双跑维持 | **待验收**(结论缺数据:有上一轮 0 条,V1/V2 与 Flash+V1 未跑) | 分支 `codex/jev-intent-v2-20260927`;V0 重算与 09-19 一致(真人 Jev 91.1% / Flash 89.2%,无焦点 unclear→答题 7);报告 `docs/research/jev_intent_2026_09_27.md` |
| `TASK-rectification-minute-resolution-research-20260914.md` | `PROGRESS-rectification-minute-resolution-research-20260914.md` | **研究单**:候选分不开的根因是打分尺度——窗口内恒定项 11.5 分 vs 随分钟变化项 2.125 分(≈5:1)。先修封存基准(v3 每例仅 3 件事且被标 invalidated)出 v4,再离线量五个改法:分盘除数、去底座、**KP 宫头子主计分(产品 09-14 拍板,推翻 BUG-325 一条红线)**、年精度事件改边际似然、聚类签名层对齐。有收益才立实现单 | 已验收(结论收入定论页 `docs/research/rectification_minute_resolution_closure_2026_09_14.md`,`a643452b`) | `2d2467dc` |