|
|
2 месяцев назад | |
|---|---|---|
| .. | ||
| .env.example | 2 месяцев назад | |
| README.md | 2 месяцев назад | |
| audit-coverage.ts | 2 месяцев назад | |
| audit-deep-analysis.ts | 2 месяцев назад | |
| package.json | 2 месяцев назад | |
| parse-client.ts | 2 месяцев назад | |
独立可分发 | 开箱即用 | 适用于 Parse Server + QiWe 企微群聊风控系统
# 1. 安装依赖
npm install parse dotenv
# 2. 复制配置模板 → 编辑环境变量
cp .env.example .env
# 3. 运行
npx tsx audit-coverage.ts # 覆盖审计 → HTML 报告
npx tsx audit-deep-analysis.ts # 深度分析 → MD 报告
| 文件 | 作用 |
|---|---|
audit-coverage.ts |
覆盖审计 — 扫全量消息,检测关键词命中但未预警的「漏报」,AI 逐条评审 |
audit-deep-analysis.ts |
深度分析 — 多维度统计 + 类别有效性排名 + AI 管理建议 |
parse-client.ts |
Parse Server 连接初始化(读 .env 中的 PARSE_* 变量) |
.env.example |
环境变量模板 |
README.md |
本文档 |
| 脚本 | 输出 | 说明 |
|---|---|---|
audit-coverage.ts |
audit-risk-YYYY-MM-DD.html |
可视化 HTML,浏览器打开 |
audit-deep-analysis.ts |
audit-deep-YYYY-MM-DD.md |
Markdown 管理报告 |
# ── Parse Server 连接(必填) ──
PARSE_APP_ID=lami-ai
PARSE_SERVER_URL=https://server.sh-lami.com/parse
PARSE_MASTER_KEY=your-master-key
# ── 企业微信 GUID(必填,用于数据隔离) ──
QIWE_GUID=B8591A9D-B540-44F9-9D74-B2EF5B419EAA
# ── DeepSeek AI(可选,不配则跳过 AI 评审) ──
DEEPSEEK_API_KEY=sk-xxxx
DEEPSEEK_API_URL=https://api.deepseek.com/v1/chat/completions
DEEPSEEK_MODEL=deepseek-chat
# ── 审计时间范围(可选,默认最近 7 天) ──
AUDIT_START=2026-06-15T00:00:00+08:00
AUDIT_END=2026-06-22T23:59:59+08:00
| 维度 | audit-coverage.ts | audit-deep-analysis.ts |
|---|---|---|
| 关键词覆盖率 | ✅ | ✅ |
| 漏报群检测 | ✅ + AI 逐条评审 | ✅ + 三分类归因 |
| 可视化报告 | ✅ HTML(浏览器) | ✅ MD(可打印) |
| 消息分布统计 | ❌ | ✅ 按天/群/类型 |
| 类别有效性排名 | ❌ | ✅ |
| AI 管理建议 | ❌(仅评审) | ✅ 5 维度建议 |
| 行动项清单 | ❌ | ✅ 分级行动项 |
| 建议频率 | 每周 | 每月 |
| 耗时 | ~30s | ~10s |
┌─────────────────────────────────────────────────────────┐
│ 每周: audit-coverage.ts │
│ │
│ Message ──→ 关键词匹配 ──→ 命中? ──→ 已有预警? │
│ │ │ │ │ │
│ │ │ NO YES → 跳过 │
│ │ │ │ │
│ │ │ 【漏报】──→ AI 评审 │
│ │ │ │ │ │
│ └────────────┴──────────────┴───────────┘ │
│ ↓ │
│ audit-risk-*.html │
└─────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────┐
│ 每月: audit-deep-analysis.ts │
│ │
│ 基础统计 + 类别有效性 + 漏报归因 + AI管理建议 │
│ ↓ │
│ audit-deep-*.md │
│ ↓ │
│ 优化关键词库 / 调整规则 │
└─────────────────────────────────────────────────────────┘
本工具假设目标 Parse Server 中存在以下表:
| 表 | 关键字段 | 用途 |
|---|---|---|
Message |
content, senderId, senderName, roomId, msgType, timestamp | 消息内容 |
RiskEvent |
groupId, keywords, severity, title, status, createdAt | 已触发预警 |
RiskKeyword |
word, category, severity, enabled | 关键词库 |
GroupChat |
roomId, roomName, communityName | 群映射 |
触发过预警的关键词数 / 启用关键词总数
该类命中消息的关键词数 / 该类总词数
# 设置上周的日期
export AUDIT_START="2026-06-15T00:00:00+08:00"
export AUDIT_END="2026-06-22T23:59:59+08:00"
npx tsx audit-coverage.ts
# 打开 audit-risk-2026-06-15.html 投屏展示
export AUDIT_START="2026-06-01T00:00:00+08:00"
export AUDIT_END="2026-06-30T23:59:59+08:00"
npx tsx audit-deep-analysis.ts
# 根据报告中的"类别有效性"和"未覆盖关键词"
# 淘汰 30 天零命中的词,升级质量类词权重
# 大促前后两周的独立审计
export AUDIT_START="2026-06-01T00:00:00+08:00"
export AUDIT_END="2026-06-22T23:59:59+08:00"
npx tsx audit-coverage.ts
# 检查促销用词是否导致大量误报
audit-risk-kit/ 文件夹到目标机器npm install parse dotenvcp .env.example .env → 编辑 .env 填入目标 Parse Server 连接信息注意: 表名和字段名必须一致。如果目标项目使用不同的表名或字段名,需要修改脚本中的
new Parse.Query('...')和.get('...')调用。
Q: 脚本跑很慢?
A: AI 评审阶段每个漏报群调一次 DeepSeek,限制最多 20 次。可去掉 DEEPSEEK_API_KEY 配置跳过 AI 评审,脚本秒出结果。
Q: 漏报数量为什么感觉偏多? A: 当前漏报基于"关键词命中但未触发预警"。大部分是促销营销词命中,并非真实风险。看 AI 评审列来区分真假漏报。
Q: 如何新增/删除关键词? A: 通过 Parse Dashboard 操作 RiskKeyword 表,系统每 5 分钟自动刷新关键词库。
Q: 支持非拉迷项目的企微风控吗? A: 工具与业务解耦,只要是同样的表结构(Message / RiskKeyword / RiskEvent / GroupChat),直接配置连接即可使用。
拉迷家居 · 风控团队 · v1.0