别把合同审查交给一个AI
最近一两个月,我看到不少团队在做“合同AI审查”时用的是一个很像话术模板的流程:把合同扔进来,给模型一条很长指令,让它“逐条风险分析”,再拿输出结果去会签。
问题不在模型理解不够,而在于“模型当了万能中间人”。
我见过一次看起来合理的审查结论,最后还是因为版本、付款条款和条款衔接问题卡死:
文本里有“已修订”字样,但系统默认读取的是旧版本;
付款节点写了“验收后”,但合同正文对应的是“里程碑验收前预付款”;
法务要求的授权条款是第三版修订,却沿用了第一版模板。
这种错不是“模型不聪明”。是流程设计里没有把“谁负责什么、什么时候停、怎么回写”说清楚。
先说真实发生过的坑
坑一:把“找风险”当成“能放行”
当时我们拿到的合同里,AI给出的结论通常是“风险较低、建议先行谈判”。这句话很顺耳,但它没告诉我两个关键问题:
- 哪个条款是高风险?
- 能不能自动放行,为什么不能?
如果连判断边界都不写,后面很容易把“可疑”当“可通过”。这类项目最后最怕的不是错过某一个点,而是错把一个待确认当成已确认。
坑二:一个Agent把“提取—判断—修改”都做了
我早期也喜欢让一个模型做全程,结果问题很快出现。它会先提取关键条款,再判断是否合规,再给修改建议。
第一遍看起来像“自洽”——因为修改建议就是它自己认同的判断。
第二遍复核的时候就会发现:有些建议和最初提取冲突,尤其在付款、交付和违约条款上最容易出现“自循环修正”。
坑三:法条、规则和版本没做到“硬闸”
合同场景里有些问题很机械,但模型最擅长的是文本生成。比如版本变更顺序、附件生效范围、签署页编号、附件与正文映射。
这些点靠自由输出很容易“写得像样”,却没有执行到位。
我们后来加了一个做法:
只要版本字段不稳定、付款条件含糊、关键附件缺失,就直接阻断,不让任务走到“可签发”分支。
先阻断比后补更省时。
为什么要用多 Agent:不是追求炫技,而是追求可追责
多 Agent 的本质不是让智能体“更多”,而是让职责更清楚。
在合同联审里,最重要的不是“生成了多少条风险”,而是“每条风险能不能从规则、证据、责任人三条线同时复核”。
我们的最小可用分工
| Agent | 主任务 | 输入 | 输出边界 |
|---|---|---|---|
| 协同Agent | 统一任务、版本登记、依赖调度 | 合同原始包 | 阶段状态和执行队列 |
| 结构提取Agent | 条款定位、字段映射 | 合同文本+附件清单 | 条款ID、页码、字段值 |
| 风险识别Agent | 与规则库交叉匹配 | 结构化字段+规则项 | 风险等级、问题类型、阻断原因 |
| 法条对照Agent | 法规、制度、条款冲突复核 | 风险项+法条规则 | 合法性说明、异常证据 |
| 复核Agent | 独立视角复检高风险项 | 风险项+证据图 | 是否允许自动放行、人工建议 |
| 报告Agent | 输出与复盘 | 全链路回执 | 审查清单、复核意见、回写建议 |
这里我特意把“报告Agent”放到最后。
它的职责是“收敛”,不是“判断一切”。
判断要在前面的角色里完成,且每一步都要带证据与边界。
这套链路里,技能(Skill)到底起什么作用
很多人以为 Skill 是“提示词集合”。
我这边更接近“审查制度的可执行化”:
- 规则是什么:比如付款条件必须显式绑定发票/验收节点;
- 哪些输入无效就阻断:版本号缺失、页码无法定位、附件与正文不一致;
- 复核后续怎么回写:每次人工改动都要回到规则仓库,作为下一次任务默认检查项。
这部分最关键的是“可学习性”。
第一次人工纠错不是只改这份合同,而是让 Skill 记下:以后再遇到同类条件,先按这个边界处理。
在 DesireCore 里,这种记录和回滚、迁移可以落到 AgentFS 里,避免每次都从头写规则。

人工门禁:哪些情况下不能自动通过
这套方案里我们定义了三个放行层级:
- 自动通过:低风险、证据完整、无关键附件缺失。
- 人工确认:风险中等或高、且证据链完整但有解释空间。
- 强制阻断:版本冲突、付款条件不闭环、条款逻辑不一致、关键字段缺失。
这三层是写在执行闸门里的,不是写在“事后总结”里的。
因为后者太晚,前者才是真正能止血的地方。
我后来加了一个小规则:
只要高风险项未有人确认,报告结论永远不能从“待放行”直接改成“可签发”。
这条规则在多次复盘里很有用,尤其在节奏很快的项目里,大家容易把“看起来可以过”当成“已经过”。
从“先生成报告”改成“先交付证据”
最容易忽略的一点是:审查输出不是文字文件,而是一个可复查的任务流。
所以我现在更偏向让每条结果包含:
- 对应条款号/页码
- 决策依据(规则来源、法条映射、历史样本)
- 风险等级和门禁动作(待确认/人工批准/可放行)
- 回写动作(由谁补证据、补什么)
这样一个合同审查回路,做完以后可以很快复跑同类案例,看的是重复效率,不是“故事写得是否顺”。
重复效率提升了,才说明这条链路真的落地了。
我自己的一个现实建议
和很多人一样,最初我也想把这套改成一条“大模型一次性闭环”。
后来我反而做成“先小规模闭环再扩展”:
- 先挑一类合同(例如服务类);
- 固定一版 Skill;
- 跑完整审查链路:版本、条款、付款、违约、附件;
- 把每次人工纠偏回写到 Skill;
- 再换第二类合同复测;
- 稳住了再加第三类。
这比先建大模型大剧本更容易推进。
最怕的是一上来就追求全覆盖,结果规则不稳定、证据不完整,最后再被同一个问题拖住几个月。
收口
现在回头看,真正有用的不是“AI 能不能改得更像人”,而是“AI 做完以后能不能让人更快把错误拦下来”。
如果你的团队准备把合同审查做成多 Agent 落地,不要先问模型能力,而要先回答三个问题:
- 哪一类问题必须人审,哪些可以自动放行?
- 每条风险的证据链、规则链、责任链是否写得清?
- 人工纠偏怎么回写,下一次怎么复用?
只要这三件事先定好,Skill 才不只是“提示词集合”,而是你们审查体系里最硬的那层基准。




hi~
哈喽 轶哥大佬
请问一下,我的13900k可以安装A100液冷显卡吗?如何辨别nvme的SSD是否占用了CPU的PCIE通道。
不过如果要计算卡 我还是建议用U1或U2服务器安 因为发然大
win11 24H2 26100.2605 ,按照如下修改成功:
Search: 8B 81 38 06 00 00 39 81 3C 06 00 00 75 Replace: B8 00 01 00 00 89 81 38 06 00 00 90 EB