mini-AGI logo

mini-AGI

打开

mini-AGI 是一个字节级模型,在 8GB 显存显卡上从零开始训练,并能持续从单一数据流中学习而不遗忘已掌握的内容。

分享:
查看替代方案

mini-AGI 是 Alexey Borsky(GitHub 上的 volotat)做的一个研究项目,它只追问一个很窄、但影响很大的问题:语言模型能不能在单张消费级显卡上,从单一数据流持续学习,同时不发生灾难性遗忘?第一方仓库 创建于 2026-09-19,2026-09-22 GitHub 显示 305 star22 fork。项目采用 MIT 许可,README 也直说了:目前它是一个玩具级模型,不是拿来干正经活的工具。

它到底是什么

它是一个字节级语言模型,从零开始训练,batch size 为 1,显卡至少需要 8GB 显存。训练进行中时的规模大约是 530M 参数并持续增长,但参数量其实不是关键数字。模型把专家以普通文件的形式存在磁盘上,按需换页到显存,所以容量上限取决于剩余磁盘空间而不是显存。容量不够时它会在训练中长出新专家,把没人调用的专家剪掉,并且推理与训练走完全相同的代码路径。

架构怎么运作

字符不会穿过一个固定的层堆叠。它先经过两个稠密的前奏块,然后经过一个最多重复 24 次的循环块,每次重复都从共享专家池中挑选自己的专家。两次重复之间的隐状态会与输入嵌入合并,因此这个循环不会偏离正在阅读的文本。

  • 自适应深度。 一个停机头(halting head)会在每一行为每个字符打分,只要再走一行不会改变答案,字符就停下。README 给出的实测是:读取时平均约 8.0 行,生成时约 9.9 行。
  • 按次路由,而不是按字符路由。 最多 26 次块应用各自挑自己的 top-8 专家,因此一个字符实际触达的专家远超「top-8」给人的印象。
  • 专家没有主题标签。 没有任何地方给专家指派学科,soft top-k 路由自行把能力分摊到专家池里。代价是能力共享参数,因此可能互相干扰。

关于遗忘的结论

整个设计所依赖的测量,是把学习率拆开。用与专家相同的学习率读取 524,000 个字符的国际象棋语料,会让另外七个没被读取的学科从 1.12 nats 恶化到 3.73 nats。把主干学习率设为专家的 0.1 倍后,这个遗忘量降到 +0.0067 nats,项目称相当于相对随机基线保留了 99.84% 的进度。另外两个发现同样重要:冻结工作集并不是防止遗忘的原因;而损失更像是「位移」而不是「破坏」,因为重新读取 131,000 个字符后,四分之三的能力就回来了。

怎么跑起来

克隆仓库,安装 Python 依赖,用 config.yaml 配合 train.py 开始训练,再用 serve.py 与模型对话。corpora/ 下的语料构建器会从代码、算术、棋谱、对话和推理数据中拼出数据流。仓库 README 记录了换页规则、增长的几个刹车条件(空间、使用率、收益、适配、诚实),以及那条剪枝规则:专家「死了」的标准是没人调用它,而不是它的 gate 值小。

局限与风险

  • 权重尚未发布。 README 说明当前的训练还在跑第一遍语料,权重会在约两周后放出。
  • 输出仍是玩具级。 项目自己给出的样例短、语法正常,但会重复。
  • 这是训练,不是加载。 没有现成检查点可下载,入口是一个你在自己机器上跑的训练任务。
  • 只有一套自测基准。 结论来自作者在自己语料上的探针,而不是标准评测集。

常见问题

现在能下载模型吗?

还不能。代码是 MIT 许可且公开的,但截至 2026-09-22 训练好的权重尚未发布。

需要什么硬件?

README 的目标是一台至少有 8GB 显存显卡的台式机或笔记本,设计上刻意用磁盘空间换显存。

能跟前沿模型比吗?

不能,README 也直接这么说。它贡献的是持续学习机制,而不是输出质量。

替代方案

  • Bespoke Nimble:同样是小型可自托管模型,但训练目标是结构化决策而非持续学习。
  • LFM2.5 2.6B:今天就能拿来干实际工作的开源权重小模型。
  • LongCat 2.0:体量大得多的开源模型,可用于对比长上下文表现。

总结

mini-AGI 值得一读,因为它把一个大难题拆到只剩一个、并给出了解决问题的关键测量,而且是在几乎人人都有的硬件上完成的。把它当成一个有可复现配方的实验,而不是一个工具:代码许可宽松,权重还在路上,输出质量并不是重点。

评论

还没有评论。成为第一个评论的人!