OpenMythos:解构 Claude Mythos 的循环深度 Transformer 架构

OpenMythos:解构 Claude Mythos 的循环深度 Transformer 架构
项目:https://github.com/kyegomez/OpenMythos
作者:Kye Gomez
热度:4161 ⭐(仅 3 天)
一、项目概述:现象级爆发的理论重建
2026年4月18日,一个名为 OpenMythos 的项目在 GitHub 上诞生。仅 3 天内收获 4161 star,fork 数 911。项目核心命题:对 Claude Mythos 的架构进行理论重建。
核心假设
Claude Mythos = Recurrent-Depth Transformer (RDT)
| 传统模型 | 循环深度模型 |
|---|---|
| 堆叠数百层独立权重 | 循环使用少量层的权重 |
| 参数量 ∝ 深度 | 参数量固定,深度由循环次数决定 |
| 推理成本固定 | 推理时可动态增加循环 |
所有推理静默发生在单次前向传递中,在连续潜在空间内——没有中间 token 输出。
二、架构解析:三段式循环设计
整体流程
| 阶段 | 功能 | 执行次数 |
|---|---|---|
| Prelude | 输入编码,提取初始特征 | 1 次 |
| Recurrent Block | 深度推理循环 | T 次(可动态调整) |
| Coda | 输出投影,生成 logits | 1 次 |
循环更新公式
h_{t+1} = A·h_t + B·e + Transformer(h_t, e)
| 符号 | 含义 | 作用 |
|---|---|---|
h_t | 循环 t 后的隐藏状态 | 累积推理深度 |
e | 编码输入(来自 Prelude) | 每步注入,防止漂移 |
A, B | 学习的注入参数 | LTI 稳定化 |
Transformer | Attention + MLP | 非线性变换 |
关键:e 在每步注入,保持原始输入信号在整个循环深度中活跃。
三、六大技术创新
1. LTI-stable Injection(谱半径 < 1 保证)
循环模型训练不稳定的原因:残差爆炸(隐藏状态跨循环无界增长)和损失尖峰(谱范数过大)。
| 问题 | Parcae 解决方案 |
|---|---|
| A 可能发散 | A_continuous = Diag(-exp(log_A)) 永远负对角 |
| 离散化不稳定 | A_discrete = exp(Δt·A_c) 保证值 ∈ (0,1) |
| 梯度爆炸 | log space 计算 + clamp(-20,20) |
# 核心实现
def get_A(self):
# log space 避免 0 * inf = NaN
return torch.exp(-torch.exp((log_dt + log_A).clamp(-20, 20)))
# 保证: ρ(A) < 1 无论学习率或批次噪声如何
2. ACT Halting(自适应计算时间)
超过某深度后,过度循环退化预测。解决方案:每个位置学习停止概率。
| Token 类型 | 行为 | 循环次数 |
|---|---|---|
| 简单 token | 早退出 | 1-4 次 |
| 中等复杂 | 正常循环 | 8-12 次 |
| 困难 token | 完整深度 | 16+ 次 |
同一批次内,不同位置可不同深度——2-3x throughput 提升。
3. Multi-Latent Attention(MLA)
| 机制 | KV Cache 存储 | 内存减少 |
|---|---|---|
| GQA | n_kv_heads × head_dim × 2 | ~4x |
| MLA | kv_lora_rank + n_heads × rope_dim | 10-20x |
MLA 缓存低秩 KV latent,每步从 latent 快速重建完整 K/V。
4. DeepSeekMoE FFN
| 配置 | 值 | 说明 |
|---|---|---|
| n_experts | 64-512 | 路由专家池 |
| n_shared_experts | 2-8 | 始终激活,吸收通用知识 |
| n_experts_per_tok | 4-8 | 每 token top-K 选择 |
| 激活率 | ~5-6% | 真正计算数 ≠ 存储数 |
跨循环演化时,路由器可能在不同深度选择不同专家子集。
5. Loop-Index Embedding
每个循环是不同计算阶段,类似 RoPE 但作用于循环深度而非序列位置。
# 循环索引嵌入
freqs = 1.0 / theta ** (arange(0, loop_dim, 2) / loop_dim)
angles = loop_t * freqs
emb = cat([angles.sin(), angles.cos()])
h = h + emb # 让共享权重在不同循环行为不同
6. Depth-wise LoRA Adapter
delta(x, t) = (down(x) * scale[t]) @ B
| 组件 | 作用 |
|---|---|
| down: Linear(dim, rank) | 共享降维 |
| B: Parameter(rank, dim) | 共享升维 |
| scale: Embedding(max_loops, rank) | 每循环的缩放向量 |
四、为什么这解释了 Mythos
1. 系统化泛化
三阶段 grokking:记忆 → 分布内泛化 → 系统化泛化(OOD,突然涌现)
| 阶段 | 表现 | 触发条件 |
|---|---|---|
| 阶段1 | 拟合训练分布 | 初始训练 |
| 阶段2 | 处理已知组合 | 足够数据 |
| 阶段3 | novel 组合 OOD | 循环深度足够 + grokking |
2. 深度外推
| 场景 | 标准 Transformer | 循环 Transformer |
|---|---|---|
| 训练 5-hop | ✓ 成功 | ✓ 成功 |
| 测试 10-hop | ✗ 失败 | ✓ 成功(增加循环) |
3. 潜在思想 = 隐式 CoT
T 循环隐式模拟 T 步 CoT,但在连续潜在空间而非 token 间。可同时编码多种替代下一步——接近对推理空间的广度优先搜索。
4. 参数效率
| 模型 | 参数 | 等效深度 |
|---|---|---|
| 标准 Transformer | kL 层参数 | kL 层 |
| 循环 Transformer | k 层参数 | kL 层质量 |
| 效率提升 | ~L 倍 | 推理时可扩展 |
五、应用场景
1. 深度推理任务
| 场景 | 循环次数 | 优势 |
|---|---|---|
| 多步数学推导 | 32-64 | 无需显式 CoT,一步到位 |
| 复杂逻辑分析 | 24-48 | 隐式推理链,避免中间 token |
| 长程规划 | 48-64 | 连续潜在空间编码多路径 |
| 代码生成 | 16-32 | 深度语义理解 |
2. 实时交互系统
ACT Halting 让简单请求快速响应(1-4 循环),复杂问题深度思考(16+ 循环),同一批次内混合处理。
# 推理时间控制
简单请求: 0.1s (4 loops)
中等复杂: 0.3s (12 loops)
深度推理: 1.0s+ (32+ loops)
3. 大规模部署
| 配置 | 参数存储 | 激活计算 | KV Cache |
|---|---|---|---|
| 100B MLA | 100B | ~5B/token | 减少 15x |
| 传统 100B | 100B | 100B/token | 标准 |
| 效率提升 | - | 20x | 15x |
4. 边缘设备推理
1B-3B 配置可在手机端运行,循环次数根据设备算力动态调整:
# 边缘部署示例
手机端: mythos_1b, 8-16 loops, ~100ms
笔记本: mythos_3b, 16-24 loops, ~200ms
服务器: mythos_10b+, 32-64 loops
5. 研究与实验
| 实验方向 | OpenMythos 支持 |
|---|---|
| 深度外推研究 | n_loops 可超过训练值 |
| ACT 机制实验 | act_threshold 可调整 |
| MoE 路由分析 | 完整路由日志 |
| 稳定性研究 | 谱半径监控 get_A() |
六、模型规模配置
| Variant | dim | Experts | Loops | Context | Max output |
|---|---|---|---|---|---|
| mythos_1b | 2048 | 64 | 16 | 4k | 4k |
| mythos_3b | 3072 | 64 | 16 | 4k | 4k |
| mythos_10b | 4096 | 128 | 24 | 8k | 4k |
| mythos_50b | 6144 | 256 | 32 | 8k | 4k |
| mythos_100b | 8192 | 256 | 32 | 1M | 128k |
| mythos_500b | 12288 | 512 | 48 | 1M | 128k |
| mythos_1t | 16384 | 512 | 64 | 1M | 128k |
七、关键洞察总结
| 属性 | 描述 |
|---|---|
| 架构 | Prelude + Looped Recurrent + Coda |
| FFN | MoE — fine-grained + shared experts |
| 激活率 | ~5% per token(存储数 ≠ 计算数) |
| 推理机制 | Implicit multi-hop via latent updates |
| 推理扩展 | 更多循环 = 更深推理,指数衰减 |
| 稳定性 | LTI-constrained: ρ(A) < 1 by construction |
| 循环差异化 | RoPE-like loop-index embedding |
| 结构偏向 | 推理强,记忆弱 |
八、参考文献
- Loop, Think, & Generalize — Implicit Reasoning in RDT
- Parcae — Scaling Laws for Stable Looped LM
- Reasoning with Latent Thoughts — Power of Looped Transformers
- DeepSeek-V2 — Multi-Latent Attention
- DeepSeekMoE — Fine-grained Expert Segmentation
- Relaxed Recursive Transformers — Depth-wise LoRA
结论
OpenMythos 让循环 Transformer 从研究论文变成可训练、可部署的工程系统。无论 Claude Mythos 是否证实为 RDT,这个项目已经提供了可验证的理论框架和完整实现。
如果 Claude Mythos 真的是 RDT,OpenMythos 就是通往理解它的钥匙。