綠色(accept)= 被接受的草擬 token;紅色(reject)= 未被接受的草擬 token(含實際不符位置與 其後被捨棄的草擬位);橙色(correct)= 目標模型的改正 token(第一個不符位置由目標模型的正確答案 取代);藍色(bonus)= 全收時目標模型於同一次驗證呼叫「順帶」多算出的下一個 token; 帶刪除線+淡化(truncated)= 該 token 雖經驗證判定應併入序列,卻因序列已達長度上限 (targetLength=10)而未實際寫入——教學上刻意保留「已算出但未套用」與「未通過驗證」兩種語意的 差異,第 4 輪即真實觸發此情況(第 3 位與 bonus 欄皆判定應併入,僅前 2 個實際套用)。
決定性教學簡化,非真實機率取樣:真實 speculative decoding 是機率式演算法——草擬 token 依「目標模型機率/草擬模型機率」之比值做 rejection sampling 決定接受或拒絕,拒絕後的改正 token 也是依修正後機率分佈重新抽樣。本頁兩個「模型」皆為決定性查表函式(給定前綴尾 token → 唯一 下一 token,無機率分佈),「草擬 token 是否被接受」簡化為「是否等於目標模型的 argmax(=查表 結果)」。保留的是「草擬-驗證-回滾」與「輸出與目標模型單獨自迴歸等價」這兩個核心概念,捨棄的是 機率抽樣細節(backlog:若要更貼近真實演算法,可將查表函式換成機率分佈表,並實作 rejection sampling 版本的接受/改正邏輯)。
bonus token 口徑:全收(k 個草擬 token 全部接受)時,目標模型於同一次平行驗證呼叫中 「順帶」多算出下一個位置的輸出,本輪因此貢獻 k+1 個 token——這是經典 speculative decoding 演算法 的標準做法;中途拒/首拒則貢獻 mismatchIndex+1 個 token(接受前 mismatchIndex 個 + 目標模型改正第 mismatchIndex 個),此時沒有 bonus token。
呼叫數口徑(教學縮尺):「一輪」計為目標模型 1 次驗證呼叫(不論該輪 mismatchIndex 為 何、也不論是否產出 bonus token,均計 1 次),全部輪數之和即 verifyCalls;基線(逐 token 自迴歸,不做任何草擬)呼叫數 = 需生成的 token 數 = targetLength − 1(起始 prompt 的 1 個 token 不需呼叫模型)。此為「呼叫次數」這個概念性對照,真實世界的加速比另受批次驗證成本、接受率、硬體 平行度等因素影響,不能直接等同於實際加速倍率。
等價保證是本法核心賣點:推測解碼真正的價值不只在於「省呼叫次數」,而在於它保證省下 呼叫次數的同時輸出完全不變——下方「輸出等價宣告」逐字比對投機解碼最終序列與獨立重放(不呼叫本頁 生成邏輯)之純 TARGET 自迴歸序列,只要兩者完全相同,就代表這個核心正確性保證成立。
逐輪記錄(rounds:草擬/驗證/型態/接受/改正/bonus/套用/累積序列)
| 輪 | context | 草擬 draft | 驗證 targetPreds | 型態 | 接受 | 改正 | bonus | 套用 applied | 累積序列 |
|---|
輸出等價宣告(equivalence,本法核心正確性保證)
呼叫數對照(投機 verifyCalls vs 基線 baselineCalls)
| 方式 | 呼叫次數 | 說明 |
|---|