
**摘要:**M3.1 Flash(10-19 发布,Space Bunny 正身)全网都在对轰跑分、算缓存账。我做了件没人做的对照:把同一颗 M3.1 Flash 装进 MiniMax 官方 Agent 和 OpenCode CLI,考同一道 Three.js 单文件体素城市大题(30+ 硬性条款),再用同一套 Playwright 无头脚本统一验收。结果:两份卷子硬性条款全过、控制台零报错,但官方 Agent 版 58 分钟交卷、观感最艳(73~78 fps);OpenCode 版 4 小时 33 分交卷、工程最扎实(66 fps)。用时差 4.6 倍,日志里 208 次工具调用说明了慢在哪。
1. 考题
单 HTML 文件,Three.js 0.160.0(importmap),程序化生成"云山巨城 · 体素岭南城":
- 地形:高度函数/噪声,64×64~96×96 网格,≥2 片山体 + 穿城水系
- 城市:体素建筑 ≥3 类(住宅/塔楼/地标塔/骑楼)
- 水系:水面动画,≥2 座桥
- 道路:贴地不悬空不穿模
- 交互:OrbitControls 限俯仰、点击建筑高亮出档案、昼夜/自转/重置按钮、resize
- 性能:InstancedMesh 或合并几何控制 draw calls,方向光+环境光,阴影贴图可控
- 禁外部资源:几何/材质/纹理全部代码生成;打开即跑,控制台无报错
完整提示词在数据包(文末链接),30+ 条款可直接复用去考任何模型。
2. 验收方法
肉眼验收不可靠,我写了一套 Playwright 无头采集脚本,对每个产物执行完全相同的动作序列:
- 加载页面(等 9s 场景生成)→ dump 全部按钮文本
- 点"重置视角" → 截统一机位图
- 画布中心 (800,500) 单击 → 截点选尝试图(验证拾取+信息面板)
- rAF 计数器采 10s 平均帧率
- 开 8s 自动旋转 → 切昼夜 → 等 4.5s 过渡 → 截夜景
- 全程监听 console.error/warning 与 pageerror
环境:Chromium 156 headless(SwiftShader 软渲染)1600×900;真机口径另标(RTX 3070 / 2K / 360 极速浏览器)。脚本已参数化,见数据包。
3. 结果
3.1 官方 Agent 版(1631 行 / 69KB / 120×120 网格)
- 城市按功能分区:CBD 收分塔楼、红瓦骑楼老城、滨江住宅、山腰民居,170 栋 / 14.29 万体素
- 地标为程序化广州塔:4 条扭转塔腿 + 环梁 + 斜撑 + 观景平台 + 桅杆信标
- 桥两种形制(石拱桥 + 斜拉桥);植被分树种(榕/松/垂柳/灌木)
- 工程亮点:CDN 三级自动换源(importmap 失败 → unpkg → npmmirror → Blob 改写动态加载),全挂则提示停住,全程零报错
- 选中特效:金色体素角标 + 光柱 + 地面光台
- 真机 73~78 fps
3.2 OpenCode 版(1858 行 / 74KB / 96×96 网格)
- 全场景合并至约 5 个 mesh,draw call 最省;建筑拾取靠顶点区间 + 自定义 aId 属性在合并几何上逐栋识别
- 防悬空做绝:桥台引道坡道 + 挡墙补路基(注释明写防悬空);occupancy 三态占位 + 道路坡度/落水双检
- 窗户零几何:onBeforeCompile 注入 shader,世界坐标切窗格 + hash 随机亮灯
- 昼夜为太阳方位角连续运动(2.2s),非调色板硬切
- 真机 66 fps,154 栋带实时阴影
3.3 对撞表
| 项目 | 官方 Agent 版 | OpenCode 版 |
|---|---|---|
| 代码量 | 1631 行 / 69KB | 1858 行 / 74KB |
| 网格 | 120×120(超建议区间) | 96×96 |
| 合并策略 | 分类合并 ≈6 mesh | 全场合并 ≈5 mesh |
| 防悬空 | 涂色法 + 陡坡断开 | 引道坡道 + 挡墙 |
| 昼夜 | 调色板过渡 | 太阳弧线连续运动 |
| CDN 容错 | 三级自动换源 | 单源 |
| 真机 fps | 73~78 | 66 |
| 无头 10s 采样 | 60.0(顶满 vsync) | 60.0(顶满 vsync) |
| 交卷用时 | 58 分 38 秒 | 4 小时 33 分(4.6 倍) |
| 总处理量 | 2.08 亿 token(缓存率 98.7%) | 4378 万 token(缓存率 98.7%) |
| 工具调用 | 未公开明细 | 208 次(bash 77 / edit 59 / read 46 / write 24) |
| 账单 | 套餐内 | US$0.00(minimax-m3.1-flash-free) |
| 控制台 | 0 报错 | 0 报错 |
3.4 用时差的来源
OpenCode 会话日志(212 条消息全时间戳)显示 4.5 小时除开工 12 分钟规划停顿外无 5 分钟以上空档:208 次工具调用,77 次跑命令验证、59 轮改代码、46 次读文件,写-跑-改循环磨出来的。两家缓存率同为 98.7%,是 agent 多轮循环复用上下文的典型指纹。
4. 结论
- M3.1 Flash 底子稳:两个 agent 带它,两份卷子全部硬性条款过关、控制台全干净,没有烂尾。
- 差异来自 agent 框架的引导:官方 Agent 引导堆料炫技(分区城市/地标/特效/三级换源),OpenCode 引导按工程清单交卷(合并几何/防悬空/shader 窗口/连续昼夜)。
- "测模型"应升级为"测模型+agent 组合":同一颗模型,装不同的壳,交出来是两种东西。
- 复现:OpenCode Zen 免费档(本次实测即免费档,账单 US$0.00)、Vercel AI Gateway 免费通道至 10-22。
更多详情请移动GZH查看,有分析有截图有录屏。