feat(backend): knowledge iteration + vision + neo4j + response contract source
dependencies.py 拆分为 dependencies/ 包; 新增 vision/ragflow_ingestion/neo4j 客户端与 h5_ai_task; alembic 045 图置信度迁移; 响应契约统一收尾。
This commit is contained in:
@@ -145,22 +145,25 @@ class ContentModerationService:
|
||||
import re
|
||||
leaked = []
|
||||
|
||||
# 手机号(11 位 1 开头)
|
||||
if re.search(r"\b1[3-9]\d{9}\b", text):
|
||||
# 手机号(11位1开头)
|
||||
# BUGFIX: \b 和 (?<!\w) 对中文均失效(Python3 \w 含中文),
|
||||
# 改用 (?<!\d) / (?!\d) 检查数字边界——"电话13800138000" 可正确匹配
|
||||
if re.search(r"(?<!\d)1[3-9]\d{9}(?!\d)", text):
|
||||
leaked.append("phone")
|
||||
|
||||
# 身份证号(18 位)
|
||||
if re.search(r"\b\d{17}[\dXx]\b", text):
|
||||
# 身份证号(18位)
|
||||
if re.search(r"(?<!\d)\d{17}[\dXx](?!\d)", text):
|
||||
leaked.append("id_card")
|
||||
|
||||
# 银行卡(16-19 位连续数字,简单判断)
|
||||
if re.search(r"\b\d{16,19}\b", text):
|
||||
# 银行卡(16-19位连续数字,简单判断)
|
||||
if re.search(r"(?<!\d)\d{16,19}(?!\d)", text):
|
||||
leaked.append("bank_card")
|
||||
|
||||
# 邮箱(个人邮箱,非公司邮箱)
|
||||
# 邮箱(个人邮箱,非公司邮箱)
|
||||
# 邮箱以 ASCII 字母开头,(?<!\w) 这里可用(前面不会是中文邮箱前缀)
|
||||
personal_email_pattern = (
|
||||
r"\b[a-zA-Z0-9._%+-]+@(?!servyou-it\.com|"
|
||||
r"servyou\.com\.cn)[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}\b"
|
||||
r"(?<!\w)[a-zA-Z0-9._%+-]+@(?!servyou-it\.com|"
|
||||
r"servyou\.com\.cn)[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}(?!\w)"
|
||||
)
|
||||
if re.search(personal_email_pattern, text):
|
||||
leaked.append("personal_email")
|
||||
|
||||
Reference in New Issue
Block a user