Simon Edwardsson · 阅读原文

原始来源:Simon Edwardsson

发现渠道:Hacker News · 原讨论

Simon Edwardsson 的 WorldTUI 看起来像终端,却不在背后运行 shell 或文件系统。它根据按键和此前画面预测下一次屏幕变化,相当于用模型模拟终端世界。作者从 Qwen2.5-Coder-0.5B 微调,使用约 33.6 万段真实 Docker 会话、约 20 亿 token;删掉大量不需要的词表后得到约 3.6 亿参数,量化到 4 bit 后约 208 MB,可在支持 WebGPU 的浏览器运行。

任务表示很重要。普通聊天模型一次输出整段文本,这里则编码“哪些行被更新、哪些行照抄、光标移到哪里”,把词表压到字节和行操作等 333 个符号。作者还让模型在自身预测有误的状态上继续学习怎样修复,减少自由运行时不断偏离训练输入的问题。多行同时起草、再按顺序核验的推理方式,则在保留行间一致性的同时改善较大画面的响应。

最有启发的结果来自一次较早检查点的删层实验:去掉第七层后,下一 token 准确率只由 99.3% 降到 98.9%,短间隔文件读回却由 64 次全对降到全错。测试给的是正确历史,不能把失败都归为前面生成错了。作者后来训练的较浅学生恢复了读回,却在另一套 shell 测试上退步,最终没有采用。当前模型仍会搞错追加文件、嵌套路径或 Python 运算;文章也说权重稍后发布,不能称为已经公开可下载。

可信度 65 · 重要性 85 · 新颖度 78

技术与主题

评测与基准 · 训练与对齐 · World Models · State Persistence · Screen Delta Encoding

Simon Edwardsson

观点原文

作者公开自己的数据表示、失败实验和浏览器体验;本刊未运行演示。

忠实转述(非原句):他没有隐藏失败方案:删层看起来几乎不影响局部预测,却破坏了读回;较浅学生修好这一项,又损失了另一项能力。文章的价值也在于把没有采用的结果留下来,帮助读者理解小模型优化不能只盯一个指标。

htoz1

观点原文

回应原帖:原帖讨论

HN 针对模拟终端用途的疑问,未报告性能测试。

忠实转述(非原句):他问,既然已有真正终端,为什么还要做一个由模型模拟的终端。这是合理的产品用途追问;它与作者将项目视作模型能力实验的目标不同,不能用一个目标替另一个目标打分。

编辑评读

这项探索的新能力是把一种有状态、可交互的程序环境压进小模型,并让它在浏览器里响应。屏幕增量编码和局部并行起草,是具体可迁移的工程手法;其价值不取决于它能否立刻取代真正终端。作者自己也把它视为有趣实验,而不是生产工具。

删层结果提醒我们,局部预测指标可能被大量简单字符、空白和常见界面支配。文件名或内容在稍后被准确读回,占据的 token 比例不一定高,却决定“世界”是否保持一致。一次很小的平均下降因而可能掩盖关键能力消失。这个解释与作者实验相符,但没有进一步定位到该层的具体记忆机制。

后续评价应当同时保留局部准确率和跨步骤状态测试,例如先写一个罕见值,插入无关操作,再检查读回、重命名和追加后的内容。还要区分给定真实历史与模型自行滚动两种设置。作者部分基准对照让通用模型预测完整输出,接口并不完全一致,因此不宜把分数直接宣传为全面胜过更大的编码模型。

核查依据

所属事件

收录记录