feat: 多语言输出墙(€/£/西葡俄阿价格词+时间承诺+ES话术池)+话术建材化+防误杀

Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
浅念
2026-09-29 15:42:34 +08:00
parent 8fa3d7a8d0
commit 7003d13f7a
8 changed files with 206 additions and 23 deletions
+9 -2
View File
@@ -1,5 +1,5 @@
"""职能边界破防率观测(只读): AI 回复中出现"价格形态数字"的轮次占比。
方案B(输出过滤)的启动依据: >10% 即砌墙。锚定式匹配,年份/续航数字天然不命中。"""
方案B(输出过滤)的启动依据: >10% 即砌墙。锚定式匹配,年份/规格数字天然不命中。"""
import re
import sqlite3
import sys
@@ -8,10 +8,17 @@ DB = sys.argv[1] if len(sys.argv) > 1 else "./data/cc_ai_kefu.db"
PATTERNS = [
(r"\$\s?\d", "美元符"),
(r"[€£]\s?\d", "欧元/英镑符"),
(r"\d[\d,.]*\s*(usd|美元|万块?|块钱)", "货币单位"),
(r"\d[\d,.]*\s*(d[óo]lares?|euros?\b(?!\s*pallets?)|рублей|руб\.?)",
"货币单位(多语言)"),
(r"\b(?:precio|costo|custo|preço|цена|стоимость|(?:ال)?سعر|(?:ال)?ثمن)\b"
r"[^\d\n]{0,20}\d", "价格名词前置(多语言)"),
(r"(price|cost|quote)[^.\d]{0,20}(?<![a-z])(?!(?:19|20)\d\d(?!\d))\d",
"价格动词邻接(年份/车型编号排除)"),
"价格动词邻接(年份排除)"),
(r"\d[\d,.]*\s*k\b(?!\w)", "25k形式"),
(r"\d+\s*[- ]?(day|week|month|d[ií]as?|semanas?|дн(?:ей|я)|недел[ьи]|"
r"أيام)s?\b", "交期/时间承诺"),
]
COMPILED = [(re.compile(p, re.I), name) for p, name in PATTERNS]