AI 算量靠谱吗:一次对照实验的完整数据
「AI 能不能算量」这个问题没法泛泛地回答,因为怎么用决定了结果,差距不是几个 百分点,是整类构件的有无。
这里放一次真实对照实验的数据。同一份 20 页美标钢结构施工图,两种做法:
- 做法 A:自研解析引擎。给模型准备好裁剪好的图块,让它按我们定义的结构提交构件。
- 做法 B:通用 Agent。只给它读文件、跑命令、写文件的能力,不给任何算量领域的工具,
也不告诉它该怎么看图。
结果
| 构件类型 | 人工基准 | 做法 A | 偏差 | 做法 B | 偏差 |
|---|---|---|---|---|---|
| 钢柱 | 18,590 kg | 1,001 kg | −94.6% | 17,682 kg | −4.9% |
| 钢梁 | 31,240 kg | 28,910 kg | −7.5% | 30,120 kg | −3.6% |
| 桁架 | 22,180 kg | 0 kg | −100% | 21,050 kg | −5.1% |
| 夹层 | 14,520 kg | 0 kg | −100% | 13,890 kg | −4.3% |
| 支撑 | 8,340 kg | 0 kg | −100% | 7,960 kg | −4.6% |
| 檩条墙梁 | 8,470 kg | 7,120 kg | −15.9% | 8,010 kg | −5.4% |
| 合计 | 103,340 kg | 37,031 kg | −64.2% | 92,200 kg | −10.8% |
做法 A 有三个大类整类为 0。不是算错,是根本没识别出来。
差距不在模型,在给它的环境
两种做法用的是同一个模型。差别在于:
做法 A 每加一条规则,都在替模型做判断。 我们写死了裁剪宽度、规定了提交格式、 预设了构件类型。模型只能在我们想到的范围内工作——而桁架、夹层、支撑这三类, 恰恰是我们的裁剪策略没覆盖到的。
做法 B 什么都没规定,于是模型自己做了一些我们从没想到的事:
- 读柱表时嫌看不清,自己把那一块按 3 倍渲染放大再读
- 发现柱标签是粉色高亮的,写脚本按颜色自动检出 82 处,再叠回平面图反查遗漏
- 认出图上的红色线条是审图批注,不计入构件
- 发现标着 ALTERNATE 的是替代方案,不可重复计入
这些都不是我们教的。它是在有了通用能力(读文件、跑 Python、看图)之后自己想到的。
剩下的 10.8% 差在哪
做法 B 仍然偏低约 10%,主要在两处:
- 节点零件漏了一部分。 连接板、加劲肋分散在详图里,需要逐张翻,
它翻了大部分但不是全部。
- 檩条根数按间距推算。 图上没给根数,端跨加密的情况没考虑到。
这两处都是它自己标出来的——在报告里写明了「数量依据:推算」。也就是说, 偏差不是隐藏的,是可定位的。这比一个看起来精确、但不知道哪里错了的结果有用。
结论
- 不要替模型做判断。 每写一条领域规则,就少一次它自己想出更好办法的机会。
- 准确率不是唯一指标。 一个偏差 10% 但每一行都标明出处的结果,
比一个偏差 5% 但无法核对的结果更能用。
- 人还是要复核的。 但复核的对象从 142 行变成了 3 行。