verl-project/verl-recipe

A set of examples based on verl for end-to-end RL training recipes.

什麼是 verl‑recipe

verl‑recipe 是一個配套儲存庫,為 VeRL 套件(位於 https://github.com/verl-project/verl)打包了 配方 —— 即預先建置好的範例專案與設定。VeRL 是一個用於大語言模型(LLM)強化學習(RL)研究的開源框架。每個配方示範特定的 RL 技術、基準測試或整合(例如,LLM 的工具使用、單串流策略最佳化、使用 LangGraph 的多回合數學求解等)。

它如何運作

  1. 子模組整合 —— 此儲存庫應作為子模組加入主 VeRL 檢出(verl/recipe)中。這可確保配方與測試過的 VeRL 版本保持版本鎖定。
  2. 版本固定 —— 每個配方目錄中包含一個 REQUIRED_VERL.txt 檔案,記錄以下資訊:
    • 上游 VeRL 的 git URL。
    • 配方是遵循目前的 main 分支,還是固定到特定提交或發布標籤。
    • 安裝匹配 VeRL 版本所需的 pip install … 命令。
    • 對於 滾動 配方,儲存三個提交雜湊,以確保核心套件與配方樹皆可重現地固定。
  3. 一鍵安裝器 —— install_verl.sh 指令碼讀取配方的 REQUIRED_VERL.txt,並自動執行相應的 pip install(或基於 git 的可編輯安裝)。它可列出所有配方、顯示將要執行的精確命令,或安裝選定的配方(支援 --method git--option … 等可選旗標)。
  4. 貢獻工作流程 —— 新增或更新配方時,貢獻者必須更新 REQUIRED_VERL.txt 以反映新的 VeRL 版本。該儲存庫使用 pre‑commitruff 程式碼檢查器來維持程式碼整潔。

你可以用它做什麼

  • 無需從頭建置環境,即可執行 LLM 上的前沿 RL 實驗。例如:
    • retool – LLM 中戰略性工具使用的強化學習。
    • langgraph_agent – 一個小型 LangGraph ReactAgent,用於展開多回合數學表達式。
    • spoSingle‑stream Policy Optimization(arXiv:2509.13232)的實作。
    • partial_rollout – 支援中斷/恢復的同步式 RL,以減少 GPU 空閒時間(APRIL 風格)。
    • verl_tinker – 一個 HTTP 伺服器,公開 VeRL 動作器,可與 Tinker 烹飪書客戶端搭配使用。
  • 透過選擇配方中定義的選項來實驗研究變體(例如,DAPO 或 FlowRL 的論文特定檢查點)。
  • 由於每個配方都固定了確切的 VeRL 提交以及其依賴的任何輔助子模組提交,因此可重現已發表的結果。

適合誰使用?

  • 希望獲得可重現、社群驗證起點的 LLM 強化學習研究人員與工程師。
  • 尋找語言模型上高階 RL 方法具體範例的學生。
  • 已經使用 VeRL 的開發者,需要快速新增新實驗設定。

快速入門(快速步驟)

# 克隆 VeRL 並將配方作為子模組拉取
git clone https://github.com/verl-project/verl.git
cd verl
git submodule update --init --recursive recipe

# 列出所有可用配方及其固定的安裝命令
./recipe/install_verl.sh --list

# 安裝特定配方,例如 "retool" RL 工具使用範例
./recipe/install_verl.sh --recipe retool

該指令碼將顯示它將執行的精確 pip install 命令,您可加入 --show 進行預演,或加入 --yes 跳過確認。


簡而言之: verl‑recipe 是一個與 VeRL 套件並存的、經篩選的可重現 LLM 強化學習範例集合,並配有工具以確保套件與配方完全同步。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案