1. SFT(有監督微調)
1.1 數據格式
- JSONL(每行一個 JSON 對象)最為流行;也可用 CSV/TSV,但 JSONL 更靈活。
- 字段設計
prompt
:用戶輸入或任務指令(通常以“系統指令+用戶問題”拼接)completion
:希望模型生成的“黃金”回答- 可選
metadata
:如示例來源、類別標簽、示例難度等
{"prompt": "<|SYSTEM|>你是一名法律顧問。\n<|USER|>合同糾紛如何處理?", "completion": "首先,應當……并在必要時咨詢專業律師。"}
{"prompt": "<|SYSTEM|>你是一名旅游助手。\n<|USER|>去巴黎有什么推薦?", "completion": "巴黎的必去景點包括埃菲爾鐵塔……"}
- 長度與拆分
prompt
+completion
合計 token 數一般不超過模型最大上下文長度(如 4K、8K)。- 對超長示例,可分段給出——比如把背景單獨一個示例,把核心提問單獨一個示例。
1.2 常見示例規模
- 小規模:幾千條(用于快速驗證思路)
- 中等規模:1–10 萬條(可獲得明顯效果提升)
- 大規模:幾十萬–百萬條(面向全功能對話/寫作助手)
經驗:對于 6B 量級模型,至少需要 2–5 萬條高質量示例才能看到穩定的 SFT 提升;上不封頂,示例越多、越多樣,微調效果越好。
2. RM(獎勵模型訓練)
2.1 數據格式
- 對比式偏好數據:每條記錄包含一對或多組生成,模型學習去區分“好”與“差”回答。
- JSONL 格式示例:
{"prompt": "如何寫一封求職信?","response_a": "尊敬的招聘經理……", "response_b": "你好,我想要這份工作……", "label": 0}
label
:通常用0
、1
表示哪個 response 更優(0
表示response_a
更好,1
表示response_b
更好)。- 可擴展
- 多選對比:
responses: ["A","B","C"]
+label: 2
- 打分式:
score_a: 4.5, score_b: 3.2
- 多選對比:
2.2 常見示例規模
- 中等規模:1–5 萬對(可用人工標注或半自動篩選)
- 大規模:5–20 萬對(用于更嚴格的排序和獎勵信號)
建議:初期可先收集 2–3 萬對,高質量人工標注;后期再擴充并加入模型自標反饋(例如用當前策略生成對比對,再由人審核)。
3. PPO(強化學習微調)
3.1 數據格式
PPO 環節并不存儲單一固定的數據集,而是在每次訓練迭代(rollout)中動態生成:
- Prompt Batch:事先準備的一批
prompt
(與 SFT 相同格式或專門設計的評測提示)。 - Policy Outputs:當前模型(Policy)對每個 prompt 生成的多條候選
completion
。 - Reward Scores:用 RM 或其它函數(如安全檢測、相似度、算術準確度)對每條候選打分。
- Advantage / Return:根據 reward 及折扣率(γ)計算出的優勢值,用于 PPO 更新。
rollout[0]:prompt: "如何寫求職信?"responses: ["版本A", "版本B", ...]rewards: [1.2, -0.3, ...]advantages: [0.8, -0.5, ...]
rollout[1]:prompt: "巴黎旅游推薦?"...
- 存儲方式:
- 訓練過程中可按 epoch 暫存到內存或中間文件;
- 完成后可歸檔為帶
rewards
、advantages
的 JSONL 或二進制格式,用于后續分析和復現。
3.2 常見示例規模
- Rollout 大小:每次迭代通常采集 1–5K 個 prompt,每個 prompt 下 1–4 條生成,共 5K–2W 條樣本。
- 訓練輪次:典型 100–500 個迭代,總樣本量可達數十萬條。
在 PPO 中,數據量并不是一次性全部收集好的,而是與訓練進度交替生成并馬上用來更新策略。
四、總結對比
環節 | 格式要素 | 常見規模 | 數據來源 |
---|---|---|---|
SFT | {"prompt","completion"} | 1e4–1e6 條 | 現有數據集+人工標注 |
RM | {"prompt","response_a","response_b","label"} | 2e4–2e5 條對 | 人工偏好/模型自標 |
PPO | Rollout(prompt + response + reward + advantage) | 每迭代 5e3–2e4 條,累計 1e5–5e5 | 動態生成+RM 評分 |
- SFT:打好「基本功」,讓模型學會“如何回答”
- RM:教會模型“如何區分好壞回答”
- PPO:通過強化學習,最大化實際獎勵信號,進一步提升模型在真實任務中的表現