GitHub Repo
Transformers 社群重現 Mamba 快取續算異常,多 token 輸入可能遺失遞迴狀態
10 月 31 日的 Transformers 社群回報指出,Mamba-1 沿用快取處理多個新 token 時,可能從零重啟狀態計算,產生錯誤預測。另一名參與者已回報重現,但截至查核時尚未見修補提交或維護者確認。

Transformers 於 10 月 31 日收到一項 Mamba-1 正確性回報:模型先處理一段文字、保留快取,再一次送入多個新 token,輸出可能偏離完整序列計算。另一名社群參與者同日表示在主分支重現;截至查核時,議題仍開啟,尚未連結修補 PR。公開議題
這涉及快取介面的實際語意。官方文件說明,cache_params 包含狀態空間模型與卷積狀態,傳入後應使新輸入延續既有上下文,避免重新提供舊 token。因此,工程端若依此介面實作分塊預填或對話續算,需要確認分塊前後的數值是否一致。Mamba 文件
回報使用 Transformers 5.20.2、CPU 與 float32,未安裝兩個原生加速套件。作者以 mamba-130m-hf 對照完整輸入、逐 token 續算及分塊續算:逐 token 的 logits 最大差約 0.000263,分塊則約 115.897;後者最高分 token 的一致率為 71.4%。這些是小型重現案例的數值,不能直接換算為實際任務準確率下降。重現程式與結果
公開程式碼顯示,只有存在遞迴狀態且序列長度為一時,才進入狀態更新分支;多 token 輸入改走完整掃描,呼叫時未傳入既有遞迴狀態。參考掃描實作則以零初始化狀態,完成後再覆寫快取。這支持回報提出的根因,但不代表所有後端均已經過實測。Mamba 實作
對部署端而言,值得加入的檢查是讓同一輸入分別走完整、分塊與逐 token 路徑,比較 logits,而非僅確認請求成功。後續應追蹤修補是否承接既有狀態、加入回歸測試,以及加速核心的處理方式。社群亦提出檢查其他共用類似程式碼的模型,但其受影響範圍仍待驗證。後續討論