为什么 AI 会让程序员突然失去安全感?它可能是软件史上的下一层“编译器”
系列一|技术抽象、信任与人的认知边界
核心观点:AI 带来的不只是编码效率的提升,而是技术抽象的对象从“执行”延伸到了“理解、规划与部分决策”。我们真正需要补上的,是与这种新抽象相匹配的工程信任体系。
今天的程序员调用一个成熟的数学库,通常不需要把库的全部源码读一遍;使用数据库,也不必先把存储引擎重新实现一遍。可是换成 AI:当它为我们写出一套系统、解释得头头是道、测试也看起来全部通过时,许多人反而会感到不安。
为什么?
我越来越倾向于一个解释:AI 正在以极快的速度跨越多个软件抽象层,而支撑人类信任这些抽象层的验证体系、责任机制和经验积累,还没有来得及同步成长。
这种落差,就是很多开发者感到“脚下的安全垫突然消失”的原因之一。
一、技术发展的主线,不是人人都越来越懂底层,而是越来越少的人必须懂全部底层
回头看软件技术的发展,机器码、汇编、高级语言、编译器、运行时、操作系统、基础库、框架与应用软件,并不是一条可以简单按年代排序的直线;它们大量重叠、互相依赖。
但有一条总体趋势相当清楚:技术不断将已经掌握的复杂性包装成更容易使用的接口。
- 高级语言让开发者不必逐条安排寄存器和指令。
- 编译器把语言语义转换为机器可以执行的过程。
- 操作系统与运行时屏蔽大量资源管理细节。
- 库与框架把经常重复的算法和工程模式封装为可调用能力。
- 应用软件再把底层能力包装成普通用户能够理解的操作。
这种封装并没有消灭复杂性。复杂性仍在那里,只是从每个使用者身上转移到了更专业、更稳定的工程组织和技术基础设施中。
因此,所谓“不必理解每行源码”,从来不是对底层的盲目信仰。成熟抽象的背后,是语言规范、接口契约、自动化测试、长期维护、事故复盘、大规模实际使用,以及一批持续处理底层问题的专业工程师。
一个普通开发者对 sort() 或数据库事务的信任,不是凭空产生的,而是站在一层由社会分工和知识积累构成的“可信抽象”之上。
技术文明的一个重要能力,就是让人不必亲自验证一切,却仍能有根据地信任某些东西。
二、AI 为什么看上去打破了这个规律?
传统编译器与新一代 AI 有一个关键差异。
假设你写出一个合法的 C++ 表达式,编译器可以选择不同的优化策略,但必须遵守语言规定的语义。它隐藏的是“怎样执行”。
而当你对 Agent 说“帮我构建一套电池仿真平台”时,它可能不仅编写代码,还会替你选择架构、决定模块边界、补充缺失的假设、选用求解器、设定默认参数。它开始介入“究竟应该怎样理解这个目标”。
| 维度 | 传统软件抽象 | AI 智能抽象 |
|---|---|---|
| 主要隐藏对象 | 执行细节与实现方式 | 部分理解、规划、选择与执行过程 |
| 输入形式 | 相对明确的接口或程序 | 可能含糊、矛盾、不断变化的自然语言目标 |
| 可靠性基础 | 规范、测试、运行经验和维护历史 | 除以上机制外,还需要目标澄清、行为约束与持续验证 |
| 典型风险 | 实现缺陷、依赖故障、边界条件错误 | 还包括错误理解目标、擅自补全假设、作出不合适的决策 |
所以,AI 并不是把传统软件的安全垫清空了,而是让人得以跳过多个原本必须主动理解的中间环节,直接触碰更高层次的系统能力。
能力跨越得太快,信任机制却还需要一层层建设。开发者会担心:我不知道它到底替我决定了什么;如果它误解了目标,我是否还能够发现?
这是一种合理的工程忧虑。与此同时,新的职业分工、技术标准和责任机制也可能逐渐缓解这种不安。不能把所有焦虑都归结为“心理上不适应”:就业变化、权力集中、责任不清和数据安全同样是真实问题。
三、AI 可能成为一种“意图编译层”
如果说过去的软件系统主要完成:
人写出明确指令 → 编译器/运行时 → 机器执行那么未来的智能系统会越来越多地承担:
人表达尚不完整的目标
↓
与 AI 反复澄清意图、补全约束
↓
形成结构化任务规范
↓
Agent 规划路径、调用已有软件与工具
↓
规则检查、验证与必要的人类授权
↓
现实世界中的可交付结果可以把这层暂时称为 Intent Compilation Layer:意图编译层。
它的社会意义,是让机器不再仅仅要求人掌握机器的操作方式,而开始主动适配人的意图表达。
但是,这只是一个有解释力的类比,并非说大模型就是传统编译器。自然语言没有与编程语言一样完备的形式化语义;“帮我做到最好”常常不存在唯一、客观、无争议的答案。
因此意图编译层必须允许澄清、暂停、拒绝、回滚和人类确认。否则它就可能把尚未经过审查的猜测包装成确定执行。
四、“五维可能性坍缩”:一个适合工程讨论的比喻
我在GOSIM shenzhen 2026大会上听过一个对诺兰的《星际穿越》的五维的描述,类比到程序逻辑中:传统程序沿着预先确定的逻辑路径运行,而 AI 面对目标时,仿佛还多了一个“选择分支维度”。不同的推理、工具调用和规划方案组成候选路径;工程系统则要求它们最终收敛到允许交付的结果。
这里的“第五维”和“坍缩”是决策空间的比喻,不是物理学意义上的额外时空维度或量子坍缩。AI 通常也不会穷尽所有可能路径,而是进行受知识、上下文和计算资源限制的启发式探索。
更准确的工程表达是:
大模型基于目标 和知识上下文
生成候选结果
。外层系统预先定义可接受的结果集合:
只有候选结果满足约束并通过规定的检查,才能被提交;否则就要修正、重新规划、拒绝执行,或者交给人处理。
关键不是让随机过程神奇地变成唯一确定解,而是让具有不确定性的智能系统在明确的约束下产生可接受、可验证的输出。
比如工程仿真中,AI 可以决定采用哪一种数值方案,但不能因为“结果看起来像对的”,就绕过守恒关系、单位检查、收敛性分析或实验对标。
还要区分两类约束:提示词中“请务必注意安全”只是软约束;程序级权限控制、类型校验、状态机、计算结果断言等,才有机会成为真正可执行的硬约束。即使如此,测试也只覆盖已定义、已观察到的风险,不能证明系统绝不会出错。
五、新的安全感从哪里来?
我认为未来可信 AI 系统的成熟,不是人终于彻底理解了每一次模型推理,而是社会逐步建立起一套足够清楚的契约:
我知道它被允许做什么,不允许做什么;知道在哪里能查看行为证据;知道如何验证结果;更知道当它无法证明自己正确时,系统会怎样安全地停下来。
这套契约需要技术,也需要专业分工和制度建设:可复现配置、权限边界、结构化接口、日志与追溯、独立验证、行业标准、责任划分、真实世界的长期反馈。
如果这些机制逐渐成熟,AI 确实可能成为覆盖大量生活和工作的下一层软件抽象。人们不必再理解每个应用的全部操作逻辑,就能通过目标表达调用复杂能力。
但这种未来不是自动发生的,更不是“模型越聪明,一切问题自然解决”。抽象层只有在形成可验证的信任之后,才算真正成熟。
过去的软件工程,主要让人不必知道机器每一步如何执行;未来智能系统工程的重要任务之一,是让人不必知道 AI 每一步如何推理,却仍能有根据地判断它是否在正确、安全地做事。
而在这个转变中,开发者究竟要掌握哪一层?我认为答案可能是一种新的、由人直接控制的“白板层”。
来源:知乎 · AI 游戏文章 · zhuanlan.zhihu.com