Smart Turn v3.2：工作数据 can_reply_now 判断点分类
2026-10-12

本版仅评估 can_reply_now。每个 decision_ms 独立输入模型，使用 probability > 0.5 映射为可回复；不把已有结束信号、VAD 尚未停止、3 秒超时或 ASR 等待作为预测结果。

输入规则
用户第 1 声道（索引 0），原始 8 kHz 音频按当前点裁剪，然后由 Pipecat 1.12.0 的实际 LocalSmartTurnAnalyzerV3 重采样至 16 kHz。
依据该点之前开始的用户 ASR 片段定位发言块；3 秒内相邻用户片段归并，完整且不重叠的机器人提问会分开两个发言块。起点前保留 500 毫秒，最多保留末尾 8 秒，短音频在前面补零至 8 秒。
不使用人工标签或先前模型判定来决定音频起点，也不因早先模型判 Complete 清空当前输入。转写仅定位时间，文本不进入模型。
这是利用片段级 ASR 近似当前用户话轮起点的判断点分类；单个 ASR 片段内部的停顿未据此重新切分，不代表完整 Pipecat 在线策略回放。
2 个缺少早期用户 ASR 的点使用该判断点以前的实际 Silero VAD 起始事件补充起点，并单独标记。

结果：44 个点，人工可回复/等待各 22 个
可回复：22 个全部正确，误阻止 0 个。
等待：4 个正确，误放行 18 个。
准确率：26/44 = 59.09%。
可回复检出率：22/22 = 100.00%。
误放行率：18/22 = 81.82%。
放行精确率：22/40 = 55.00%。

按原因分析
mid_turn_pause：17 个点，误放行 15 个（88.24%）。
unfinished_expression：5 个点，误放行 3 个（60.00%）。
completed_answer / completed_turn：合计 22 个点，全被判为可回复。
当前模型较容易放行，主要不能可靠拒绝话轮中间停顿。

代表性误放行（标注判断点，概率）
872a1e67，44.810 秒，“帕萨特”，0.97771。
2c83253a，48.125 秒，“型号是24年380大众帕萨特星空龙腾版。”，0.98486。
a266b9ef，41.219 秒，“迈腾2023款330豪华版2.0T”，0.98704。
40ae686c，67.943 秒，“轮胎裂纹同意更换新轮胎。但是”，0.67017。
40ae686c，70.430 秒，“轮胎裂纹同意更换新轮胎。但是20”，0.87325。
前三个例子提示局部表达结束分数与当前任务的可接话条件可能不一致，例如车型说完但其他信息尚未回答。该解释需要结合回听确认；此处不据转写断言语气变化。

同一批判断点上的阈值诊断（固定音频，不推演结束信号）
阈值 0.50：误放行 18/22，误阻止 0/22，准确率 59.09%。
阈值 0.80：误放行 16/22，误阻止 0/22，准确率 63.64%。
阈值 0.95：误放行 13/22，误阻止 3/22，准确率 63.64%。
阈值 0.98：误放行 8/22，误阻止 6/22，准确率 68.18%。
阈值 0.99：误放行 0/22，误阻止 22/22，准确率 50.00%。
提高阈值可以减少误放行，但正负例分数重叠明显，无法在本批数据上同时保持高检出率和低误放行率。阈值对照为同集探索，不是独立测试集选参结果。

标签与对齐问题
29 个点仍为 xlsx_draft，其余 15 个未填标注员/置信度，没有明确回听确认状态。以上结果作为探索性比较，不作正式准确率验收。
cb3238dc 的 13.540 秒标签文本为“辽宁葫芦岛”，对应用户转写在 16.600 秒开始，应回听确认判断点或文本。
e304f740 的 11.531 秒“姓赵”在 asr_history 中缺少对应早期用户片段。
原始人工标签未修改，两个点均保留预测并标记 alignment_issue。
第 1 声道仍可能有机器人回声或重叠语音；这批选定点的误放行率不能直接当成静音区间误抢话率。

输出
predictions.csv：全部 44 个点的标签、模型概率、can_reply 预测、正确性及音频起止/长度。
errors.csv：18 个误放行点。
thresholds.csv：7 个阈值的同集诊断结果。
summary.json：统计、分组、输入规则、版本及 SHA256。

建议优先回听车型/购车时间/里程组合回答的负例，确认话轮起点和判断点，再用已确认、按通话划分的测试集检验阈值或结合对话任务上下文的方法。
