跳至主要内容

Rewind Speculation

問題

Self-speculative decoding 用 L=2 做 draft、L=8 做 verify。當 draft 被拒時,標準做法是丟棄 draft 並只接受 verify 結果。但 L=8 驗證跑了全部 8 次迭代 — 如果 L=4 就足夠呢?

洞察

當 L=2 被 L=8 拒絕時,可以便宜地檢查中間深度(L=4)是否與 L=8 一致。

實測結果

H100 / 2B INT4:

指標
Rewind 命中率88.9%
Draft 接受率59.5%

88.9% 的拒絕發生在 L=2 到 L=4 之間。L=5,6,7,8 的計算沒有增加任何價值。

運作方式

使用方式

tinyloop model.tinyloop speculate \
--draft-loops 2 --verify-loops 8 --rewind-L 4

深度頻譜

為何僅限 Looped 架構

在標準 speculative decoding 中,draft 和 verify 模型是不同的神經網路。沒有「中間深度」的概念。在循環 transformer 中,L=2、L=4、L=8 都是相同模型在不同深度。Rewind 檢查不需要額外模型、額外記憶體或額外訓練。

系統DraftVerify中間額外記憶體
MedusaMedusa heads完整模型+heads
EAGLEEAGLE head完整模型+head
TinyLoopL=2L=8L=40 bytes