我给 7 个 AI 智能体布置了相同的 Swift 编程挑战。结果惨不忍睹!

BBetter Stack
컴퓨터/소프트웨어스마트폰/모바일AI/미래기술

Transcript

00:00:00大多数 AI 编程模型的共同痛点就是——它们完全搞不定 Swift。
00:00:06我们都见过那些惊艳的演示:AI 助手能在几秒钟内构建网页应用和 JavaScript 工具,
00:00:11但一旦涉及 Swift 代码,一切就迅速崩盘了。
00:00:16究竟为什么全球最聪明的模型会在 iOS 开发上栽跟头呢?
00:00:22这就是我们今天视频要探寻的主题。
00:00:25今天,我将让顶尖的编程助手接受同一项 Swift 应用编程挑战,看看
00:00:30哪些模型能真正胜任,而哪些只是徒有其名的“网页开发单面手”。
00:00:36先剧透一下——其中一个模型竟然完美通过了测试。
00:00:40到底是哪一个,稍后在视频中见分晓。
00:00:43这会很有趣,让我们开始吧。
00:00:50首先,我们来分析一下核心问题。
00:00:52为什么 AI 编程模型在 Swift 开发方面表现不佳?
00:00:56明确一点,这不只是我的个人观察。
00:00:59一项名为《评估大语言模型的代码生成能力——对比研究》的课题,
00:01:05针对 Python、Java 和 Swift 进行了测试,发现包括 GPT 和 Claude 在内的所有模型,
00:01:12在 Swift 上的表现始终低于 Python 或 Java。
00:01:17究其原因,主要有三大瓶颈,在 AI 触及苹果生态时限制了其发挥。
00:01:24首先是数据鸿沟。
00:01:25网络上充斥着开源的 JavaScript 和 Python 代码,但大量专业的
00:01:31Swift 代码都保存在私有或商业库中,秘不外宣。
00:01:36其次是 API 迭代过快。
00:01:38苹果以快速更新和推倒重来著称。
00:01:42SwiftUI 和 Swift 的并发模型在过去三年里的变化,比某些
00:01:47网页标准在十年里的变化还要大。
00:01:49由于大多数 AI 模型都有知识截止日期,它们往往会尝试用
00:01:54过时的规则编写 Swift 代码,这在最新版本的 Xcode 中根本无法运行。
00:01:59最后是基准测试偏向。
00:02:02我们今天测试的大多数模型,如通义千问(Qwen)或 Grok,都是针对特定测试进行训练的。
00:02:08它们被优化以通过像 HumanEval 这样的大型基准测试,而这些测试几乎完全侧重于
00:02:13Python 和基于网页的逻辑。
00:02:16由于缺乏针对复杂 iOS UI 的主流基准测试,这些模型
00:02:21在构建功能性应用的能力上并没有得到充分磨练。
00:02:25于是,我挑选了一些市面上最热门的 AI 编程模型,并给它们
00:02:30发送了完全相同的提示词。
00:02:32我要求它们使用 Swift 构建一个类似 Tinder 的简单应用,名叫 Dogtinder,
00:02:38在应用中会通过 Dog CEO API 展示不同的狗狗。
00:02:43你可以左右滑动来选择喜欢的狗狗,如果有匹配,
00:02:47就可以打开聊天界面,与匹配的狗狗交换有趣的私信。
00:02:52这个应用既可爱又足够简单,理论上助手可以完成,但也包含一些
00:02:58有趣的挑战,比如在原生 Swift 中实现滑动动画功能。
00:03:03测试过程我们将从表现最差的模型开始,一直排到最优秀的模型。
00:03:09排名垫底的是新款 Qwen 3 Coder Next 模型。
00:03:15通义千问一直宣传该模型是 Kimi 或 Claude 等重量级产品的开源替代品,
00:03:20模型尺寸更小但性能更强。
00:03:25虽然这在网页应用上可能是真的,但可惜在 Swift 挑战赛中它并没撑住。
00:03:32我尽可能地使用了该模型自带的 CLI 工具,
00:03:37在这个案例中,我使用 Qwen CLI 工具来执行挑战。
00:03:42生成代码后,我根本无法打开 Qwen
00:03:46生成的项目文件。
00:03:48于是我提示它修复尝试打开文件时出现的错误。
00:03:53但即便如此,Qwen 还是无法修复错误,反而给了我一份长长的自述文件,
00:03:58教我如何从头开始手动构建项目,然后将文件复制到
00:04:03项目文件夹中。我不想在这项挑战中手动操作,
00:04:08因为那会违背测试初衷。
00:04:09稍后你会看到,我注意到一些模型很难生成
00:04:14最终的完整项目文件集,以便我们能一次性成功打开。
00:04:20所以对于像 Qwen 这样的情况,我决定给它一个更简单的挑战。
00:04:26我手动创建了一个新的 iOS 应用项目,并认为现在是
00:04:31尝试 Xcode 最新版本内置的编程智能功能的好时机。
00:04:38这非常酷,因为 Xcode 终于有了自己的 AI 助手功能。
00:04:43我把它连接到我的 OpenRouter 账户,从下拉菜单中选择了 Qwen 3 Coder Next 模型,
00:04:49再次尝试挑战。
00:04:52即便有这么多辅助,Qwen 依然无法在第一次尝试中生成成功的项目,
00:04:57因为它在准确设置 Swift 模型方面遇到了一些问题。
00:05:02现在利用新的 AI 助手功能,我们可以高亮所有这些问题,
00:05:07然后让助手一次性生成所有选中问题的修复方案。
00:05:12最终,经过几轮提示让 Qwen 修复剩余问题后,我们终于
00:05:16得到了一个能运行的 Dogtinder 应用,但老实说,效果很差。
00:05:23它甚至无法从 Dog CEO API 加载图片,整个 UI 也非常
00:05:29原始且毫无吸引力。
00:05:32更不用说匹配部分还有一个漏洞,导致所有的匹配项
00:05:36都没有显示出来。
00:05:37所以遗憾的是,Qwen 完全没能通过 Xcode 应用挑战赛。
00:05:42接着是倒数第二名,Grok 的 Grok-Code-Fast 模型。
00:05:48这个模型我尝试通过 VS Code 上的 VS Copilot 扩展来使用,结果
00:05:53再次遇到了同样的问题:Grok 无法生成完整 Swift 项目包所需的
00:05:59所有项目文件。
00:06:02相反,它只给了我手动复制文件的说明。
00:06:06因此,我不得不再次回到 Xcode 的 AI 助手,通过 OpenRouter
00:06:12调用 Grok 模型。
00:06:14Grok 也遇到了一些问题,所以我不得不提示它两次来修复剩余的
00:06:19错误。
00:06:20但在那之后,它成功完成了应用。
00:06:23乍看之下,Grok 的设计做得非常糟糕。
00:06:27设计毫无新意,甚至没有
00:06:32查看匹配项的版块。
00:06:33我把 Grok 排在 Qwen 前面的唯一原因是,至少从功能角度看,
00:06:38一切都在运行,包括聊天功能。但坦白说,它们
00:06:44的表现同样糟糕,不相上下。
00:06:48这个应用没有任何吸引人或美观的地方。
00:06:51我不会说 Grok 挑战失败了,但它拿到的分数绝对是及格线边缘。
00:06:58排行榜的下一位是 Kimi 的最新款 Kimi K2.5 模型。
00:07:04Kimi 遇到了和 Qwen 同样的问题:使用原生 CLI 时虽然生成了
00:07:08项目文件,但我无法打开。
00:07:11即使通过 CLI 修复,问题依然存在。
00:07:15所以我再次在 Kimi 的测试中使用了内置的 Xcode AI 助手功能,
00:07:20由 OpenRouter 提供 Kimi K2 支持。
00:07:23Kimi 的表现与 Qwen 和 Grok 类似,因为第一次尝试也没能完成
00:07:29挑战。
00:07:31我不得不再次提示它修复剩余问题。
00:07:34但仅经过一轮修复,Kimi 就拿出了最终结果。
00:07:39这个版本比 Qwen 和 Grok 有了明显进步,至少我们得到了一个
00:07:44看起来真像 Tinder 的应用。
00:07:47它现在有了不错的左右滑动动画,以及侧面的“喜欢”和“没兴趣”标签,
00:07:53匹配时还有一个华丽的弹窗。
00:07:57但动画非常不稳定,有很多 Bug。
00:08:00有时候我甚至看不到图片,因为它漂浮在屏幕外。
00:08:05但至少 Kimi 能够正确存储匹配项。
00:08:08我们确实有了一个可以查看匹配项的版块,并能打开其中任何一个
00:08:12开始与特定的狗狗聊天。
00:08:14所以这比 Qwen 和 Grok 进了一大步。
00:08:18但如果与稍后在视频中看到的其他示例相比,我认为
00:08:22这仍然是一个平庸的结果。
00:08:25这就是为什么我把 Kimi 排在较低的位置。
00:08:29接下来是 Gemini 3 Pro。
00:08:31这很有意思,因为同一个模型在自带 CLI 和在
00:08:36Xcode AI 助手上的表现完全不同。
00:08:41先来看看使用 Gemini CLI 的结果。
00:08:45CLI 显示该模型仍处于预览模式。
00:08:49也许这就是核心问题所在。
00:08:50再次强调,当我使用给所有模型的相同提示词时,
00:08:55它最终没能给我项目文件。
00:08:59这是因为要创建 Xcode 项目文件,你必须先创建一个包含项目详情的 YAML
00:09:04文件,然后运行 CodeGen CLI 命令来生成。
00:09:09但出于某种原因,有些模型拒绝这样做或不知道该怎么做。
00:09:14不过,当我专门提示 Gemini 创建该文件时,它照办了。
00:09:18我只需要给它执行 CodeGen 命令的权限。
00:09:22打开项目后,出现了一个资源错误。
00:09:25但 Gemini 很快就修复了。
00:09:28解决之后,应用终于可以编译了。
00:09:31但结果出奇地糟糕,令人惊讶。
00:09:35它是崩坏的。
00:09:37匹配系统无法正常工作,到处都是 Bug。
00:09:41到这一步,我都打算给 Gemini 一个不及格了。
00:09:45但出于好奇,我决定再给 Gemini 一次机会,利用
00:09:50Xcode 原生 AI 助手运行通过 OpenRouter 调用的 Gemini 3 Pro 再次测试。
00:09:56结果这一次,它第一次尝试就成功了。
00:10:01不仅如此,应用还做得惊人地出色。
00:10:04我是说,设计非常棒。
00:10:06功能也全部到位。
00:10:08它甚至在顶部加了一个漂亮的小图标。
00:10:10老实说,这个版本的应用挑不出任何毛病。
00:10:14我很纳闷,为什么同一个模型的同一个提示词,通过
00:10:20不同的 AI 编程工具会产生如此截然不同的结果。
00:10:24但无论如何,Gemini 通过 Xcode 工具给出的版本让我印象深刻,
00:10:29而且我必须强调,是一次性生成的。
00:10:32因此我把 Gemini 的排名往上提了提,因为最终结果
00:10:37确实非常棒。
00:10:38好,接下来是排行榜第二名,GPT 5.3 Codecs。
00:10:43既然 OpenAI 有自家的 Codecs 应用,我决定在
00:10:48他们的应用里进行挑战。
00:10:49与之前看到的模型不同,GPT 5.3 确实能够
00:10:55在第一次尝试时就生成最终的成品。
00:10:58这已经是一个巨大的跨越。
00:11:00但我得说,应用本身并不怎么令人兴奋。
00:11:03它采用了非常单调的蓝色主题。
00:11:06最令我困扰的问题是,它无法让图片宽度自适应
00:11:11应用的边框。
00:11:13导致某些狗狗的图片容器过度拉伸,超出了
00:11:18应用的边界。
00:11:20这是 Codecs 无法正确处理的一个重大设计缺陷。
00:11:25但应用本身功能齐全,具备所有必要的 UI 元素。
00:11:29匹配版块也能正常运行,我们可以和狗狗聊天。
00:11:34我之所以给 GPT 5.3 这么高的排名,是因为它是
00:11:40第一个能在没有任何辅助、且无需预先设置 Xcode 项目的情况下,
00:11:46生成完整 Swift 项目包的模型。
00:11:50总体来看还不赖,但也不够出彩。
00:11:54最后,我们来看排行榜的第一名。
00:11:57我先给大家留点时间猜猜会是哪个模型。
00:12:01没错,我想大家都心里有数。
00:12:04当然是 Opus 4.6,它首轮就完美通过了挑战。
00:12:11我使用了与其他模型相同的提示词,但用的是他们自家的 Claude Code CLI
00:12:17工具,我只需要提供必要的权限。
00:12:20模型自动完成了一切,包括创建一个功能齐全的 Xcode 项目文件,
00:12:27完全不需要我预先设置。
00:12:29不仅如此,应用本身非常精美。
00:12:34设计感十足。
00:12:35动画流畅且自然。
00:12:37匹配版块和聊天窗口也都能正常工作。
00:12:41唯一缺少的只是像 Gemini 在前几个版本中生成的
00:12:46那种华丽图标。
00:12:48除此之外,这是所有版本中最漂亮的一个。
00:12:52而且它也是一次性生成的。
00:12:55所以我认为 Opus 的表现远超其他所有模型。
00:13:01它绝对实至名归,稳坐排行榜首位。
00:13:05等等,还没完。
00:13:07给大家准备了一个小福利。
00:13:09还有一个模型需要测评,它还没出现在
00:13:13排行榜上。
00:13:14就在我制作视频时,GLM 宣布发布了
00:13:18最新的 5 号模型,而且他们大胆宣称,这个模型在
00:13:23编程方面的得分甚至超过了 Opus 4.6。
00:13:26显然,我必须在同一个 Swift 挑战赛上对它进行测试。
00:13:31由于 GLM 没有自家的 CLI 工具,我再次通过 OpenRouter 连接 GLM 5,
00:13:37使用了 Xcode 的 AI 助手工具。
00:13:41首先,GLM 没有在第一次尝试中完成挑战。
00:13:45这就已经说明它的表现不如 Opus 4.6 了。
00:13:49其次,我经历了三轮 Bug 修复才终于让它成功编译。
00:13:56让我们看看 GLM 5 的最终结果。
00:13:59如你所见,在我看来这已经是不及格了。
00:14:03它似乎无法加载任何狗狗图片。
00:14:06没有滑动功能。
00:14:08更糟的是,它只循环显示了三只狗,然后就提示
00:14:13没有更多狗狗了。
00:14:15此外,在匹配版块,无法点击任何匹配项来
00:14:20打开与狗狗的聊天界面。
00:14:23显然,这一部分还没完工。
00:14:25根据这个结果,我们要把 GLM 排在什么位置呢?
00:14:29恐怕只能把它排在倒数第二,仅略高于 Qwen,
00:14:36因为这种表现完全无法接受,远不如其他模型。
00:14:42所以说 GLM 5 比 Opus 4.6 强,是一个相当大胆的说法。
00:14:47虽然我还没在其他编程任务上测试过这个模型,
00:14:52也许对于简单的网页开发项目,它的表现能和 Opus 4.6
00:14:57持平甚至更好。
00:14:59但它绝对不是一个适合 Swift 编程的模型。
00:15:02那么我们今天学到了什么?
00:15:04显然,虽然 AI 革命正以光速前进,但 Swift 问题对于这些模型而言
00:15:10依然严峻。Opus 4.6 和 GPT 5.3 证明了如果模型足够大、推理能力
00:15:18足够强,就能克服开源 Swift 代码数据的匮乏。
00:15:23但对于 Qwen 和 Grok 这样的模型,之前提到的数据鸿沟和
00:15:29API 迭代对它们的打击显然很大。
00:15:31我也很惊讶 Xcode 新的 AI 助手对 Swift 应用开发竟然如此有帮助。
00:15:36这在 Gemini 两个应用版本的差异中可见一斑。
00:15:40所以如果你是 iOS 开发者,使用苹果内部的 AI 工具
00:15:46可能会得到更好的结果。
00:15:47以上就是全部内容,希望你们喜欢这次排行榜解析。
00:15:51我认为这引发了一个更广泛的讨论:也许我们
00:15:55应该开始拥有特定语言的模型。
00:15:57因为显然很多模型更倾向于网页应用、JavaScript
00:16:03或 Python 项目。
00:16:04但对于一些特定的编程方案,我们可能需要定制化的编程模型。
00:16:09你对此有什么看法?
00:16:11请在下方评论区告诉我们。
00:16:13朋友们,如果你喜欢这个视频,请点击视频下方的
00:16:18点赞按钮让我知道。
00:16:19也不要忘记订阅我们的频道。
00:16:22我是来自 Better Stack 的 Andris,我们下个视频再见。

Key Takeaway

本次 Swift 编程挑战显示,尽管 AI 领域进步神速,但仅有 Opus 4.6 等顶级模型能处理复杂的 iOS 开发任务,而大多数模型仍局限于网页开发逻辑。

Highlights

AI 模型在 Swift 编程上表现不佳的三大主因:数据鸿沟、API 迭代过快以及基准测试偏向。

多数模型(如 Qwen 和 Grok)在生成完整的 Xcode 项目文件方面存在显著困难。

Opus 4.6 在测试中脱颖而出,是唯一一个能够一次性生成精美且功能完备应用的模型。

Gemini 3 Pro 在不同工具下的表现差异巨大,其在 Xcode 原生助手中的表现远优于其自带 CLI。

新发布的 GLM 5 在 Swift 挑战中表现惨淡,未能达到其宣传的超越 Opus 的水平。

测试揭示了专用编程语言模型在应对苹果闭源生态系统时的必要性。

Timeline

Swift 编程的 AI 困境分析

视频开头指出了 AI 模型在 Swift 语言开发中的普遍痛点,即它们在网页开发上很强但在 iOS 上往往崩盘。演讲者引用了对比 Python、Java 和 Swift 的研究报告,证明了 Swift 是目前大语言模型的薄弱环节。分析归纳了三大瓶颈:开源代码匮乏导致的数据鸿沟、苹果 API 更新过快导致的知识过时,以及基准测试过度侧重 Python 逻辑的问题。这部分内容为后续的实测挑战奠定了理论基础,解释了为什么即使是最聪明的模型也可能在 Swift 上栽跟头。理解这些背景有助于开发者在使用 AI 辅助编程时保持合理的预期。

挑战设置与垫底模型的表现

演讲者设计了一个名为 "Dogtinder" 的 Swift 应用挑战,要求模型利用狗狗 API 实现滑动匹配和聊天功能。排名垫底的是 Qwen 3 Coder Next 和 Grok-Code-Fast,它们甚至无法生成可直接打开的项目文件。Qwen 在多次尝试后生成的应用 UI 极其原始且存在功能漏洞,完全没能通过测试。Grok 虽然在功能性上略好一点,实现了基本的聊天功能,但其设计毫无美感且缺乏关键的匹配版块。这两个模型的表现证明了开源模型在处理特定苹果开发生态时的局限性。

中游模型 Kimi 与 Gemini 的测评

Kimi K2.5 的表现优于垫底模型,它生成了一个视觉上更接近 Tinder 的界面,但在动画稳定性和图片显示上仍有大量 Bug。随后测试的 Gemini 3 Pro 展现了有趣的差异:其 CLI 版本表现极差,但通过 Xcode AI 助手运行的版本却惊人地完美。Gemini 在第二次尝试中一次性生成了设计精美且功能全备的应用,甚至还添加了自定义图标。这表明 AI 辅助工具的集成方式对最终代码产出的质量有着不可忽视的影响。演讲者因此将 Gemini 的排名大幅提升,认为它是本次测试中的黑马。

巅峰对决:GPT 5.3 与榜首 Opus 4.6

GPT 5.3 Codecs 排名第二,它是第一个无需任何预设即可直接生成完整 Swift 项目包的模型,尽管在图片适配等细节设计上存在缺陷。真正的冠军是 Opus 4.6,它利用 Claude Code CLI 展示了极强的工程能力,一次性完成了所有复杂的设置。Opus 生成的应用不仅功能完备,而且在 UI 设计和动画流畅度上达到了专业水平。演讲者对 Opus 的评价极高,认为其强大的推理能力成功克服了 Swift 数据不足的难题。这一结果确立了 Opus 在目前 AI 编程领域的领先地位。

GLM 5 特别测评与总结建议

视频最后对宣称超越 Opus 的 GLM 5 进行了“乱入”测试,结果却令人大跌眼镜。GLM 5 经历了三轮修复才勉强编译,且最终产品无法加载图片、没有滑动功能,表现甚至接近垫底。演讲者总结认为,目前的 AI 革命在 Swift 领域仍面临严峻挑战,高端模型如 Opus 和 GPT 凭借强逻辑弥补了数据缺口。他建议 iOS 开发者优先使用苹果内置的 AI 助手工具,因为其上下文关联能力更强。最后,演讲者提出了是否需要“特定语言专用模型”的思考,并鼓励观众订阅频道以获取更多前沿测评。

Community Posts

View all posts