OpenAI Codex 负责人:为什么AI能写出完美代码,却仍做不好设计?

,却仍做不好设计?

图像

AI 已经可以在几分钟内生成一个完成度很高的产品界面。

它能搭建多页面原型、编写前端组件、补全交互状态,甚至直接做出一个可以运行的产品。

但这些设计往往有一个共同问题:

看起来没错,却总觉得不够对。

布局完整、配色合理、组件精致,却缺少鲜明的产品性格;能快速生成几十个方案,却无法稳定判断哪个方案真正适合当前产品。

相比之下,AI 在编程上的进步似乎要快得多。

为什么 AI 能越来越稳定地写出可运行的代码,却仍然不擅长判断什么是“好设计”?

OpenAI Codex 应用产品与工程负责人 Andrew Ambrosino 在一场关于 AI 如何重塑产品工作的访谈中,给出了一个非常有启发性的解释:

问题不只是模型还不够强,而是设计本身就比代码更难训练、更难评估,也更依赖人的品味和上下文判断。

01. 代码有“裁判”,设计没有

代码拥有一套相对明确的反馈机制。

它能否编译、测试是否通过、功能能否运行、是否完成指定任务,这些问题通常都有可以验证的结果。

即使软件工程不存在唯一答案,模型至少能够快速获得反馈:

  • 这段代码能不能运行;
  • 这次修改有没有修复问题;
  • 输出是否符合预期;
  • 性能和稳定性有没有改善。

这些信号可以形成自动化或半自动化的训练闭环。

模型生成代码,系统运行测试,然后根据结果继续调整。整个过程相对容易规模化。

设计却没有这样的“编译器”。

一个页面是否属于好设计,无法只依靠某个指标判断。它需要同时回答很多问题:

  • 是否符合产品定位;
  • 是否适合目标用户;
  • 是否匹配真实使用场景;
  • 信息层级是否合理;
  • 交互是否符合用户预期;
  • 视觉和动效是否准确表达功能语义;
  • 是否与产品中的其他页面保持一致;
  • 是否为未来扩展留下空间。

更麻烦的是,这些标准之间还可能互相冲突。

一个界面可以很好看,却不适合这个产品;可以非常易用,却削弱品牌辨识度;可以符合现有习惯,却限制未来创新。

因此,设计不是简单判断“对”或“错”,而是在特定语境中判断“是否合适”。

Andrew 认为,设计比软件更难评分。

训练模型识别什么是好设计、什么是坏设计,需要更多人工参与和主观反馈。而人类的品味、经验和上下文理解,很难被规模化地转化为稳定、清晰的奖励信号。

这意味着,AI 已经可以承担大量设计执行,却还不能稳定完成设计判断。

它可以快速生成方案,但仍然需要人决定哪个方案值得继续。

02. 为什么 AI 的代码能力进步得更快?

这不仅是设计本身更难训练,也与 AI 实验室过去的投入顺序有关。

模型公司通常会优先提升那些能够直接加速 AI 研究的能力,编程就是其中最典型的一项。

如果模型能够编写更准确的代码,研究人员就可以更快完成实验、搭建内部工具、处理数据、训练模型和验证想法。

模型的代码能力越强,AI 研究本身就可能变得越快,从而形成一个明显的飞轮:

更强的代码能力 → 更高的研究效率 → 更快的模型迭代 → 更强的代码能力。

设计能力没有直接进入这个飞轮。

设计当然重要,但它不像代码一样,能够立即提高模型研究和工程开发的速度。因此,在早期能力建设中,编程往往获得了更多资源,也拥有更成熟的评价体系。

Andrew 认为,这部分差距属于阶段性问题。

随着模型公司开始重视设计训练,引入更多高质量数据、视觉反馈和人工评估,AI 的基础设计能力会继续提升。

未来模型生成的界面会更加完整,也会减少很多明显的布局、视觉和交互问题。

但即使这些问题逐渐被解决,也不代表 AI 已经真正理解设计。

因为设计还有一些更难训练的部分。

03. AI 擅长模仿风格,却很难创造新的设计语言

Andrew 在访谈中以 Linear 为例。

Linear 的产品和网站设计影响了过去几年大量软件产品。许多新网站开始使用相似的深色界面、渐变、卡片、字体、留白和动效。

如果一个模型第一次能够生成接近 Linear 水平的页面,我们可能会觉得非常惊艳。

但如果它每次都输出类似 Linear 的设计,它解决的仍然只是模仿问题,而不是设计问题。

软件工程通常鼓励复用经过验证的模式。

成熟的架构、通用组件和标准化方案能够降低错误,提高可靠性。很多时候,工程师并不需要发明一种全新的技术结构。

设计却不完全一样。

用户对好设计的判断会受到文化、时代和审美环境的影响。一个过去非常新鲜的视觉风格,一旦被大量复制,很快就会变得普通。

因此,设计不仅需要识别什么已经被证明有效,还需要判断:

什么时候应该继续沿用,什么时候必须创造新的表达方式。

这也是为什么很多 AI 生成的界面会呈现出明显的“AI 味”。

问题并不是这些界面难看,而是它们通常把当前流行的设计元素组合在一起:

  • 大标题;
  • 渐变背景;
  • 半透明卡片;
  • 圆角容器;
  • 柔和阴影;
  • 标准化的 SaaS 布局。

最后得到一个完成度很高、看起来没有明显问题,却缺少独特性的结果。

模型的训练方式决定了它擅长从大量已有案例中寻找高概率答案。

但真正优秀的设计,有时恰恰来自一个还没有被大量验证的低概率答案。

AI 擅长生成“大家通常会怎么做”,却不一定知道“这个产品此刻应该怎么做”。

04. 品味不只是审美,而是系统判断

人们谈到设计品味时,很容易把它理解成视觉审美:

配色是否高级、字体是否合适、间距是否舒服、动效是否精致。

但 Andrew 对品味的定义更广。

在他看来,品味不仅包含审美,还包括一系列系统性判断:

  • 这个产品到底应该是什么;
  • 这个功能是否值得做;
  • 它属于哪条产品主线;
  • 应该用文档、原型还是正式产品来表达;
  • 某个交互是否符合它的功能语义;
  • 哪些方案应该保留;
  • 哪些方案应该合并;
  • 哪些看起来不错的方案应该直接放弃。

因此,品味并不是“我觉得这个页面好不好看”。

它更接近一种综合判断能力:

知道该做什么、为什么这样做,以及怎样把它放进整个产品系统中。

当 AI 可以快速生成几十个方案时,真正昂贵的部分不再是实现,而是筛选。

过去,团队可能因为开发成本太高,只能选择少数几个方案进入实现阶段。现在,90 个人可能同时围绕同一个功能做出 90 个可运行的版本。

此时最重要的问题已经不再是:

这个功能能不能做出来?

而是:

这 90 个方案中,哪个方向真正值得继续?

这正是品味开始变得更加重要的原因。

05. 设计不只是一个画面,还包括背后的抽象关系

AI 在设计上面临的另一个难题,存在于视觉和代码之间。

模型不仅要知道一个组件应该长什么样,还要理解不同组件在整个产品系统中的语义关系,以及这些关系应该如何映射到代码结构中。

两个组件看起来可能不同,却承担相同的信息层级或交互作用;另一些组件看起来相似,却代表完全不同的状态和操作结果。

一个成熟的设计系统需要判断:

  • 哪些规则应该共享;
  • 哪些组件属于同一种语义;
  • 哪些差异只是视觉变化;
  • 哪些差异代表不同的产品行为;
  • 产品扩展后,如何继续保持一致。

Andrew 用品牌改版举了一个例子。

浅层的做法,是找到产品里的几百个组件,再逐一修改颜色、字体和样式。

更深层的做法,是提前建立正确的设计语义和代码抽象。品牌规则发生变化后,只需要调整上层系统,所有相关组件就能同步更新。

这已经不是单纯的视觉生成问题。

它同时涉及:

  • 产品设计;
  • 交互语义;
  • 设计系统;
  • 前端架构;
  • 代码抽象;
  • 长期维护。

AI 可以做出一个完成度很高的独立页面,但要让几十个页面、多个状态和长期迭代保持一致,它需要理解的不是“当前屏幕上有什么”,而是:

整个产品为什么以这种方式组织。

这正是当前模型仍然难以稳定处理的抽象层。

06. AI 改变了设计流程,但没有消灭设计判断

传统设计流程通常是:

用户研究 → 方案发散 → 方案收敛 → 制作原型 → 工程实现。

这套流程背后有一个重要前提:

实现很贵。

团队只有有限的工程资源,因此必须在真正开发之前尽量降低风险,把问题、需求和方案想清楚。

AI 正在改变这个前提。

设计师不再只能在 Figma 中模拟一个功能,而是可以直接生成可运行版本,放进简化代码库甚至真实产品中测试。

团队可以更快地:

  • 构建;
  • 使用;
  • 收集反馈;
  • 推翻方案;
  • 重新实现。

“先做出来再验证”正在取代一部分“全部想清楚再开发”。

但这并不意味着设计过程不再重要。

恰恰相反,AI 带来了一个新的风险:

原型看起来太像正式产品。

一个原本只用来探索方向的方案,可能很快就被 AI 做得非常完整。它拥有精致的视觉、流畅的交互,甚至可以直接运行。

完成度越高,团队越容易误以为方向已经确定。

接下来的讨论会不自觉地围绕这个版本继续优化,而不是重新思考:

  • 这个问题值得解决吗;
  • 这个方向正确吗;
  • 是否还有更好的产品模型;
  • 这个方案是否符合用户真正的需求。

原型的视觉完成度,可能制造一种虚假的确定性。

因此,传统设计流程中的具体工具和步骤可以改变,但团队仍然必须明确当前处于哪个阶段:

是在理解问题、探索方向、测试交互,还是准备正式发布?

Andrew 的判断是:

与固定工具和媒介绑定的设计流程可能正在过时,但对产品目标、判断标准和阶段的理解,比过去更加重要。

07. 当生成界面变得容易,设计师真正稀缺的能力是什么?

随着模型继续进步,生成设计会越来越容易。

过去,设计师可能需要几天时间完成几个方案;未来,模型可以在很短时间内生成几十个完成度很高的版本。

这会让设计工作的重心发生变化:

从制作方案,转向评价方案; 从绘制页面,转向筛选方向; 从优化局部,转向建立系统; 从掌握工具,转向理解产品。

设计师仍然需要执行能力,但真正决定其价值的,会越来越多地变成以下几种能力:

1. 定义正确的问题

不是立即生成一个页面,而是先判断用户真正遇到的问题是什么,以及这个问题是否值得解决。

2. 判断方案是否符合产品目标

一个方案完整、精致、好看,并不意味着它适合当前产品。

3. 在大量方案中筛选方向

当生成方案的成本接近于零,判断什么应该被保留会比生成本身更重要。

4. 创造新的表达方式

不能只依赖已有模式,而要在必要时提出更适合产品的新交互和新设计语言。

5. 建立长期可扩展的系统

让视觉、语义、交互和代码形成一致的抽象,而不是只完成一个孤立页面。

1. AI 会生成设计,但还不擅长判断设计

AI 当前在设计上的限制,可以归纳为四点:

  1. 设计很难建立像代码一样清晰的评价机制;
  2. 设计能力过去没有获得与代码能力相同的研究投入;
  3. 真正的设计需要理解文化、语境和新颖性;
  4. 优秀产品需要建立视觉、语义和代码之间的系统抽象。

所以,AI 在设计上的问题,并不是完全做不出好看的界面。

它已经可以承担大量执行工作:生成布局、编写组件、扩展页面、尝试风格、制作原型。

它真正不稳定的部分,是判断:

  • 这个产品应该是什么;
  • 为什么应该采用这种方式;
  • 这个方案是否符合当前语境;
  • 哪个方向值得继续投入;
  • 哪些看起来不错的东西其实应该被删除。

当“做出一个界面”变得极其容易之后,设计工作的核心不会消失,而是会向更上游移动。

工具会变化,流程会变化,设计师亲手绘制的内容可能会越来越少。

但真正决定设计质量的,依然是人的判断力、系统思维和创造力。

AI 可以生成越来越多看起来正确的界面。

真正稀缺的,是判断什么才是正确界面的能力。