Kimi K3.1 Pro 写代码能和 Claude Opus 5.5 掰手腕吗?同一套 6 道题,5 个模型 60 次编程 Agent 实测
国产模型写代码到底行不行,网上说法很多,但大多是聊天框里问一道题、看一眼答案。我更关心的是放进编程 Agent 里:自己读仓库、改文件、跑测试,最后能不能交出能用的代码,要等多久,花多少钱。
所以我用同一个 Agent(OpenCode)、同一套 6 道带隐藏测试的 Python 题,跑了 5 个模型:
- Kimi K3.1 Pro
- Kimi K3.1 Pro Highspeed(同一个模型的高速版,价格翻倍)
- Claude Opus 5.5
- GPT-6.1 Sol
- Gemini 4 Argon
每个模型每道题跑 2 次,一共 60 次。先说结论:
- 质量打平:60 次运行全部通过了全部隐藏测试,5 个模型谁都没挂过一个测试。
- 速度差很多:平均每道题,Opus 5.5 用 82 秒,Gemini 4 Argon 134 秒,GPT-6.1 Sol 152 秒,Kimi K3.1 Pro Highspeed 166 秒,Kimi K3.1 Pro 409 秒。标准版 Kimi 的耗时是 Opus 的 5 倍。
- Kimi 慢在想得多:Kimi K3.1 Pro 平均每道题输出约 12,800 个 token,其中约 8,100 个是推理,请求次数也最多。
- 费用:按测试时的实际计费,每道题 Kimi K3.1 Pro 约 0.22 美元,Highspeed 约 0.33 美元,另外三个在 0.09~0.14 美元之间(Opus 的单价有特殊情况,见下文「费用怎么看」)。
怎么测的
- Agent:OpenCode 1.19.4,非交互模式(
opencode run --auto),把接口配置成一个 OpenAI 兼容的 provider,通过/v1/chat/completions调用。不同运行之间唯一的区别是-m指定的模型。 - 配置:干净的 OpenCode 配置,没有 MCP、插件和额外 skill,其余全用默认值。OpenCode 没有发推理强度参数,所以每个模型都按自己的默认值推理。OpenCode 会按模型家族选择不同的系统提示词和工具(比如 GPT 用 apply_patch 改文件,其他模型用 edit/write),我没有改动。
- 任务:6 个一次性的 Python 小仓库,每个有一段任务说明(需求文档或 bug 报告)、一个可见测试,以及一套 Agent 结束后才运行的隐藏测试:
- 跨两个文件的 bug 修复:购物车金额差一分钱、折扣被算了两次,还要遵守 README 里一条 bug 报告没提到的规则。18 个隐藏测试。
- 按一页规则实现时长解析器:
"1h30m"、"2 hours and 5 min"、"PT1H30M",包括哪些写法必须拒绝。84 个。 - 不能改变行为的重构:把一个满是复制粘贴的长函数拆成小函数。隐藏测试拿新旧函数在 300 个随机输入和 16 个边界情况上对比输出,还要求函数长度至少减半。317 个。
- 规则互相影响的注册校验:按字段返回错误码、规则有先后顺序。84 个。
- 配置格式解析器:分节、带转义的引号值、行内注释、续行(报错行号要对)、
${section.key}引用和循环检测。57 个。 - Mustache 模板渲染器:从零写,用官方 Mustache 规范测试集评分。136 个。
- 运行:每个模型每道题 2 次,共 60 次。Opus、Sol、Argon 是 2026-10-27 跑的,两个 Kimi 是 2026-11-02 跑的,用的是同一套任务、同一套评测脚本。同一天的模型同时跑,网络和服务端状态一致。
- 记录:隐藏测试通过数、总耗时、请求次数、输入 / 缓存 / 输出 token,以及每次响应 usage 里返回的费用(每次运行把所有请求的费用加起来)。
结果
每道题的耗时(两次运行的平均值)
| 任务 | Kimi K3.1 Pro | Kimi Highspeed | Opus 5.5 | GPT-6.1 Sol | Gemini 4 Argon |
|---|---|---|---|---|---|
| 1. 跨文件 bug 修复 | 226 秒 | 115 秒 | 34 秒 | 137 秒 | 73 秒 |
| 2. 时长解析器 | 284 秒 | 135 秒 | 53 秒 | 102 秒 | 74 秒 |
| 3. 重构 | 365 秒 | 129 秒 | 85 秒 | 148 秒 | 133 秒 |
| 4. 注册校验 | 263 秒 | 105 秒 | 65 秒 | 142 秒 | 86 秒 |
| 5. 配置解析器 | 559 秒 | 272 秒 | 116 秒 | 177 秒 | 267 秒 |
| 6. Mustache 渲染器 | 754 秒 | 239 秒 | 139 秒 | 205 秒 | 173 秒 |
| 平均 | 409 秒 | 166 秒 | 82 秒 | 152 秒 | 134 秒 |
60 次运行,每个模型的 12 次都通过了全部隐藏测试,所以这张表里没有「通过率」一列。
token 和请求(12 次运行的平均值)
| 每道题 | Kimi K3.1 Pro | Kimi Highspeed | Opus 5.5 | GPT-6.1 Sol | Gemini 4 Argon |
|---|---|---|---|---|---|
| 请求次数 | 15.8 | 13.1 | 7.9 | 12.1 | 10.3 |
| 输入 token | 251,000 | 200,000 | 107,000 | 101,000 | 124,000 |
| 其中命中提示词缓存 | 90% | 91% | 51% | 81% | 69% |
| 输出 token | 12,800 | 10,800 | 7,800 | 4,200 | 5,600 |
| 其中推理 | 8,100 | 6,600 | 0 | 700 | 900 |
| 单次请求耗时中位数 | 9.0 秒 | 5.1 秒 | 7.6 秒 | 11.7 秒 | 6.2 秒 |
| 最慢的 10% 请求超过 | 74 秒 | 28 秒 | 26 秒 | 18 秒 | 34 秒 |
(请求耗时只统计带工具的 Agent 请求,不含 OpenCode 每次开头生成标题的那个短请求。)
费用(按测试时的实际计费,单位美元)
| 每道题平均 | Kimi K3.1 Pro | Kimi Highspeed | Opus 5.5 | GPT-6.1 Sol | Gemini 4 Argon |
|---|---|---|---|---|---|
| 费用 | 0.221 | 0.328 | 0.094 | 0.098 | 0.142 |
| 测试时单价(每百万 token,输入 / 输出) | 2 / 10 | 4 / 20 | 1 / 5 | 2 / 10 | 2 / 10 |
数字说明了什么
这套题对 5 个模型都不算难。 60 次运行没有一次挂测试,包括 Mustache 官方规范的全部 136 个用例和重构题的 316 次新旧对比。所以这次比不出「谁能做出别人做不出的题」,能比的是速度、消耗和做事的方式。
Kimi K3.1 Pro 慢,主要慢在推理。 它平均每道题输出约 12,800 个 token,是 Opus 的 1.6 倍,其中约 8,100 个是推理(Opus 在这条路径上没有开推理)。单次请求的中位数是 9.0 秒,看起来不算慢,但最慢的 10% 请求超过 74 秒,最慢的一次 241 秒:遇到要想的地方,它会一口气想很久。再加上请求次数最多(15.8 次),每道题就要将近 7 分钟。
Highspeed 把 Kimi 拉到了和 GPT-6.1 Sol 差不多的速度。 平均 166 秒对 152 秒。推理量没少多少(6,600 对 8,100),快在生成速度:慢请求从 74 秒降到 28 秒。
Kimi 的平均值里有一次异常。 标准版 Kimi 有一次 Mustache 运行开了子 Agent,发了 41 个请求,用了 18 分钟、0.65 美元,其他 Mustache 运行是 11~18 个请求。这一次把 Mustache 那一格的平均值拉高了很多,但就算去掉它,标准版 Kimi 剩下 11 次的平均耗时也有 348 秒,还是 5 个模型里最慢的。
提示词缓存差别很大。 两个 Kimi 有 90% 以上的输入命中缓存,GPT-6.1 Sol 81%,Gemini 69%,Opus 只有 51%:Opus 每个请求命中的都是同样的 8,028 个 token,大约就是 OpenCode 的系统提示词加工具定义,后面不断变长的对话每轮都按全价算。Agent 每轮都会把整段对话重发一遍,缓存命中率直接影响账单。Kimi 输入量是 Opus 的两倍多,靠缓存兜住了一大半。
自查的方式不一样。 重构题里,Opus 和 Sol 都自己写了新旧函数的随机对拍脚本才收工;Gemini 只靠那一个可见测试,也全过了。Mustache 题里,Opus、Sol 和全部 4 次 Kimi 运行都自己从 GitHub 下载了官方规范测试来跑,而我的隐藏测试就是这些文件,所以它们在这道题上的得分不算独立;Gemini 没下载,也全过了。
费用怎么看
表里的费用是测试时接口实际扣的钱,有一点要单独说明:Opus 5.5 的单价不是 Anthropic 官方标价。 测试用的接口上 Opus 5.5 是每百万 token 输入 1 美元、输出 5 美元,官方标价是 4 美元、20 美元。如果你直接用官方 API,Opus 那一列的费用会高得多,排名也会变。
撇开单价,只看消耗:两个 Kimi 每道题用的输入和输出 token 都是最多的,标准版的输入量大约是 Opus 和 Sol 的 2.4~2.5 倍。所以 Kimi 的单价虽然不高,每道题的费用却是 5 个里最高的两个。
怎么选
- 最看重速度:这套题里 Opus 5.5 最快,每道题平均 82 秒。
- 想用 Kimi:交互式写代码建议直接用 Highspeed,速度和 GPT-6.1 Sol、Gemini 4 Argon 在一个档次;标准版每道题要等将近 7 分钟,更适合不赶时间的后台任务。
- 想要一个非 Anthropic 的第二意见:GPT-6.1 Sol 和 Gemini 4 Argon 都全对,用来交叉检查改动都可以。
- 这套题选不出最强的模型。5 个都全对,说明题目还不够难。哪个模型在大仓库、长任务上更强,这次的数据回答不了。
这次测试的局限
- 6 道题、每题 2 次。都是 30 秒到 18 分钟的小型 Python 任务,不是大仓库里几个小时的改动。
- 6 套隐藏测试里有 5 套是我自己写的,反映的是我对需求的理解;每一套都先用参考答案跑通、用原始代码确认会失败,才拿来评分。
- Kimi 和另外三个模型不是同一天跑的(11-02 和 10-27)。服务速度和负载有关,换一天数字可能不同。
- 同一个模型同一道题跑两次,耗时最多能差一倍以上(标准版 Kimi 的 Mustache 两次分别是 429 秒和 1,079 秒),耗时请当成大致参考。
- 只用了 OpenCode 一个 Agent,全部默认参数。OpenCode 对不同模型用的系统提示词不一样;Opus 在这条路径上没有开推理,Kimi 默认推理很多。换个 Agent、调一下推理强度,速度和费用都会变。
- 耗时包含从我的客户端到接口、再到上游服务商的网络时间。
自己测一下
在项目里放一个 opencode.json,加一个 OpenAI 兼容的 provider,模型名按你的服务商填:
{
"provider": {
"myapi": {
"npm": "@ai-sdk/openai-compatible",
"name": "My API",
"options": {
"baseURL": "{env:BASE_URL}",
"apiKey": "{env:API_KEY}"
},
"models": {
"kimi-k3.1-pro": { "name": "Kimi K3.1 Pro" },
"kimi-k3.1-pro-highspeed": { "name": "Kimi K3.1 Pro Highspeed" },
"claude-opus-5-5": { "name": "Claude Opus 5.5" }
}
}
}
}
然后用同一个提示词分别跑:
opencode run --auto -m myapi/kimi-k3.1-pro "Fix the failing test in tests/"
opencode run --auto -m myapi/kimi-k3.1-pro-highspeed "Fix the failing test in tests/"
opencode run --auto -m myapi/claude-opus-5-5 "Fix the failing test in tests/"
--auto 会自动批准 Agent 的改文件和执行命令,只在可以随时重置的项目里用。拿自己的真实任务跑几次,比看任何人的跑分都准。
更多推荐

所有评论(0)