当AI开始自己跑代码:OpenAI如何防止智能体失控

AI PM 编辑部 · 2025年07月30日 · 5 阅读 · AI/人工智能

正在加载视频...

视频章节

随着AI从“写代码”进化为“执行代码”,安全问题被推到台前。OpenAI安全工程师Fouad Matin结合Codex与代码执行智能体的实践,讲述了为何所有AI都会变成代码执行者,以及如何通过沙箱、权限与人类审查,避免这股力量反噬。

当AI开始自己跑代码:OpenAI如何防止智能体失控

随着AI从“写代码”进化为“执行代码”,安全问题被推到台前。OpenAI安全工程师Fouad Matin结合Codex与代码执行智能体的实践,讲述了为何所有AI都会变成代码执行者,以及如何通过沙箱、权限与人类审查,避免这股力量反噬。

从安全创业者到OpenAI:他为何对代码执行如此警惕

这场分享并不是一位“纯研究员”的抽象讨论,而是来自一位长期与真实安全风险打交道的人。Fouad Matin在加入OpenAI安全团队前,曾运营一家安全创业公司长达六年。也正因如此,他对“代码一旦被执行,会发生什么”有着近乎本能的警觉。

他在开场介绍中提到,自己现在负责的是“agent robustness and control”,也就是智能体的鲁棒性与控制问题,而且直接参与了Codex以及Codex CLI的构建——这是一个可以让AI在用户本地直接运行代码的开源工具。正是这个过程中,让他意识到:一旦模型被允许执行代码,安全问题就不再是理论推演,而是工程现实。

他坦言,Codex带来了大量令人兴奋的能力,但同样也暴露出许多尚未被充分讨论的风险。“我们在构建Codex的过程中学到了很多东西,”他说,“但也清楚地看到,还有非常多工作要做。”这并不是自谦,而是一个经历过安全事故的人,对复杂系统天然保持的敬畏。

所有AI都会变成“代码执行智能体”

Fouad提出了一个明确而激进的判断:未来的每一个前沿模型,都会是代码执行智能体。他指出,当前几乎所有顶级实验室都在同时推进三件事:代码能力的基准、可用性,以及可部署性。目标早已不是“写出对的代码”,而是“用最高效的方式完成目标”。

他回顾了模型能力的跃迁:从不到一年前的o1,到后来更可靠的o3、o4 mini等推理模型,真正的限制已经不再是“模型能不能做”,而变成了“我们应该允许它做什么”。正如他所说:“新的约束不是能力,而是边界。”

一个关键转折在于,代码能力并不只服务于软件工程任务。在O3多模态推理的例子中,模型面对图片时,会主动选择运行代码:用OCR识别文字、裁剪图像,而不是仅靠语言在脑中“想”。更重要的是,提示词里并没有要求它这么做——模型只是意识到:如果我能跑代码,这是更高效的路径。

在他看来,这标志着AI agent架构的根本变化。过去那种复杂的“内循环”——判断任务类型、切换提示词、串联多个模型——正在消失。取而代之的是一个更简单、也更危险的模式:让模型自己决定何时写代码、何时运行代码。

当智能体能跑代码,安全圈称之为RCE

站在安全视角,这种能力有一个直白的名字:RCE(Remote Code Execution,远程代码执行)。Fouad没有用夸张的比喻,而是直接指出:这正是安全领域长期以来最敏感、也最具破坏性的能力之一。

他总结了几类最常见的失败路径。排在第一位的,是提示注入和数据外泄。模型在浏览文档、GitHub issue时,可能无意中读入恶意指令,把“不可信内容”带入本该高度信任的执行环境。如果此时它还能访问代码库或敏感数据,后果不堪设想。

第二类问题则更“人性化”:模型会犯错。它可能无意中安装了恶意依赖,写出了有漏洞的代码,或者在权限边界上越界,甚至发生沙箱逃逸。这些都不是模型“作恶”,而是它在复杂环境中做了一个看似合理、但实际上危险的决定。

Fouad强调,这正是代码执行智能体与传统聊天模型的本质区别:错误不再只是“说错话”,而是会真实改变系统状态。

OpenAI给出的三道安全护栏:沙箱、断网、人类在环

面对这些风险,OpenAI并非寄希望于模型“更聪明”,而是通过工程手段设立硬约束。Fouad重点分享了三类他们已经实践的防护措施。

第一是沙箱化。最理想的方式,是“给它一台自己的电脑”。在Codex和ChatGPT的实现中,模型运行在完全隔离的容器中,最终只产出一个PR。这被他称为“几乎能做到的最安全状态”。如果必须本地运行,例如使用Codex CLI,也至少要通过容器、应用级或操作系统级沙箱来限制行为。

第二是限制互联网访问。他直言,这是“最高概率的攻击向量”。一条看似无害的网页评论,就可能成为提示注入的入口。因此,默认断网或严格白名单,是降低数据外泄风险的关键手段。

第三,也是他反复强调的,是人类审查。无论是GitHub PR的代码审查,还是关键操作的人工确认,核心目标只有一个:确保人类始终掌握最终控制权。当然,他也承认,没有人愿意“每一个ls命令都点批准”。真正的挑战,在于避免完全放飞的“yolo模式”,同时又不把人类拖入无意义的点击地狱。

把复杂逻辑交给模型,但别把责任也交出去

在演讲后半段,Fouad展示了一种新的构建范式:与其在外部写大量软件逻辑,不如把决策权交给推理模型,只提供合适的工具。例如OpenAI在API中提供的“local shell”工具,允许模型在受控环境中直接执行命令。

这种方式的吸引力在于,它极大简化了系统设计。但Fouad的态度非常清醒:能力越集中,失控时的半径也越大。因此,工具本身的配置、权限边界,以及是否由OpenAI托管,都会直接影响安全性。

在总结时,他再次回到最朴素的建议:沙箱、限制网络、必要的人类审查。这些并不新鲜,却是在“智能体能自己跑代码”这个新时代里,少数已经被反复验证有效的原则。

总结

Fouad Matin的分享揭示了一个正在发生却常被低估的转变:AI不再只是给建议的助手,而是能直接改变系统状态的执行者。能力的跃迁几乎不可逆,但安全并非无解。真正成熟的智能体系统,不是让模型“更听话”,而是在架构层面默认不信任、限制权限、保留人类最终裁决权。对每一个准备部署代码执行AI的团队来说,这既是技术问题,也是责任问题。


关键词: AI Agent, 代码执行, AI安全, OpenAI, Codex

事实核查备注: 演讲者:Fouad Matin;公司:OpenAI;产品/模型:Codex、Codex CLI、ChatGPT、o1、o3、o4 mini;技术概念:RCE(Remote Code Execution)、沙箱化、提示注入、数据外泄、多模态推理;观点:所有AI将成为代码执行智能体;防护措施:容器/OS级沙箱、限制互联网访问、人类审查。