StateBench:测试语言模型如何跟踪长文档中的状态变化

理解 StateBench

StateBench 是一项诊断基准测试,旨在衡量语言模型在长文档中跟踪实体演变信息的效果。状态跟踪是各种任务的一项基本能力,从变量不断重新赋值的代码执行,到角色位置和状态随时间变化的叙事理解,均涵盖在内。通过将这些任务分为四个不同的复杂性级别,StateBench 使研究人员能够识别出随着输入长度的增加,特定的模型架构(从标准 Transformer 到循环和混合设计)在何处开始失效。

状态跟踪的四个级别

StateBench 基于 Krohn–Rhodes 理论,根据更新操作的复杂性将状态跟踪问题组织成一个层级结构。这些级别代表了维护准确内部状态时难度不断增加的过程:

  • R-trivial(R-平凡): 涉及不可变赋值的问题,其中值从不改变,要求模型只需恢复初始状态。
  • Aperiodic(非周期性): 允许按值重新赋值的问题,模型必须识别最近的更新并忽略早期数据。
  • Soluble(可解): 涉及自引用更新的问题(例如 x = x + 5),要求模型将运行总计向前传递。
  • General Finite(一般有限): 最复杂的级别,涉及按引用赋值(例如交换变量或跨多个容器跟踪对象),这会在序列中产生复杂的依赖关系。

预训练模型和前沿模型的表现

对当前模型的评估显示,随着输入长度的增加,性能会持续下降,尤其是在较难的任务上。在测试前沿模型(包括 Gemini 3.8 Flash、Claude Opus 5.5 以及 GPT-6 Sol 和 Luna)时,研究人员观察到,虽然这些模型能很好地处理 R-trivial 和 aperiodic 任务,但随着输入变长,它们在 soluble 和 general finite 问题上的准确率会急剧下降。这表明当前一代大规模模型在处理复杂、长依赖状态跟踪的累积性质时存在困难。

架构限制与直接训练

为了确定这些失败是模型架构固有的,还是训练不足的结果,研究人员在 StateBench 上从头开始训练了 2.75 亿参数的模型。研究结果表明,架构差异显著影响了泛化能力:

  • Transformers: 即使直接针对这些任务进行训练,Transformers 也未能学会最难的(general finite)状态跟踪级别。
  • 混合架构和 Gated DeltaNet: 这些架构表现出了更优越的泛化能力。当直接进行训练时,它们成功处理了长达数万次赋值的 R-trivial、aperiodic 和 soluble 问题。具有灵活内存更新的 Gated DeltaNet 变体表现最为稳健,在长度达到训练期间所见长度 10 倍的情况下,依然保持了近乎完美的表现。

对未来发展的启示

StateBench 强调,尽管当前的前沿模型能力很强,但在管理复杂、长距离状态依赖时,它们仍然受到底层架构约束的限制。该基准测试为研究人员评估新的循环和混合架构提供了一个框架,作为指导开发能够进行更稳健、长上下文推理系统的工具。未来的工作旨在解决当前框架中的局限性,例如处理动态实体创建,即在文档中不断引入新变量的情况。

Sources