[控场AI]
· 5 分钟阅读· 2,857 字

在Qwen3.5里跑起一颗RISC-V CPU:Qwenputer的确定性实验

在Qwen3.5里跑起一颗RISC-V CPU:Qwenputer的确定性实验

Qwenputer 在 Qwen3.5 模型内部实现确定性 RISC-V CPU 模拟,探索模型状态跟踪能力。

Qwenputer 是一个在 Hacker News 上引起关注的项目,声称在 Qwen3.5 模型内部实现了可运行、确定性的 RISC-V CPU 模拟。与让模型生成汇编代码不同,它把处理器状态转移内化到推理过程中,寄存器值、程序计数器和内存读写以文本形式在上下文中流转。项目通过约束解码空间和固定执行路径来保证可重复输出,牺牲开放生成能力换取类似硬件模拟器的确定性。文章认为,这一实验提供了评估大模型的新视角——模型能否在内部维持一致的状态机,并提示了将轻量执行环境内化到 AI 编程工具推理循环的可能路径。但项目信息披露有限,指令集覆盖范围、长程序状态漂移和第三方复现仍待验证,命名上的“CPU”也需读者校准预期。

当大模型不再只是生成文本,而是“运行”一颗CPU

在Hacker News上,一个名为Qwenputer的项目引起了关注:它宣称在Qwen3.5模型内部实现了一个可运行、确定性的RISC-V CPU。这意味着模型不只是回答“RISC-V指令如何执行”,而是能够在推理过程中模拟出一颗处理器的行为,并且每次运行结果一致。

Hacker News上关于Qwenputer的讨论

这个想法乍看有些反常。大模型通常以概率方式生成文本,随机性来自采样策略和硬件非确定性。而CPU模拟要求严格的状态转移和可重复输出。Qwenputer把这两个矛盾体放在一起,试图证明:在足够结构化的约束下,语言模型可以承担确定性计算的角色。

Qwenputer到底做了什么

用模型权重承载处理器状态

根据项目描述,Qwenputer并非外挂一个RISC-V模拟器再让模型调用,而是把CPU的指令集行为“内化”到Qwen3.5的推理过程中。模型在生成每个token时,实际上在推进处理器状态:寄存器值、程序计数器、内存读写结果都以文本形式在上下文中流转。

这种做法的关键不在于性能,而在于可验证性。传统大模型输出一段汇编代码,你无法保证它每次都对;Qwenputer的目标是让给定输入下的执行轨迹稳定复现,从而让“模型即模拟器”这件事具备工程讨论的基础。

RISC-V 是一个开源指令集架构(ISA),与 x86、ARM 不同,它采用模块化的设计:基础整数指令集(RV32I/RV64I)极小,仅约 40 条指令,其余功能通过可选扩展(如 M 乘除、A 原子操作、F/D 浮点)按需组合。这种规整性和有限的状态空间(32 个通用寄存器加一个程序计数器)使它成为检验语言模型状态跟踪能力的理想试验台。Qwenputer 所声称的“可运行 CPU”,在技术含义上更接近于完整实现 RV32I 基础指令子集,而非支持操作系统所需的全套特权架构与中断机制。

确定性从何而来

确定性是Qwenputer最核心的卖点。在常规LLM推理中,温度、top-p采样、浮点运算顺序都会引入变化。Qwenputer通过约束解码空间和固定执行路径,把模型的输出收敛到唯一轨迹。换句话说,它牺牲了语言模型的开放生成能力,换取类似硬件模拟器的可重复行为。

这一取舍有明确的适用边界:它适合做教学演示、指令集行为验证、以及探索模型内部计算表征的研究,但不适合替代真正的RISC-V仿真器去跑操作系统或高性能负载。

约束解码(constrained decoding) 是让语言模型输出确定性的关键技术。常规生成时,模型从整个词表(数万 token)中按概率采样;约束解码则在每一步用有限状态机或语法规则过滤候选 token,仅保留符合目标格式的选项。若过滤后只剩一个合法 token,采样策略便失去作用,输出路径被唯一确定。在 Qwenputer 的语境中,约束解码将每一步的输出限制为合法的指令格式或状态更新格式,使执行轨迹可复现。代价是候选空间被大幅压缩,模型的通用生成能力在推理循环中被“关闭”,仅保留结构化状态转移所需的部分。

为什么这件事值得讨论

模型能力的另一种度量

业界评估大模型,常用基准测试分数、推理延迟、上下文长度。Qwenputer提供了一个不同视角:模型能否在内部维持一个一致的状态机。RISC-V指令集相对规整,寄存器数量有限,是检验状态跟踪能力的天然试验场。如果模型能稳定执行一段RISC-V程序,说明其内部表征对离散状态有较强的保持能力。

据Hacker News上的项目介绍,Qwenputer已经能够“functioning”,即完成基本指令的执行闭环,而非仅做静态代码生成。这一点让它区别于此前一些“让LLM写汇编”的演示。

状态机(state machine) 指系统在有限个状态之间按确定规则迁移的计算模型。CPU 本质上就是一个状态机:当前状态由寄存器值和程序计数器定义,每条指令执行后状态按指令语义迁移到下一个状态。要求语言模型在内部维持一个一致的状态机,意味着模型必须在多步推理中无损地跟踪并更新一组离散变量。这与语言模型擅长的模式补全有本质区别——后者允许模糊和近似,前者要求逐步精确。上下文窗口内的 token 序列充当了“外部状态存储”,而注意力机制则负责在每一步检索和更新相关状态位。

对AI编程工具的启发

当前AI编程助手的主流路径是生成代码、由外部工具链执行、再把结果反馈给模型。Qwenputer提示了另一条路径:把轻量执行环境直接放进模型推理循环。对于需要多步状态推演的任务(如寄存器分配、指令调度),这种内化模拟可能减少对外部解释器的依赖。

当然,这条路径的代价是模型规模与专用性。Qwen3.5需要针对此类任务做定向约束,通用聊天模型并不会自发形成稳定的CPU状态机。

局限与争议

Qwenputer目前的信息披露有限。Hacker News上的讨论热度不高,缺乏第三方复现报告,也没有公开的性能对比数据。几个关键问题仍待回答:模型能执行多复杂的RISC-V子集?长程序下状态是否漂移?与标准仿真器相比误差如何?

从原理上看,语言模型模拟CPU面临上下文长度和状态精度的双重约束。程序越长,需要保持的寄存器与内存状态越多,模型的注意力机制能否无损承载这些离散信息,是决定该方法实用性的关键。Qwenputer的“确定性”设计缓解了随机误差,但不能消除模型对状态表征的容量上限。

另一个争议点在于命名与定位。把模型内的模拟称为“CPU”,容易让人误以为它具备硬件级保真度。更准确的描述或许是“基于语言模型的确定性指令解释器”。项目方在表述上选择了更具冲击力的说法,这在传播上有效,但也需要读者自行校准预期。

状态漂移 指的是模型在多步执行过程中,由于注意力衰减或表征容量限制,逐渐偏离正确状态的现象。程序越长,需要同时保持的寄存器值和内存内容越多,模型在生成后续 token 时对早期状态的“记忆”越不可靠。即便约束解码保证了每一步输出格式合法,也无法保证语义正确——模型可能生成格式正确但在语义上错误的寄存器值。这是“确定性”与“正确性”之间的关键区别:确定性只承诺每次运行结果相同,不承诺结果与真实 CPU 行为一致。第三方复现需要验证的正是后者。

值得关注的实验方向

Qwenputer的价值不在于替代RISC-V工具链,而在于它把“模型内部状态一致性”变成了可演示、可讨论的对象。如果后续有独立复现和更完整的指令集覆盖,这类工作可能为AI编程工具的状态推演能力提供新的设计思路。对于关注AI应用与开源工具的开发者来说,这是一个值得跟踪的小型实验。

#Qwenputer#Qwen3.5#RISC-V#确定性推理#AI编程#语言模型模拟器#状态机
分享:

相关推荐