营运与维护 · 实作指南
别让 AI 覆盖同事刚改好的记录
用服务端版本条件、三方比较和双窗口演练,保护 AI 写回记录时同事的最新修改。
AAHouse 原创解说视频,采用 AI 辅助概念画面、合成旁白及原创音乐。
英文逐字稿 · 简体中文普通话逐字稿 · 台湾华语逐字稿 · 香港粤语逐字稿 · 澳门粤语逐字稿
两个人,一份记录
设想一家美国维修公司:AI 读取客户记录,准备补充服务摘要;调度员同时把到访时间改到下午。若 AI 稍后把读到的整份旧记录写回,摘要可能正确,时间却被改回上午。这是虚构情景,但问题不在模型是否聪明,而在写入时有没有发现记录已经变了。
依已核准文章重绘的解说示意图。
把版本一起读进来
读取内容时,也保存服务端返回的版本标记,例如 ETag。它不是让模型猜的编号,更不能用本机时间临时替代。拟议更新应带着“基于哪一版”的依据;记录编号回答改谁,版本标记回答改的是不是仍然那一版。
依已核准文章重绘的解说示意图。
让服务端决定能否写入
支持条件更新的 HTTP 接口可用 If-Match 携带已读取的 ETag。RFC 9110 将它用于避免并发覆盖;比较应由服务端在执行操作前完成,而不是助手先查一次、隔几秒再无条件保存。先查后写之间仍可能有人改动。[S1]
依已核准文章重绘的解说示意图。
冲突不是请再按一次
通常的 HTTP 条件不匹配会返回 412;Google AIP-154 的资源 etag 约定则使用 ABORTED。必须查目标接口契约,不能把所有冲突都当成网络失败重试。建议把任务标为“需要比较新版”,而不是删掉版本条件强行成功。[S2][S3]
依已核准文章重绘的解说示意图。
比较三份内容,而非整份覆盖
保留读取时的原件、AI 拟改的内容、现在的记录。若同事只改时间,AI 只加摘要,可按明确规则重新构造窄范围更新;若双方改同一字段,交给负责人判断。即使字段不同,也要检查它们是否有业务依赖。这是工作流建议,不是自动合并保证。重建后的更新仍须带上新读取的版本条件;提交前若再次发生变化,仍应报告冲突。
依已核准文章重绘的解说示意图。
这道检查不替你授权
版本匹配只说明符合该接口的版本条件,不说明 AI 有权修改,也不保证内容正确。权限和业务审核仍要检查。另一个容易踩的坑是 If-Match 的星号:它检查资源存在,不等于锁定原先读到的版本;弱 ETag 也不能用于强比较匹配。[S1][S2]
依已核准文章重绘的解说示意图。
用两个窗口做一次演练
测试环境里,让窗口甲读取记录,窗口乙修改并保存,再让甲提交旧版更新。预期结果是拦截冲突、保留乙的修改,并显示可理解的差异。接着测试双方改同一字段、重新读取后仍再次变化,以及接口根本不支持条件写入的情况。
依已核准文章重绘的解说示意图。
采购问题比提示词更重要
本周就问连接器供应商:能否返回版本、条件是否在服务端执行、冲突怎样报告、能否只改指定字段?若没有可靠条件更新,先保持建议模式或采用经验证的单写入流程。保存成功回执与新版本,再向团队报告完成;别用“最后一次保存获胜”代替协作。
依已核准文章重绘的解说示意图。