ServiceNow AI團隊近期分享了他們將強化學習(RL)訓練管線中的推理引擎從vLLM V0遷移到V1的經驗。他們的核心原則是:先修復後端行為,再調整RL目標,以避免混淆推理錯誤和目標修正。
遷移的目標非常明確:驗證V1能否返回訓練器期望的logprobs,然後在相同工作負載下與V0參考對比。初始V1運行顯示訓練指標如clip rate、KL散度、熵和獎勵明顯偏離參考。團隊將失敗模式分為三類:語義不匹配、推理路徑不匹配和目標不匹配。他們優先處理前兩類。
第一個修復是logprobs語義:V1默認返回原始模型輸出的logprobs,但訓練器需要經過温度縮放、懲罰和top-k/top-p過濾的處理後logprobs。通過設置logprobs-mode=processed_logprobs,修復了均值偏移,但訓練曲線仍有差距。
第二個修復是運行時默認值:V1引入了前綴緩存和異步調度等新默認值,這些在V0中不存在。禁用這些功能(enable-prefix-caching: false和async-scheduling: false)移除了V1特有的自由度。
第三個修復是飛行中權重更新:需要匹配V0的更新模型。V0的行為是阻塞執行、加載新權重、恢復而不顯式清除緩存。V1中使用pause_generation(mode="keep", clear_cache=False)和resume_generation()來保留緩存。
第四個修復是fp32 lm_head:訓練器使用fp32精度計算logits,而V1可能使用其他精度。啓用fp32 lm_head路徑後,獎勵曲線最終與V0參考對齊。這個細節在MiniMax-M1技術報告和ScaleRL論文中也有提及。
通過一系列消融實驗,團隊確認了processed_logprobs單獨不足以解決問題,批量不變性和最初的V1運行都不是公平基線。最終結論是:在考慮目標側修正(如截斷重要性採樣)之前,必須先確保推理後端正確性。團隊計劃在恢復推理一致性後,再進行常規的異步/離策略清理,包括保留行為策略logprobs、重計算舊策略logprobs、分離後端不匹配修正等。