更新总结 · 2026-07-10 → 07-13

抖音 DM 自动回复 · 四天更新、卡点与优化方案

主线:从「回执验证不准 → 大量假报警 → 人工疲于核对」走到「验证增强 + 口径定版 + 告警只报真问题」。转人工队列三大噪声源(换行假阴 / 拆气泡假阴 / 卡 sending)全部治掉。

9
主链路 PR 上线(#831–#857)
18 / 18
unverified 人工核对全为假阴(0 真丢)
15 + 16
存量滞留草稿收口 + 补写对话记录
5
遗留卡点(见第三节)
01

四天上了什么

7/10 · 全链路核查收口日(7/7–7/10 审计 27 条全收口后的四连发)

更新类型干了什么
#835 草稿归并单段修复治「换行被输入框当 Enter 拆双气泡 → 回执假阴」。改前 7 天 18% 草稿含换行,改后新草稿不再有换行
#834 转人工滞留哨兵新增needs_human 草稿没人接 → 30min / 4h / 24h 三档升级推 Lark 报警,终结「有人在 9 分钟收口、没人在 20 小时」的黑洞
#831 价格护栏放开策略涉及价格的回复不再转人工等审批、自动发;随后进一步放开含具体数字的草稿
#837 同昵称防错配修复治 7/9「两个平姐」发错人事故:同号同昵称 ≥2 个 uid 禁止自动挂靠、推卡人工;另加红点兜底对账全量扫(每小时)

7/11 · 假阴治理 + 告警降噪

更新类型干了什么
#855 回执验证增强修复找到 unverified 真根因:抖音把长文案自动拆多段气泡(与换行无关)。DOM 验证加「多气泡拼装匹配」、VL 问法从「最新一条」放宽到「最近三条任意一条」
#854 卡 sending 有界重发策略发送中途崩的草稿:前两次自动重发、第三次才转人工(此前一律转人工,线上实证多数崩在发送前,人工核对纯耗人力)
#840 媒体消息不再静默丢修复客户发 [图片]/[语音] 以前被当噪声丢掉 → 现在放行入库 + 直落转人工(带安全兜底承接话术)
#839 / #853 告警提准修复兜底对账只检测不自动补录(防把运营手打消息当客户消息 → 自答误发);歧义/疑似类告警改永久台账,同一件事只报一次

7/12–13 · unverified 口径定版

更新类型干了什么
#857 unverified 归位 sent策略累计人工核对 18/18 全部假阴、0 例真丢,运营拍板:unverified = 发送成功。RPC 改为直接标 sent + 补写对话记录(幂等防重),不再转人工、不再进滞留告警。存量 15 条滞留草稿收口、补写 16 条 ai 消息(治「AI 不知道自己说过什么、重复表达」)
02

数据口径变化(排障必读)

03

目前的卡点

1. 云电脑脚本靠人工更新

#855 验证增强要各台云电脑跑 update.bat 才生效,没有自动同步。哪台没更新,哪台仍产生假阴(现在假阴不报警了,但留痕数据会虚高、掩盖真失败)。

2. 捕获腿静默失效盲区

Edge 挂了 / 登录过期时捕获脚本「安静弃权」,心跳照绿——客户回复静默漏掉。#820 回复率哨兵能兜,但检测延迟约 24h;根治方案(capture 每轮盖 last_capture_at 心跳 + 服务端判「心跳鲜活但捕获落后」)已设计、未排期。

3. 媒体消息只能人工

[图片]/[语音] 系统读不到内容,现在只是不丢了,回复仍靠人工上云电脑看。

4. 同昵称歧义会话不入库

防错配的代价——这类客户回复要人工回 + 手动补录,存在漏接风险。

5. 时效物理底 ~40–90s

轮询截图 + GUI 拟人操作架构做不到秒级;发送延迟主控量是 AKKE_DM_AUTOREPLY_INTERVAL,且发送寄生在捕获周期里(草稿 approved 后还要等 4–6min 才轮到发)。

04

优化方案(按优先级)

优先级方案预期收益成本
P0铺 #855 到全部云电脑——逐台跑 update.bat 把拼装匹配验证铺满假阴数据不再产生,留痕干净、真失败可见几分钟 / 台
P1捕获心跳根治——落地 last_capture_at 方案,服务端判「心跳鲜活但捕获落后」即告警漏检窗口 24h → 分钟级方案现成,只差排期
P1发送支线独立化——send 从 capture 子进程拆出挂 60s 主循环回复时延约 6min → 100s(收益最大的小改)中(云电脑 agent 改造)
P2媒体消息半自动——图片类先用 VL 读图生成草稿转人工确认比纯人工快一档
P2观察 #857 后 needs_human 构成——队列只剩真问题后,重估人工认领 SOP 与滞留阈值告警信噪比进一步提升低(观察一周)
05

部署指南(P0 铺机 · 每台约 2 分钟)

#855 回执验证增强改了两个云电脑脚本:douyin_dm_web_send_dom.py(DOM 通道·拼装匹配)+ douyin_dm_grounded.py(PC 客户端通道·VL 问法)。两个文件都已在 update.bat 下载清单、公开镜像已同步(字节数已核对一致)。所有在跑 DM 的云电脑逐台执行:

步骤操作说明
① 拉新版双击 C:\akke-wuying\wuying-dm\update.bat从公开镜像拉最新脚本,DOM / PC 客户端两条通道的文件都在清单里,不用判通道
② 核字节数PowerShell:(Get-Item .\douyin_dm_web_send_dom.py).Length 应为 25323douyin_dm_grounded.py 应为 69960字节对不上 = 没拉到新版,用单文件兜底:curl.exe -o douyin_dm_web_send_dom.py https://upio.ai/akke/wuying-dm/douyin_dm_web_send_dom.py(另一个文件同理)
③ 不用重启什么都不用做动作脚本每批 subprocess 现调,下一批自动用新版;只有改 .env 才需要重启 poll agent
④ 验活等下一条自动回复发出,看黑窗日志气泡验证段出现拼装命中 / 直接 sent 即生效;留痕里不再新增 unverified 也是有效信号

日常重启恢复(云电脑重启后 DM 全没时)

新机从零部署

06

关联报告