Nonobench:49款大模型玩数织谜题的开源基准测试

Nonobench用数织谜题对49款LLM进行纯逻辑推理测试,发现解题率随网格增大断崖下滑,输出格式同样显著影响模型表现。
Nonobench是一个开源基准项目,通过让49款大语言模型解数织谜题(nonogram)来评测其结构化逻辑推理能力。测试分标准模式(5x5至15x15,30题)和困难模式(20x20,10题)两档,每道题仅允许单次尝试、不得使用外部工具。结果显示解题率与网格规模呈强负相关:5x5约85%,10x10降至46%,15x15仅剩20%;困难模式中15个参赛模型有11个全军覆没。最佳表现者为GPT-6 Astra(标准模式全对)和Claude Opus 5.5(困难模式8/10)。测试还发现,要求模型输出单条长字符串会导致位置计数失误,改为行数组后表现明显改善,揭示出输出格式设计对推理准确率的实质性影响。项目全部代码以MIT协议开源,提供了一个干净、难以被训练数据污染的推理能力评测视角。
用数织谜题考验大模型的空间推理
大语言模型究竟有多擅长结构化的逻辑推理?开源项目 Nonobench 给出了一个有意思的切入点——让 49 款 LLM 去解数织谜题(nonogram,也叫 picross)。这类谜题要求根据每一行、每一列给出的数字线索,推断出整张网格中哪些格子该被填满,最终拼出一幅图案。它既考验逻辑演绎,又考验模型在长串网格上的"空间记忆"能力。
测试规则相当严格:每个模型只拿到一次行列线索,然后必须一次性返回完整网格。不允许调用任何外部工具,每道题只有一次尝试机会。这种"裸考"设定剥离了工具增强的加分项,直接衡量模型本身的推理底子。

测试方法:从 5x5 到 20x20
整个基准分为两档难度。标准模式包含 30 道题目,网格规模从 5x5 一路递增到 15x15,题目取自 Moyà-Alcover 发布的 Nonograms 数据集(CC BY 4.0 授权)。
困难模式则换成十道随机生成的 20x20 大网格,每一道都经过校验确保只有唯一解。其中有五道无法仅靠单行单列的线逻辑(line logic)推出,必须进行更深层的跨行列联合推理——这正是区分模型推理深度的关键门槛。值得一提的是,这些网格采用随机填充而非真实图案,目的是防止模型靠"猜图"蒙混过关:如果谜底是一只猫或一棵树,模型可能凭图像先验直接猜中,而随机填充让这种捷径失效。
测试一共跑了 130 个变体,覆盖不同的推理努力程度(reasoning effort),通过 OpenRouter 调用,并尽可能锁定到各实验室自己的官方端点,以保证结果可比性。
线逻辑(line logic)是数织谜题中最基础的推理策略:仅凭单行或单列的数字线索,就能确定某些格子必然被填充或必然为空。例如,一行共10格而线索为"8",则中间6格无论如何排列都必须填满,可以直接确定。这种推理不需要参考其他行或列的信息,实现相对简单。然而,当谜题无法仅靠线逻辑完全求解时,就必须进行跨行列的假设与回溯——即暂时假定某格的状态,再通过波及效应验证假设是否与全局线索自洽。这种联合推理要求模型在整张网格上维护多个约束条件的同时推进,对上下文窗口的有效利用和多步逻辑链的稳定性提出了更高要求,也是困难模式中绝大多数模型失败的根本原因。
结果:规模一上来,正确率断崖式下滑
最直观的发现是,谜题规模与模型表现呈强负相关。取每个模型的最佳努力档位来看:
- 5x5 网格:解题率约 85%
- 10x10 网格:降至 46%
- 15x15 网格:仅剩 20%
换句话说,网格每放大一级,模型的逻辑链就更容易在中途崩塌。
在顶尖模型层面,GPT-6 Astra 解出了标准模式全部 30 道题,表现最为稳健。而在更残酷的困难模式里,Claude Opus 5.5 解出了 10 道中的 8 道,是 20x20 大网格上的最强选手。与之形成鲜明对比的是,参与困难模式的 15 个模型中有 11 个一道都没解出来——这说明真正需要跨行列联合推理的难题,依然是绝大多数模型的盲区。
一个被忽视的细节:输出格式会"坑"模型
测试中还暴露了一个有趣的工程问题。最初如果要求模型把答案作为一整条 400 字符的字符串返回,大多数模型会在逻辑真正变难之前就"数错格子"——也就是在维护长串网格状态时丢失了位置计数能力。
为此,困难模式改成让模型返回一个由 20 条行字符串组成的数组,而不是单一长字符串。这个改动很说明问题:模型的推理失败有时并非源于逻辑本身,而是源于它难以在超长、无分隔的序列中保持精确的位置追踪。对于任何需要模型处理结构化网格或矩阵的应用来说,这都是一个值得警惕的实践经验——输出格式的设计会实实在在地影响最终准确率。
这一现象在认知科学中有类似的对应概念——"组块化"(chunking)。人类在处理长序列信息时,会自然将其分割成有意义的小单元来降低工作记忆负担。大语言模型在自回归生成过程中同样面临类似的约束:当需要追踪一个400字符的无分隔序列中的精确位置时,模型实际上是在用下一个token的预测概率来隐式维护"当前在第几格"这一状态,极易发生漂移。将输出结构化为20条独立行字符串,相当于为模型提供了天然的检查点,每完成一行即重置计数器,大幅降低了跨行位置错乱的概率。这一发现对实际工程有直接指导意义:在要求模型填写表格、生成代码矩阵或处理任何二维结构化数据时,应优先采用分段或嵌套的输出格式,而非单一扁平字符串。
局限与开放性
作者对测试局限保持了诚实。由于每道题只尝试一次,单次结果带有噪声,因此网站上标注了 95% 置信区间,提醒读者不要对个别数字过度解读。单次尝试的设定虽然增加了噪声,却也更贴近真实使用中"一次问答出结果"的场景。
项目的最大价值在于其完全开放。测试网站公开可访问(nonobench.com),全部代码以 MIT 协议开源(github.com/mauricekleine/nonobench),任何人都可以复现、扩展,甚至接入新模型重新评测。
对于关注模型推理能力评估的研究者和开发者而言,Nonobench 提供了一个干净、可控、不易被训练数据污染的测试场——数织谜题既不像数学题那样容易在训练集中泄题,又能清晰地量化模型在不同规模下的推理衰减曲线。它或许不是最全面的基准,却是一个角度刁钻、信息密度很高的补充。
相关推荐

WorkBuddy保姆级教程:半小时跑通自动化工作流
WorkBuddy 自动化工作流保姆级拆解:为什么大多数人只把它用成聊天软件,27 个支点课程与 12 个模板如何帮助新手半小时跑通落地实操,附使用边界提醒。

Codex云端模式详解:环境配置与适用场景
本文详细解析Codex云端模式的工作原理、环境配置步骤及适用场景,包括如何创建环境、连接GitHub仓库、设置定时任务,并对比云端与本地模式的差异,帮助开发者高效利用Codex。

Claude Code免费使用真相:三条路与一个骗局
Claude Code 免费使用是否可行?本文拆解 Pro、Max 的真实成本(含汇率与税费)、社区免费方案的技术原理与隐私代价,以及假安装包、钓鱼页面等安全陷阱,并给出访客通行证、开源贡献者计划和本地模型三条合法免费路径。