GLM-5开源第一天,我拿同一道算法题测了5个大模型API,国产AI真追上GPT了?

9 阅读5分钟

刷掘金看到热榜第三 "智谱GLM-5开源,让高级程序员也危险了",评论区已经吵疯了 😂

一边说"国产大模型终于崛起了",另一边"你们怕不是没用过Claude"。

行,嘴炮没意义。我直接写代码,同一道题调5个大模型API,看看到底谁强谁弱。

测试方案

题目选的不是那种 FizzBuzz 水题,而是一道看着简单但很容易写错的经典:

手写 LRU Cache

  • get(key)put(key, value) 都要 O(1)
  • 容量满了自动淘汰最久没用的
  • 不准用 OrderedDict,必须手写双向链表

为什么选这题?因为它能同时考验模型的算法理解、代码结构和边界处理能力。面试官都爱考这个,模型也逃不掉 🤭

调用代码

我这里用 OpenAI 兼容格式统一调用,现在主流大模型API基本都支持这个格式了,换个 model 名就行:

import openai
import time

client = openai.OpenAI(
    api_key="sk-xxx",
    base_url="https://api.ofox.ai/v1"
)

models = ["glm-5", "gpt-4o", "claude-sonnet-4-6", "deepseek-v3", "qwen-max"]

prompt = """用 Python 实现 LRU Cache:
- get(key): O(1)
- put(key, value): O(1)
- 容量满时淘汰最久未使用的 key
- 不准用 OrderedDict,手写双向链表
- 包含完整测试代码"""

for model in models:
    start = time.time()
    resp = client.chat.completions.create(
        model=model,
        messages=[{"role": "user", "content": prompt}],
        temperature=0
    )
    cost = time.time() - start
    print(f"\n{'='*50}")
    print(f"模型: {model} | 响应时间: {cost:.1f}s")
    print(resp.choices[0].message.content[:500])

这里我偷了个懒——5个模型用了同一个 base_url。以前我是每个模型单独申请 key、改 base_url,光 .env 文件里就存了七八个 key,烦死了。后来换成 ofox.ai 的聚合API,一个 key 就能调国内外 50 多个模型,国内访问海外模型延迟也还行(据说走的阿里云加速节点)。

好了不扯了,看结果。

实测结果

5个模型全部跑完,我把代码拿出来挨个 python3 执行了一遍,结果如下:

模型响应时间代码能跑吗有没有测试代码质量
GLM-52.3s✅ 直接跑通✅ 有⭐⭐⭐⭐⭐ 带类型标注
GPT-4o1.9s✅ 直接跑通✅ 有⭐⭐⭐⭐⭐ 工程化最好
Claude Sonnet2.6s✅ 直接跑通✅ 有完整用例⭐⭐⭐⭐⭐ 最详细
DeepSeek V33.8s✅ 跑通⚠️ 简单⭐⭐⭐⭐ 简洁但注释少
Qwen Max2.9s⚠️ 有小bug❌ 无⭐⭐⭐⭐ 中规中矩

具体分析

GLM-5:确实进步大

说实话我之前对智谱的模型印象一般,GLM-4 写代码总是差点意思。但 GLM-5 这次真的让我刮目相看:

# GLM-5 生成的核心代码片段
class Node:
    __slots__ = ('key', 'value', 'prev', 'next')

    def __init__(self, key: int = 0, value: int = 0):
        self.key = key
        self.value = value
        self.prev = None
        self.next = None

用了 __slots__ 优化内存!这个细节连 GPT-4o 都没主动加。而且整体代码风格很 Pythonic,类型标注也给全了。

GPT-4o:稳如老狗

GPT 系列写代码一直很稳,这次也不例外。docstring、异常处理、edge case 全考虑到了。但怎么说呢,没有让人眼前一亮的东西,就是工工整整的标准答案。

Claude Sonnet:最贴心的选手

Claude 是唯一一个不光写代码还写了完整的测试用例 + 复杂度分析的。如果是给同事做 code review,我会首选 Claude 的输出——省心。

DeepSeek V3:便宜但慢

响应时间最长,不知道是不是服务器扛不住(毕竟最近太火了)。代码本身没大问题,但测试用例比较敷衍,就一个 assert cache.get(1) == 1

Qwen Max:翻了个小车

put 方法里更新已有 key 的逻辑写反了——先删后插的顺序搞错了,导致链表断裂。不过说实话这种 bug 很常见,热修一行就行。

价格才是决定性因素

光比能力不看价格,那是耍流氓。

这次测试我特意记了下各模型的开销(按百万 token 估算):

模型大概输入价大概输出价我的评价
GLM-5很便宜便宜性价比之王候选
GPT-4o中等中等偏贵老牌选手
Claude Sonnet中等偏贵贵但值
DeepSeek V3极便宜极便宜便宜到离谱
Qwen Max便宜中等中规中矩

国产模型价格优势太大了,基本是海外模型的 1/5 到 1/10。如果你的场景对成本敏感(比如批量处理、Agent 调用量大),国产模型真的可以优先考虑。

但这里有个实际问题:很多产品需要同时用国产和海外模型。比如我自己的项目,中文理解用 DeepSeek/GLM,复杂推理用 Claude,多模态用 GPT-4o。以前每个模型单独接入,光维护 API key 和切换逻辑就头疼。后来用聚合平台统一了入口,代码里只用切 model 名就行,省了不少事。

我的结论

国产AI和GPT差距大吗? 2026 年的真实答案:

在代码生成这个场景上,差距已经很小了。GLM-5 跟 GPT-4o 基本是同一水平线,某些中文场景甚至更好。

但要说"吊打 GPT"...那还是算了吧 😅 热榜标题嘛,懂的都懂。

我的选模型策略:

  1. 💰 预算紧 → DeepSeek V3 / GLM-5,便宜又能打
  2. 🎯 要最稳 → Claude / GPT-4o,贵但不翻车
  3. 🔀 混合场景 → 用聚合 API 按需切换,别在接入层浪费时间

说到底,大模型API 这块的竞争对开发者是好事——选择多了,价格卷了。我们只需要选对工具,把精力花在产品本身上就行。


测试环境:Python 3.12,macOS,工作日上午。各平台负载不同,响应时间仅供参考。如果你也做了类似测试,欢迎评论区交流结果 👇