生產路線圖
只有在工作順序被維持時,TinyLoop 才能成為可信基礎設施。
順序仍然重要:
- 先證明 decode 與 runtime 正確性
- 再強化效能與 serving 行為
- 再用量測證明其獨特研究優勢
若按此順序進行,TinyLoop 才能從「有趣的 runtime」走向「嚴肅的專用框架」。
階段 1:Decode 與 Runtime 正確性
目標
讓自回歸執行成為可用且可測試的能力。
已完成
- 預設開啟的 KV-cache decode
- cached-vs-uncached regression 覆蓋
- tokenizer-aware Python regression
- prefix caching
- sliding-window cache
- 共享快取推測式 runtime
- CTest 與 self-hosted CUDA CI 串接
尚未完成
- 更多 prompt 與更長執行長度的廣泛 regression 覆蓋
- 一等公民的 tokenizer-backed CLI 行為
- 更乾淨的公開 tokenizer 故事
退出條件
TinyLoop 應能明確主張:
- cached decode 為預設
- parity 覆蓋容易重跑
- 對外公布數字對應已檢查 runtime 狀態
階段 2:效能與 Serving 強化
目標
把 TinyLoop 變成可操作的 runtime,而不只是已驗證函式庫。
主要工作流
Attention
- 妥善完成 FlashAttention-2 roadmap 項目
- 保留 decode 的直接 cached single-query 路徑
- 把目前較安全的 tiled prefill kernel 視為中介步驟,而非終局
依模式做記憶體分析
- 更清楚分離 prefill 與 decode 的預期
- 讓 runtime 記憶體回報更容易理解
Serving 介面
- HTTP API
- 模型生命週期管理
- 健康檢查端點
- 結構化 log 與 metrics
Batching
- paged attention
- 先做 static batching
- 之後再做更進階排程
退出條件
TinyLoop 應能明確主張:
- 已提供可用服務介面
- 具備 runtime 失敗診斷能力
- 具備模式感知的效能與記憶體預期
階段 3:證明獨特優勢
目標
展現主流 runtime 尚未具備的部分:
- 可調適 loop 深度
- 同權重自我推測式解碼
- β-aware 量化優勢
主要工作流
Early Exit
- 新增可設定的退出邏輯
- 記錄每 token 的 loop 次數
- 與固定 loop baseline 比較品質與延遲
β-aware 量化
- 先讓 GPTQ 穩定
- 實作 β-weighted GPTQ
- 在固定 bit-width 下證明可量測收益
混合 loop 次數的排程
- 僅在 adaptive loop depth 真的成立後再做
- 避免排程器反而破壞 adaptive compute 的收益
退出條件
TinyLoop 應能明確主張:
- adaptive depth 可被量測
- speculative decode 不只 demo
- 論文中的量化主張是真實能力,而非願景
目前優先順序判斷
從純框架/runtime 角度,目前最大操作缺口是:
- serving
- batching
- tokenizer-first UX
- 完整 FlashAttention-2 整合
從論文角度,最大剩餘研究缺口仍是:
- 穩定 GPTQ,接著 β-weighted GPTQ
這兩組優先順序不同,請明確分開管理。