本文與《M4 本機推理:llama.cpp 與 Ollama》、《MLX-LM 與 Transformers 批次與 KV》同一預算語彙:上下文、KV、批次與是否雙模型同駐,會一起擠壓頻寬。下列為框架中性的決策表與驗收欄位,實作名詞請對應貴司執行緒/草稿寬度/樹狀投機等設定。
硬體前提 · 方法對比 · 參數掃描步驟 · 失敗回退 · 驗收門檻範例 · FAQ
硬體前提
在 M4 級 Apple Silicon 上,請先寫死:晶片代次、統一記憶體總量、電源模式、散熱環境(桌上/機櫃)、同機 GUI 與背景同步是否關閉。預熱 3~5 分鐘後再取樣,否則 decode tokens/s 與 p95 延遲會被節流塗抹。與可觀測性矩陣併用時,建議把 machine_profile、power_mode 與 run_id 寫進同一追蹤批次。
方法對比
標準自回歸每步只做一次 target 前向;推測解碼以 draft 產生多 token 候選,再由 target 平行或塊狀驗證,理論上提高有效 decode 吞吐,但增加記憶體佔用與驗證分支成本。接受率(驗證通過長度/候選長度)過低時,牆鐘常劣於單模型。
| 維度 | 標準自回歸 | 推測解碼(draft/投機) |
|---|---|---|
| 記憶體 | 單一權重+單路 KV/啟用暫存 | 通常需同時容納 draft 與 target;峰值上升最明顯 |
| 吞吐主導 | 受限於 target 每步一次前向 | 高接受率時 decode tokens/s 可顯著高於基線 |
| 尾延遲風險 | 分佈較單純;批次變動影響線性 | 驗證失敗回捲與重算會拉長 p95~p99 |
| 工程複雜度 | 低;觀測欄位少 | 需記錄接受率、回捲次數、雙模型版本與對齊的 tokenizer 假設 |
參數掃描步驟
- 基線:關閉投機,固定上下文 token 數與輸出上限,記錄 TTFT、穩態 decode tokens/s、每步延遲直方圖。
- 單變因:每次只改一項(例如候選步數或 draft 寬度),其餘與基線完全相同。
- 浸泡:至少連續 15~30 分鐘代表性佇列,觀察熱節流與交換檔是否抬頭。
- 對齊品質:以固定種子比對關閉投機與開啟投機的輸出或 logit 級一致性(若產品允許非嚴格對齊,需在規格書註明)。
# 概念占位:報告欄位(依你的 harness 替換鍵名)
# baseline: ttft_ms, decode_toks_s, decode_p95_ms_per_tok, peak_rss_gb
# speculative: accept_rate, rollback_per_min, decode_toks_s, decode_p95_ms_per_tok, peak_rss_gb失敗回退
在執行緒或閘道層實作功能旗標與熔斷:當滾動視窗內接受率低於門檻、連續 OOM、或 p95 decode 延遲高於自回歸基線一定比例時,自動切回標準解碼並寫審計事件。多租戶場景請與多模型路由成本矩陣的 per-tenant 預算欄位對齊,避免單一租戶掃參拖垮整池。
可量測門檻與統一記憶體驗收清單(範例,請以產品校準)
下表為數量級占位:互動產品常看 p95;離線管線常看穩態 tokens/h。請以貴司上一版已發行基線±百分比收斂,而非直接抄寫絕對值。
| 指標 | 自回歸基線(範例) | 推測路徑建議關係 |
|---|---|---|
| TTFT(首 token) | 例如 ≤ 900 ms(4k 上下文、batch=1) | 不得劣於基線 +15% 連續五分鐘 |
| 穩態 decode | 例如 ≥ 28 tokens/s(batch=1、固定量化) | 應 ≥ 基線 ×1.15,否則關閉投機 |
| decode p95 每權杖延遲 | 例如 ≤ 45 ms/tok | 不得高於基線 ×1.25 |
| 滾動接受率 | — | 例如 5 分鐘視窗平均 ≥ 0.42,否則回退 |
| 峰值工作集(含 KV) | 例如 ≤ 實體記憶體的 0.78 | 投機路徑不得觸發「長時間紅色記憶體壓力」 |
| 交換檔穩態 | 例如試跑機 < 512 MB | 任一超標即記錄並降 draft 或關閉投機 |
驗收勾選(上線前)
- 已保存 target/draft 權重校驗和、tokenizer 版本與量化型別。
- 已匯出自回歸與投機兩條曲線:tokens/s、p95、接受率、回捲率、峰值 RSS。
- 已在與生產同代次硬體上完成 30 分鐘浸泡;交換檔與溫度曲線已附件。
- 已在閘道設定功能旗標、熔斷條件與回退後的降級 SLO。
- 若管線含評測或 DSPy 類編譯,已與離線評測與遠端成本共用同一
run_id命名規則。
FAQ
推測解碼會改變分布嗎?在嚴格對齊實作下應與標準採樣一致;若使用近似驗證或浮點非決定性,需在合規與測試策略中顯式列出。
只有遠端 Mac 節點才值得掃參嗎?筆電本機可先縮樣驗證趨勢;正式簽核建議在專用節點重放,與遠端 OpenAI 相容推論路由一併記錄 tokens/h 與租金分攤。
draft 一定要更小嗎?常見配置是更小/更淺的 draft,但關鍵是接受率與記憶體曲線;實驗上可嘗試與 target 同族不同量化寬度組合。
若要把上述浸泡與簽核搬到專用 Apple Silicon 遠端環境,可先免登入瀏覽定價與購買頁;技術細節見說明中心與首頁。延伸閱讀:多模型路由、GenAI 可觀測性。
小結:推測解碼是記憶體換吞吐的賭注;以接受率與尾延遲熔斷護欄,才能在 M4 統一記憶體上可重現地贏過自回歸基線。