API中转站 260+AI大模型 0.95一刀 立即进入

AI代码界新王登基?Gemini 2.5 Pro vs Claude 3.7 Sonnet 实测大比拼!

嘿,各位AI爱好者和代码达人们!科技圈的风向标又转了!就在5月6号,谷歌放出了自家的大宝贝——Gemini 2.5 Pro,号称在编码、推理乃至方方面面都要"拳打老师傅"。而我呢,最近一直在用二月底发布的Claude 3.7 Sonnet (thinking),那体验,简直丝滑!所以,问题来了:新欢旧爱,到底谁才是编码界的真·王者?今天,咱们就来一场硬核对决!

⏱️ 懒人包 / 一句话总结

如果你赶时间,想直奔主题?那我告诉你:果断选择 Gemini 2.5 Pro!它在编码方面更胜一筹,拥有高达100万的上下文窗口(Claude只有20万,想想看,这就像一个人的短期记忆容量大了5倍!),而且重点是——免费(这可太香了!)。当然啦,Claude 3.7 Sonnet也不是吃素的,实力依然强劲,只是在Gemini 2.5 Pro的光芒下,性价比就没那么突出了。

就在不久前,Claude 3.7 Sonnet 还是各种模型对比中的"默认答案",稳坐头把交椅好一阵子。但风水轮流转,Gemini 2.5 Pro 这次是来势汹汹,直接抢班夺权了!

模型对比图
AI模型江湖,新人换旧人

🌟 Gemini 2.5 Pro: 新晋"卷王"档案

Gemini 2.5 Pro,这个实验性的"思考型"模型,发布不到一周就成了科技圈的"顶流"。Twitter (X)、YouTube上到处都是它的身影,简直是现象级网红,谷歌模型里头一次有这么大排场的!

而且,它一出场就在 LMArena(一个AI模型竞技场,你可以理解为AI界的"武林排行榜")上登顶No.1!这意味着什么?意味着它在编码、数学、科学、图像理解等多个领域都把其他模型按在地上摩擦。

LMArena排行榜
Gemini 2.5 Pro 登顶 LMArena

最让人瞠目结舌的是,Gemini 2.5 Pro 拥有 100万 token 的上下文窗口,而且未来还会升级到200万!🤯 这是什么概念?相当于你可以把一本超厚的书(比如整套《哈利波特》)扔给它,它都能记住里面的细节,并基于此进行对话或创作,简直是"过目不忘"!

不信?可以看看油管大神 Theo-t3 的分享,他对Gemini 2.5 Pro的评价是"INSANE"(太疯狂了):

在专门衡量编码能力的SWE bench测试中,它的准确率达到了约63.8%,这比我们之前的老牌强手Claude 3.7 Sonnet(约62.3%)还要高。看来"编码新王"的称号不是白叫的。

SWE Bench对比
编码能力对比 (SWE Bench)

谷歌还分享了一个用Gemini 2.5 Pro一行指令制作恐龙小游戏的演示,简直不要太酷:

当然,它不只是个"偏科生"。在推理、数学和科学等方面的基准测试也相当亮眼,号称是个"六边形战士"。🤷‍♂️ 不过,今天咱们主要还是聚焦在它的老本行——编码能力上,看看它和Claude 3.7 Sonnet的对决结果如何。

多领域能力基准测试
Gemini 2.5 Pro 多领域能力展示

🥊 擂台赛开始:编码能力大比拼!

是骡子是马,拉出来遛遛!我们将通过4个不同类型的编码挑战来检验这两位"选手"的实力,主要涉及Web开发、动画制作以及一个烧脑的LeetCode算法题。

第一回合:✈️ 飞行模拟器挑战

挑战任务: 用JavaScript创建一个简单的飞行模拟器。模拟器要有一架能在平坦跑道上起飞的基础飞机,通过键盘(如方向键或WASD)控制飞机移动。同时,生成一个类似《我的世界》那种方块风格的简单城市场景。

Gemini 2.5 Pro 的表现:

代码传送门:点击查看

效果演示:

Gemini 2.5 Pro 制作的飞行模拟器

不得不说,Gemini 2.5 Pro 这波操作稳得很!飞机移动、方块城市,我提的需求它都完美实现了,几乎挑不出毛病。这一局,我给它打10分满分!

Claude 3.7 Sonnet 的表现:

代码传送门:点击查看

效果演示:

Claude 3.7 Sonnet 制作的飞行模拟器

这边Claude的表现就有点小状况了。飞机起飞后机头居然是侧着的,有点迷惑。而且一起飞就失控,直接飞出城市边界了。总的来说,这个飞行模拟器离"能玩"还有点距离。

第一回合小结: Gemini 2.5 Pro 一出手就直击靶心,稳稳拿下。Claude 3.7 Sonnet 的代码虽然有些小问题,但也不是不能修复,只是离预期效果和Gemini的成品还是有明显差距。

第二回合:🧩 魔方求解器挑战

这可是个硬骨头,很多LLM都在这上面栽过跟头。我之前试过不少模型,没一个能完美搞定的。看看这两位高手表现如何。

挑战任务: 用JavaScript和Three.js构建一个简单的3D魔方可视化及求解器。魔方是标准的3x3结构和颜色。需要一个"打乱"按钮随机打乱魔方,以及一个"求解"功能,能一步步动画展示求解过程。允许鼠标控制视角旋转。

Gemini 2.5 Pro 的表现:

代码传送门:点击查看

效果演示:

Gemini 2.5 Pro 制作的魔方求解器

太惊艳了!这么复杂的任务它居然一次就搞定了!配合它那100万token的"超大内存",我仿佛看到了AI编程的无限可能。

Claude 3.7 Sonnet 的表现:

代码传送门:点击查看

效果演示:

Claude 3.7 Sonnet 制作的魔方求解器

又一次,有点小失望。Claude 3.7 Sonnet 和其他一些LLM一样,在颜色处理上出了错,而且完全没能解开魔方。我尝试引导它修正,但效果不佳。

第二回合小结: Gemini 2.5 Pro 再次展现强大实力,轻松领先。最关键的是,它一次就成功了!而Claude 3.7 Sonnet 在这个高难度挑战上表现不尽如人意,有点可惜,毕竟它也曾是编码界的佼佼者。

第三回合:🌀 旋转四维超正方体内弹跳小球

听起来是不是很科幻?这个挑战有点抽象,看看它们能不能理解并实现。

挑战任务: 创建一个简单的JavaScript脚本,可视化一个在旋转的四维超正方体(Tesseract)内部弹跳的小球。当小球撞击到超正方体的某个面时,高亮显示该面以指示碰撞。

Gemini 2.5 Pro 的表现:

代码传送门:点击查看

效果演示:

Gemini 2.5 Pro 制作的四维超正方体弹球

完美!我几乎找不到任何瑕疵。小球的运动、碰撞物理效果都非常到位,连我要求的碰撞面高亮也实现了。这个免费的模型在编码方面简直强到离谱!🔥

Claude 3.7 Sonnet 的表现:

代码传送门:点击查看

效果演示:

Claude 3.7 Sonnet 制作的四维超正方体弹球

哇哦!Claude 3.7 Sonnet 终于扳回一城,正确完成了任务!它还给每个面加上了颜色,虽然我没要求这个 🤷‍♂️。不过,主要功能都实现了,没啥好抱怨的。

第三回合小结: 这一局,两位选手都出色地完成了任务,实现了所有要求。我不会说我更喜欢Claude 3.7 Sonnet的输出,但它确实也下了一番功夫,表现可圈可点。Gemini 2.5 Pro 依然是那么的精准高效。

第四回合:🧠 LeetCode 算法难题

最后一关,我们来点硬核的。用一道通过率只有 14.9% 的LeetCode难题来考验它们:放置三个不互相攻击的车的最大价值和

坊间传闻 Claude 3.7 Sonnet 在解决LeetCode问题上非常有一套。

题目描述:
给你一个 m x n 的二维数组 board ,它代表一个棋盘,其中 board[i][j] 是单元格 (i, j) 的数值。
同一行或同一列的车(Rook)会相互攻击。你需要在棋盘上放置三个车,使得这些车互不攻击。
返回放置的三个车所在单元格的数值之和的最大值。

示例 1:
Input: board = [[-3,1,1,1],[-3,1,-3,1],[-3,2,1,1]]
Output: 4
解释: 我们可以将车放置在 (0, 2), (1, 3), (2, 1),数值之和为 1 + 1 + 2 = 4。

示例 2:
Input: board = [[1,2,3],[4,5,6],[7,8,9]]
Output: 15
解释: 我们可以将车放置在 (0, 0), (1, 1), (2, 2),数值之和为 1 + 5 + 9 = 15。

约束条件:
3 <= m == board.length <= 100
3 <= n == board[i].length <= 100
-109 <= board[i][j] <= 109

Gemini 2.5 Pro 的表现:

鉴于它在前三轮轻松过关的表现,我对它抱有很高的期望。

代码传送门:点击查看

它解答这道题花了不少时间,而且生成的代码有点复杂,不太好理解。感觉有点"杀鸡用牛刀"了。但最重要的是,它能答对吗?

不出所料,它一次就解决了这个高难度LeetCode问题!这可是我当年学数据结构和算法时卡住我的难题之一。看到AI这么轻松搞定,心情有点复杂啊!😂

Gemini 2.5 Pro LeetCode提交结果
Gemini 2.5 Pro LeetCode 提交通过

Claude 3.7 Sonnet 的表现:

我希望这个模型能在这道题上大放异彩,毕竟在之前的编码测试中,Claude 3.7 Sonnet 在LeetCode题目上都表现得相当不错。

代码传送门:点击查看

它确实写出了正确的代码逻辑,但在LeetCode上提交时却因为"超时"(Time Limit Exceeded, TLE)而失败。不过,如果要比较代码的简洁性,Claude生成的代码更容易理解一些。

Claude 3.7 Sonnet LeetCode提交结果
Claude 3.7 Sonnet LeetCode 提交超时 (TLE)
第四回合小结: Gemini 2.5 Pro 正确解答了问题,并且代码的时间复杂度符合预期。而 Claude 3.7 Sonnet 虽然逻辑正确,但栽在了时间复杂度上,导致超时。不过从代码可读性来说,Claude生成的代码似乎更友好一些。

🏆 最终裁决与展望

对我而言,Gemini 2.5 Pro 无疑是本次对决的胜出者!我们比较了这两款号称编码能力顶尖的模型。从数据上看,最显著的差异在于Gemini 2.5 Pro拥有更大的上下文窗口。而且别忘了,这还只是个实验性模型,未来还有很大的提升空间。

想象一下,当它的上下文窗口升级到200万token时,那性能得有多恐怖?处理超大型代码库、理解复杂项目文档,可能都会变得轻而易举。

谷歌最近在AI模型领域真是火力全开,先是推出了效果惊人的轻量级模型Gemma 3 27B,现在又来了Gemini 2.5 Pro这个"性能怪兽"。看来AI的进化速度,远比我们想象的要快!

顺便一提: 如果你对将这类强大的语言模型(LLM)接入实际应用感兴趣,欢迎关注三少科技博客,我们会持续分享AI技术的最新应用和实践经验。

那么,对于这两款模型,你有什么看法?你更看好谁的未来?欢迎在评论区留言讨论!👇