[持续对话判定]:完成恢复待机延迟修复,包含本地规则收敛和分类器跳过回归测试

This commit is contained in:
mkbk
2026-06-18 13:51:35 +08:00
parent 86a429f018
commit ac72738fc8
3 changed files with 71 additions and 15 deletions
+21 -15
View File
@@ -35,28 +35,27 @@ class ContinuationDecisionProvider(Protocol):
class RuleContinuationDecisionProvider:
_continue_patterns = (
"你想",
"你要",
"你需要",
"需要我",
"要不要",
"是否需要",
"可以告诉我",
"告诉我",
"请告诉我",
"你希望",
"你更想",
"哪一个",
"哪一部分",
"哪种",
"哪个",
"请选择",
"选一个",
"请补充",
"需要补充",
"补充一下",
"继续吗",
)
_ambiguous_continue_patterns = (
"我还可以",
"我可以继续",
"还可以继续",
"可以继续",
"继续展开",
"继续讲",
"继续聊",
"两个方向",
"三个方向",
"几个方向",
"几个部分",
)
_standby_patterns = (
"这是",
"已经",
@@ -70,6 +69,11 @@ class RuleContinuationDecisionProvider:
"抱歉",
"出错",
"失败",
"先这样",
"到这里",
"随时叫我",
"有需要再叫我",
"需要时再叫我",
)
def decide(
@@ -88,7 +92,9 @@ class RuleContinuationDecisionProvider:
return ContinuationDecision("standby", 0.82, "assistant appears to finish the answer", "rule")
if len(text) <= 18 and not text.endswith(("?", "", "", "")):
return ContinuationDecision("standby", 0.72, "short non-question reply", "rule")
return ContinuationDecision("unknown", 0.0, "rule uncertain", "rule")
if any(pattern in text for pattern in self._ambiguous_continue_patterns):
return ContinuationDecision("unknown", 0.0, "ambiguous continuation offer", "rule")
return ContinuationDecision("standby", 0.78, "assistant did not ask for immediate input", "rule")
class LlmContinuationDecisionProvider: