关于ZAKER 合作
钛媒体 52分钟前

从混元到智谱,六大国产大模型,编程“手艺”到底怎么样?

文 | 锦缎

人们总是说,AI 一出来,程序员都要失业了,这说法是真是假?

为了搞清楚这个问题,这次我们设计了一场 "AI 程序员能力挑战赛 "。

别担心看不懂,我们会把所有测试都比喻成你最熟悉的生活任务。

这一次,我们尽可能选择了擅长编程的参赛选手:

深度求索:DeepSeek-R1

腾讯:Hunyuan-TurboS

阿里:Qwen3-Coder

智谱:GLM-4.5

月之暗面:Kimi-K2

百度:ERNIE-X1-Turbo

老规矩,开启深度思考,关闭联网搜索。

这次的 "AI 程序员能力挑战赛 ",采用考驾照的方式。

我们将通过四个 " 科目 ",从易到难,全方位考察参赛选手们的编程能力。

01 科目一:理论知识笔试(基础知识问答)

在真正上路(编写代码)前,我们得先测试一下 AI 参赛选手们的基础知识是否牢固。因此,我们选择了一些编程行业的 " 常识题 "。

测试题目 1:" 请用一个初中生能听懂的比喻,解释一下什么是‘面向对象编程’(OOP)?"

" 面向对象编程 " 是程序员行业内的一个核心哲学。

专业化的表述 " 封装、继承、多态 ",别说初中生了,不少大学生和研究生都得犯迷糊。

这道题考的不是 AI" 懂不懂 ",而是会不会 " 教 "。

测评结果:

各模型选择了不同的生活场景,对面向对象编程中的经典概念进行讲解:

其中,Qwen3-Coder 和 Kimi-K2 的讲解全面而生动,解释质量、准确性和启发性较高。

DeepSeek-R1、GLM-4.5 和 ERNIE-X1-Turbo 对于关键的概念有所省略,但仍然能做到易于理解。

本轮评分:

测试题目 2:" 解释一下‘递归’是什么,并说明使用它时需要注意什么?"

" 递归 " 是编程领域中一种 " 自己调用自己 " 的奇特技巧,优雅但危险。

用好了,程序的可读性和性能都会得以提升;用不好,程序很容易陷入无限循环,直到内存耗尽而崩溃。

各模型异曲同工地都选择了俄罗斯套娃作为比喻之一。

同时,详细地描述了使用递归时的限制条件。

所有模型都能对专业名词进行正确解释,且给出的比喻基本相同。

其中,Qwen3-Coder 和 GLM-4.5 还提及了递归的应用场景,使回答更加充实;

而 DeepSeek-R1、Hunyuan-TurboS 和 ERNIE-X1-Turbo 在没有提及其他概念的情况下,将递归与循环和迭代做了对比,也是亮点之一。

测试题目 3:" 进程和线程有什么区别和联系?举个例子说明。"

这是程序员面试的基础题目之一,涉及计算机如何同时处理多个任务的底层原理。

能讲清楚这两个概念,证明 AI 的计算机知识体系相当完备。

同样地,各模型首先给出简单的比喻,然后从多个方面对比二者的区别和联系:

与上一题类似,各模型给出的比喻大致相同。

除 Kimi-K2 外,各模型均从多个角度对比了进程与线程之间的区别和联系,内容充实。

其中 GLM-4.5 给出的答案篇幅较长,包含了简单的比喻和专业的解释,覆盖用户范围更广。

与之相反,Kimi-K2 给出的回答却十分简短,虽然易于理解,但并未揭示二者的本质。

科目一成绩:

理论考试环节,各模型都展现出了碾压性的实力。

这些本身就是计算机领域顶尖水平的 " 考生 ",知识储备渊博,表达清晰,比喻也很精妙。

从评分来看,Qwen3-Coder 和 GLM-4.5,在理论方面略胜一筹。

如果光看笔试成绩,这些 AI 恐怕已经可以胜任本科生的计算机 " 私人教师 "。

不过,程序员的世界,终究还要靠代码说话。

02 科目二:动手实践课(入门级编程任务)

理论知识过完,就来到基础操作环节。

这就像科目二中的 " 倒车入库 " 等环节,需要手眼协调,考验基本功是否扎实。

测试题目 1:" 写一个经典的‘ FizzBuzz ’问题:从 1 打印到 100,如果是 3 的倍数就打印‘ Fizz ’,5 的倍数就打印‘ Buzz ’,同时是 3 和 5 的倍数就打印‘ FizzBuzz ’,其他情况直接打印数字。"

从我们的角度看,这不过是一道小学生级别的数学题。

事实上,这类编程入门题能够快速判断 AI 的编程逻辑。

而我们作为 " 考官 ",还要看看 AI 能不能给出我们一下子想不到的答案。

先说结论,AI 生成的代码均可正确运行,给出的答案共有两种:

一是逆向逻辑:先判断 15 的倍数,再分别判断 3 和 5 的倍数;

二是字符串拼接:先判断 3 的倍数后输出字符串 Fizz,再判断 5 的倍数后直接拼接 Buzz。

DeepSeek-R1、GLM-4.5、Kimi-K2 和 ERNIE-X1-Turbo 都只给出了第一种答案。

Hunyuan-TurboS 和 Qwen3-Coder 则成功给出了两种答案,智能程度满分。

测试题目 2:" 写一个函数,用来判断一个输入的正整数是不是‘素数’(也叫质数)。"

引入素数的概念,相比上一题稍难一些,人类可能难以一眼看出解法。

但细想一下,实际上核心思路很简单:

判断一个数是不是素数,没必要从 2 一直除到 n-1。只需要除到它的 " 平方根 " 就行了。

这次,要考验 AI 对数学概念的程序化转换能力和浅层次的算法优化意识。

所有模型都给出了正确的算法;

除 Hunyuan-TurboS 外,所有模型均给出了可运行的代码;

除 Hunyuan-TurboS 和 Kimi-K2 外,其余模型均给出了时间复杂度。

值得关注的是,Hunyuan-TurboS 和 GLM-4.5 均指出在数字较大时可以使用 Miller-Rabin 素性测试等更高效的算法。

而 Qwen3-Coder 不仅给出了正确的算法,还给出了适合批量判断的埃拉托斯特尼筛选法,也给出了时间复杂度。

测试题目 3:" 写一个函数,判断一个字符串是不是‘回文’。"

这道题在一定程度上属于 " 开放式 " 题目,实现办法多种多样,考验 AI 处理字符串的能力。

由于解决方案较多,由人类来评判可能有失偏颇,我们请同行 Gemini 2.5 作为裁判进行评判。

" 裁判 " 从方案广度与深度、代码质量与规范、解释与教学性、独特亮点和主要不足这五方面进行了客观的评价:

DeepSeek-R1:

方案广度与深度:高,提供了空间优化

代码质量与规范:高,代码严谨

解释与教学性:高,复杂度分析准确

独特亮点:提供了最高效的空间解法

主要不足:方案种类较少

Hunyuan-TurboS

方案广度与深度:中,方案实用但缺少最优解

代码质量与规范:高,解法具备 Python 特色

解释与教学性:极高,排版清晰,总结表格

独特亮点:教学性和用户体验最佳

主要不足:缺乏空间复杂度的最优解 |

Qwen3-Coder

方案广度与深度:极高,四种方法,包含递归

代码质量与规范:极高,组织良好,包含测试函数

解释与教学性:高,对比清晰

独特亮点:技术最全面,广度与深度兼备

主要不足:排版不够生动

GLM-4.5

方案广度与深度:中,专注最优解

代码质量与规范:极高,包含使用类型提示

解释与教学性:高,包含执行流程示例

独特亮点:对最优解的解释最形象

主要不足:方案单一,广度不足

Kimi-K2:

方案广度与深度:低,仅有一种方案

代码质量与规范:高,使用了 __name__(Python 编程风格)

解释与教学性:极高,语言最亲切、口语化

独特亮点:亲和力第一,代码结构规范

主要不足:技术深度最浅

ERNIE-X1-Turbo

方案广度与深度:中,专注于接口设计

代码质量与规范:高,但有瑕疵

解释与教学性:高,展示不同应用场景

独特亮点:体现 API 设计思想,函数灵活可配置

主要不足:测试用例有逻辑错误

科目二成绩:

到了实践环节," 考生 " 们开始展现出区分度。

Qwen3-Coder 在三道测试题中都给出了完美的回答,毫无疑问获得满分,排行第一;

DeepSeek-R1 和 GLM-4.5 也给出了高分回答,保证答案正确的情况下各具特色;

Hunyuan-TurboS 和 ERNIE-X1-Turbo 则都出现了细小的错误,令人遗憾。

科目二的测试题目难度大概和大一大二的普通计算机学生水平相当。

由此可见,AI 完成计算机专业部分课程的期末考试已经不在话下。

03 科目三:生活应用题(解决实际问题)

由于科目一和科目二还局限于学术范围,我们要再次升级难度。

科目三要测试的是 AI 能否解决我们生活和工作中的实际痛点。

这考验的不仅是 AI 的编程技巧,还有对人类需求的理解和解决问题的能力。

测试题目 1:" 我桌面上有几百个文件,有图片、文档和视频,太乱了。你写个程序帮我整理一下,把不同类型的文件放到各自的文件夹里。"

非常典型的 " 自动化办公 " 需求。

每次看到一台电脑的桌面上被堆满应用图标,强迫症都难以呼吸。

因此,这道题目要求 AI 编写一个与操作系统打交道的脚本。

需要完成文件的查找、分类、创建文件夹和移动文件等一系列操作。

所有模型都给出了可运行的代码,并实现了文件分类的功能。

其中,GLM-4.5 给出了令人惊喜的回答:

它生成的代码提供了一个额外功能:模拟运行,即只显示操作但并不实际移动文件。

这对于评测来说是不可多得的亮点之一。

表现相对较差的则是 Kimi,仅给出了图片、文档和视频三种分类方式。

测试题目 2:" 我想知道现在外面空气质量怎么样,如果 PM2.5 指数很高,就提醒我戴口罩。帮我实现这个功能。"

难度进一步上升。

这道题的核心难点在于需求与 " 外部数据获取 " 挂钩,专业术语叫做 "API 调用 "。

AI 编写的程序需要能够访问一个提供天气或气象相关数据的网站,并获取 PM2.5 的数值。

而作为评判者,除了要关注数据的正确性,还要关注程序的自动化程度。

毕竟,很多网站的数据需要先注册才能获取,但 " 一键式 " 才是我们追求的目标。

对于这道难题,各模型给出的答案令人有些失望。

DeepSeek-R1 没能给出直接获取数据的方法,给出的方案需要在 tianqiapi.com 注册获取密钥,但提供的链接也无法直接访问;同样地,ERNIE-X1-Turbo 给出的方案也需要在和风天气注册获取密钥,且程序只能发挥定时检测作用而非查询作用。

Hunyuan-TurboS 提供了两种方案,一种是使用 OpenWeatherMap 的 API,同样需要注册并获取密钥;另一种是直接使用 AQICN 的公开数据,实现了 " 一键式 " 获取,虽然数据似乎有些不准确。

Qwen3-Coder 生成的代码功能较为齐全,能够成功调用外部 API 实现 " 一键式 " 获取,但可惜查询存在错误,如输入城市为北京,但输出数据为上海,且程序运行一次后自动结束。

至于 GLM-4.5 和 Kimi-K2 提供的代码则完全无法实现所需功能,也未给出可行方案。

测试题目 3:" 帮我做一个简易的密码生成器。"

第三题的需求相对封闭,不涉及外部依赖,AI 的表现肉眼可见的 " 好起来了 "。

因此,我们需要关注 AI 生成代码功能是否灵活、齐全。

所有模型都能编写出可用的密码生成器,但功能存在一定差别:

DeepSeek-R1 非常贴心地在代码中加入了 " 避免模糊字符 " 功能,解决了常见的大写字母 I 和小写字母 l 的辨认问题。

Hunyuan 则另辟蹊径,使用 HTML 形式编写了可交互式的密码生成器,且有密码强度评分功能。

Qwen3-Coder 在允许用户自定义密码生成规则的情况下,还允许用户一次性生成多个密码。

GLM-4.5、Kimi-K2 生成的代码只能在命令行中运行,操作比较麻烦;同时,Kimi-K2 和 ERNIE-X1-Turbo 编写的密码生成器不允许用户自定义密码生成规则,灵活性较差。

科目三成绩:

这一次,轮到 Hunyuan-TurboS 领跑赛道,独占榜首。

先前的测评中,我们已经知道,对模型来说获取准确的外界信息是一项难度很大的任务。

因此,能够跨越与外界联系的 " 鸿沟 ",获取到气象数据,实属不易。

DeepSeek-R1 和 Qwen3-Coder 紧随其后,在其他两道测试题上的表现不错,在封闭环境下发挥了可靠的能力。

其余三位考生则各有 " 短板 ",发挥不佳,令人失望。

04 科目四:终极项目挑战(高阶综合能力)

这是最终的压力测试。

如果把前面的题目比作 " 零件 " 级别的任务,那科目四就像让 AI 动手 " 组装机器 "。

下面的题目考验 AI 的系统设计、代码组织和综合应用能力。

如果能顺利通过科目四,证明 AI 已经是代码领域内一名合格的 " 司机 "。

测试题目 1:" 帮我写一个网页版的待办事项列表(To-Do List)。"

入门级的前端项目。

它不只是一个后台脚本,而是需要一个用户能直接交互的 " 界面 "。

这要求 AI 必须同时掌握三种 " 语言 ":HTML、CSS 和 JavaScript。

所有模型都设计出了功能完备的待办事项列表。

值得注意的是,在程序结构方面,只有 Qwen3-Coder 将 HTML、CSS 和 JS 分成了三个独立的文件。而其他五个模型都选择了将 CSS 和 JavaScript 直接嵌入 HTML 文件中的做法。

看起来,Qwen3-Coder 的做法并不如其他模型的做法便捷,无法 " 开箱即用 ";

但是," 分文件 " 的做法才是专业 Web 开发者的标准做法,具备较高的可维护性和可读性。

这种方式有助于代码复用、团队协作和性能优化,教授了一种专业、可持续的开发模式。

尽管对新手来说稍有门槛,不过 Qwen3-Coder 也备注了详细的使用方法。

测试题目 2:" 请编写一个程序,充当一个简单的网页信息提取器。它的任务是访问新浪财经的首页,然后自动提取并打印出该网站首页上‘要闻’区域的前 5 条新闻标题。"

AI 应用的热门领域之一——网络爬虫。

这道题类似于让 AI 派出一个小机器人去自动浏览网页,从海量信息中精确地抓取所需信息。

不过,难点并非数据的提取,而是复杂且多变的网页结构该如何处理。

这道题也让 AI 参赛选手们出现了明显的 " 分化 "。

很遗憾,DeepSeek-R1、GLM-4.5 和 ERNIE-X1-Turbo 都无法获取到指定内容。

相比之下,Hunyuan-TurboS 和 Kimi-K2 的爬取能力明显增强,能够获取到网页信息,不过位置有错误。

只有 Qwen3-Coder 出色地完成了任务,爬取到了正确的新闻标题。

测试题目 3:" 请用代码模拟一个最简单的图书馆借书系统。需要有‘书’和‘读者’这两个概念。"

最后一道测试题回归到了纯粹的 " 系统设计 ",考察前面 " 面向对象 " 思想的实际应用。

事实上,这也是计算机专业学生几乎必定经历过的课程设计题目之一。

因此,我们将测评题目也设计为开放式,只告诉了 AI 最基本的需求。

除了完成系统的设计,我们还要着重观察 AI 能否添加并完善系统的功能。

所有模型都给出了可运行的代码,构建了复杂程度不同的图书馆系统。

对于借书、还书的逻辑,所有模型都能够轻而易举地正确复现。

但是,对于没有直接提出的一些需求,则暴露出部分模型的短板。

DeepSeek-R1、Hunyuan-TurboS、Qwen3-Coder 和 GLM-4.5 都很自觉地加入了查询图书馆藏书清单和查询用户借阅清单的功能。

而 Kimi-K2 和 ERNIE-X1-Turbo 却只实现了简单的借书和还书逻辑。

另外,我们要求 AI 设计的是图书馆 " 系统 "。

顾名思义,这个系统是要能够与用户进行交互的。

这里必须夸奖一波 Qwen3-Coder,六个模型中唯一采用交互式而非测试用例的 AI。

它生成的代码提供了两种运行模式,允许使用测试用例进行演示,也允许用户上手操作:

同时,实现的功能也是所有 AI 中最为齐全的:

科目四成绩:

毫无疑问,在其他模型表现平庸的衬托下,Qwen3-Coder 的编程能力一骑绝尘。

它不仅能够正确理解人们的实际需求,还能够根据概念来构建一个完善的微型系统。

设计清晰,逻辑严谨,功能强大,令人信服。

05 一点基本结论

这场驾照考试就到此为止。

通过各个科目的成绩,可以看出,Qwen3-Coder 轻松拿到了本次考试的榜首。

不论是在理论知识、基础编程、生活应用还是项目挑战,它都能够成为一个写代码的 " 好帮手 "。

同时,在测评过程中,我们也注意到了一些其他的细节:

生成代码的长度和速度方面,Qwen3-Coder 都体现出了明显的优势。

在科目四的测试中,它生成的代码比其他模型要长数十行,却能够比其他模型更快完成编写。

反之,Kimi-K2 的代码风格极为简洁,长度极短,因此也基本只能实现文字意义上的功能。

但总的来说,对于较为简单的需求,现阶段的 AI 水平已经足够。

那么,回到我们先前讨论的问题:AI 能取代程序员了吗?

答案是:目前还不能,但它已经在彻底改变 " 程序员 " 这个职业的定义。

与其说是取代程序员,不如说 AI 是在推动自己和程序员的 " 进化 "。

不仅是程序员,对于有编程需要的学生和职场人来说,AI 大模型已经成为必不可少的 " 外挂 "。

以 AI 目前的能力,解决掉 80% 以上的重复枯燥的 " 体力活 "(写基础代码、查资料、写注释等)已经不在话下。

同时,它还能在几分钟内,搭建起一个项目的 " 毛坯房 ",用户无需在程序框架上绞尽脑汁,而是可以把精力投入到 " 室内精装修 "(核心业务逻辑、用户体验优化、系统架构设计)。

更重要的是,它能极大地降低编程的入门门槛,那些有创意但不懂技术的人,已经不再需要把自己培养成程序员,就可以借助 AI 将想法变为现实。

说实话,在这次测评的过程中,看到 AI 在几十秒内就生成了一个功能完整的程序时,作为一个几年前毕业的计算机学生,我直接愣住了,甚至有点恍惚。

屏幕上自动滚动的代码,结构清晰、注释齐全,脑海里闪过的,不是 AI 生成的速度如此之快、质量如此之高,而是当年为一个类似的课程设计通宵达旦的场景。

以前,为了实现一个简单的图书馆借阅系统,我可能要一边翻阅 C++ 的 " 抽象圣经 ",一边因为一个数据库的 BUG 在 CSDN 的帖子间反复横跳;为了实现最简单的一个 UI 界面,我可能要在使用文档上花一个下午,因为找 Bug 找几个小时而怀疑人生。整个课程设计从开始到运行,几周的时间并不算长。

而现在,AI 完成这些的时间,只用了我喝一杯水的时间。

百感交集,有一种青春被 " 降维打击 " 的失落感。以前熬夜攻克的 " 难题 ",现在 AI 云淡风轻地一笔带过。与此同时产生的,是一种难以言喻的惆怅和敬畏。

我们这一代程序员,已经是见证历史的一代。我们曾用双手砌墙,而未来的程序员将直接指挥机器人盖起高楼大厦。

当然,这不是一个时代的落幕,而是一个新纪元的开启。

程序员的价值,将不再是 " 砌墙 ",而是设计大厦的 " 蓝图 ",我们的目标,是思考它的结构、它的美感和它的价值。

当然,得带着 AI 助手。

因此,没有太多的焦虑,更多的是对未来 AI 时代的期待。

相关标签
ai

觉得文章不错,微信扫描分享好友

扫码分享

热门推荐

查看更多内容