接入 · 分析 · 审核 · 验证
使用方法
闭环以命令行工具 bianmu4 + 一个自带工作台 UI 的 HTTP 服务交付。
下面按「接入 → 分析 → 提规则 → 审核 → 验证」的实际使用顺序说明。
代码暂未开源。本页展示接入契约与操作形态,供评估这套机制是否适配你的
编目/标注场景;如需交流可通过仓库维护者联系。
第 1 步 · 接入修正埋点
上游工作台每保存一次字段修改,推一条事件。两种通道:
HTTP webhook(云端工作台用这个)
curl -X POST https://your-host:8040/api/corrections \
-H "Content-Type: application/json" -H "X-Api-Token: $TOKEN" \
-d '{
"title_id": "db_35267224",
"title": "山河故人令",
"field": "foreign_title",
"field_layer":"L3",
"old_value": "Shan He Gu Ren Ling",
"new_value": "Legend of the Riverlands",
"source": "douban_snapshot",
"confidence": 0.62,
"operator": "editor_017",
"reason": "来源错误",
"session_id": "task_20260905_0031"
}'
响应约定:校验通过 200;原值等于新值 200 + skipped;
校验失败 422 且原始 payload 落入 deadletter 队列(不丢数据);
Token 错误 401。
进程内函数(同机部署用这个)
from web.hooks import on_field_corrected
on_field_corrected(title_id=..., field=..., old_value=..., new_value=...,
source=..., field_layer="L3", reason="来源错误",
operator=..., session_id=..., confidence=0.62)
第 2 步 · 差异分析(无模型依赖)
bianmu4 stat # 埋点数据概览
bianmu4 diff # 高频错误字段 Top-10 / 错误模式 / 来源分布 / 置信度分箱
先看置信度分箱再决定下一步:低置信度样本占修正量超过 45%, 说明置信度机制可信,可以据此排人工复核优先级;分布均匀则先修置信度机制, 不要急着提规则。
第 3 步 · 提取规则草案
bianmu4 extract --dry-run --min-samples 8 # 先看流程,不调模型
bianmu4 extract --min-samples 8 # LLM 归纳(OpenAI 兼容协议,本地/云端仅差 base_url)
样本不足的字段不提规则(宁缺毋滥);每条草案强制附样本证据。
第 4 步 · 审核与灰度
bianmu4 rules # 查看规则库
bianmu4 review R-xxx --to 待审 --reviewer 张三
bianmu4 review R-xxx --to 灰度 --reviewer 张三
bianmu4 rollback R-xxx # 一键回滚,任何状态可用
第 5 步 · 验证规则真的有效
bianmu4 verify foreign_title --cutoff 2026-09-15
# 输出生效日前后的 修正次数/天 对比,下降 ≥20% 判定达标
工作台 UI
以上所有人工触点也有 Web 界面 —— bianmu4 serve 启动后:
| 页面 | 用途 |
|---|---|
| 修正录入 | 人工补录修正,reason 强制五选一下拉,校验失败就地报错 |
| 规则审核 | 按状态分组,只渲染合法流转按钮(状态机驱动),流转必须署名,冲突徽标,一键回滚 |
| 看板 | diff 分析全量视图 + 置信度判读 + 规则生效前后对比 |
鉴权为共享 Token:API 走 X-Api-Token 请求头,UI 走登录页换 HMAC 签名 cookie;
未配置 Token 时服务拒绝启动。
部署约束
- 单进程部署(文件锁在进程内),不要多 worker/多实例共写同一数据目录;
- 数据目录由环境变量指定,与启动目录无关;
- 演示数据脚本对非空真实日志拒绝覆盖 —— 并行期的修正数据不可追补,这是全项目唯一不可逆资产。