过去,合同审批需要审批人逐字对比,有的合同十几页甚至几十页。靠肉眼看,不仅效率极低,而且容易漏看,不同人的判断标准还不一样。
最近,我们决定把 AI 加入到我们的合同审批流程中,来减轻审批人员的工作量。这篇文章,就是本次实战的复盘。不是技术教程,而是真实经验分享。
想象 vs 现实
一开始我们想得很简单:让审批人员把合同丢给 AI 对话框,让 AI 看看有没有问题。
但很快面临几个问题:
- 数据泄露风险:合同是一家公司的核心机密,不能把原文都发送给模型提供商。
- 流程脱节:聊天得出的结论无法在公司系统里留痕,也没法在现有的审批流程中流转。
- 幻觉问题:但合同审批是一件非常严肃的事情,如果 AI 产生幻觉,后果也许很严重。
于是我们转变了思路:我们需要的不是一个“聊天机器人”,而是一条“审批流水线”。 把 AI 审查作为其中一环,AI 只负责发现合同中的风险点,再流转到人工审批。
整体架构
flowchart TD
A[业务员上传合同] --> B{预检:文件与模板相似度}
B -->|不匹配| B1[告警拦回]
B -->|匹配| C[文本提取 + 模板快照冻结]
C --> D[AI 大模型审查 + 红线规则引擎]
D --> E{风险聚合评分}
E -->|低风险| F[流转人工审批]
E -->|中高风险| G[直接驳回给业务员]
E -->|任何环节异常| H[不放行,标记异常等待重试]
F --> I{审批人决策}
I -->|通过| J[合同生效]
I -->|驳回| K[退回修改]
G --> K
K -->|重新提交| A
流水线的每道工序
架构图里的每个节点,对应一道具体的工序。
第一道工序:文本提取 用户传的是 PDF 或 Word,我们部署了一个文档解析服务器(基于开源的 MarkItDown)来做格式转换,将文档内容转成 Markdown 格式文本。
第二道工序:模板匹配与快照冻结 用户提交时选择合同类型,系统据此找到对应的标准模板。匹配成功后立即冻结快照——把当时的模板文本、红线规则、公司信息存一份副本。这样即使后续有人改了模板,也不影响进行中的审批。
第三道工序:大模型审查 我们选的模型是Qwen 3.7-max(通义千问)。选型理由:部署在国内,API 请求快;中文法律语境理解够用;API 按量计费。 AI 的审查分两种情况:
- 有标准模板:拿合同和模板逐字对比,正常的客户信息填写标记为"允许变更",改了核心权利义务的标记为"风险"。
- 没有模板(如对方提供的外来合同):从管辖权、保密、知识产权、违约责任等维度做通用风险扫描。
第四道工序:红线规则引擎 大模型是概率模型,不能 100% 保证不漏。所以我们另加了一套确定性规则引擎:合同是否缺少必须的保密条款?是否触发了高危敏感词?这些硬性检查不依赖 AI,结果可复现,作为安全兜底。
提示词工程:踩过的四个坑
让系统真正可用,我们在提示词(Prompt)设计上花了最多时间。
1. 约束法律引用,防止幻觉 为了应对 AI 可能会编造法条,我们的做法是:只有 100% 确定时才允许引用具体法条编号,否则只输出"一般法务风险提示"。模板对比模式下进一步收窄——明确告诉它判断依据是"合同与公司模板的差异",不要主动引用外部法律条文。
2. 强制输出思维链
要求 AI 在给出结论前先写一段 <thinking> 推理过程,逐条对比后再输出结果。好处:准确率提升;出现争议时可查日志回溯推理路径。
3. 禁止忽略格式差异 测试中发现 AI 会自行判断"全角逗号改半角、多了个空格"不重要而跳过不报。但在合同审批场景,漏报不可接受。我们在指令中明确要求:任何差异都必须上报,哪怕只是换行符变化,归入"格式差异"类别。
4. 自动纠错重试 大模型偶尔输出格式异常(非法 JSON)。系统检测到解析失败后,不直接报错给用户,而是将错误信息回传给 AI 要求重新输出。最多重试两次,基本消除了此类偶发问题。
审批人看到什么
审批人打开审批单时,看到的是一份结构化的风险报告:每条差异按严重程度排列(高危 → 中风险 → 低风险 → 格式差异),标注了变更位置、原文与改动内容的对比、以及 AI 给出的风险说明。审批人只需逐条确认,不再需要自己去原文里找差异。
实际效果
- 审查效率:审批人不再逐字通读全文,而是对照 AI 输出的差异清单定向复核,长合同的审查时间大幅缩短。
- 漏检率下降:AI 能捕捉到人眼容易忽略的细微改动(如违约金比例从 30% 改成 20%)。
- 标准统一:不管谁来审批,看到的都是同一份 AI 生成的风险报告,不再依赖个人经验判断。审批规则在后台统一配置,每一步操作都有记录可查。
整套系统的核心原则:AI 负责发现差异和风险,人负责判断是否接受。
现在 AI 的话题很火热,但我们不能为了 AI 而 AI。要让它真正落地并提升效率,需要用规则兜住它的不确定性、并且让专业的人做最终决策。