
微調用合成資料:如何生成真正有效的訓練資料
生成微調用合成訓練資料的實踐指南——涵蓋提示策略、品質過濾、分布匹配,以及混合真實資料與合成資料的 80/20 原則。
微調受限於資料,不是算力、模型架構或超參數調整,而是資料。具體來說,是缺乏足夠高品質的標注樣本來教會較小的模型執行特定任務。
大多數嘗試微調的團隊在第一週就會發現這個問題。他們有 50 到 200 個真實樣本,需要 1,000 到 5,000 個,而以所需品質水準收集更多資料可能需要數月時間。這就是資料瓶頸,也是微調專案停滯或被放棄的最常見原因。
合成資料生成提供了一條出路。您使用前沿模型——GPT-4o、Claude 3.5、Gemini——來生成較小模型將從中學習的訓練樣本。做得好,合成資料能以人工策劃資料集百分之一的成本和千分之一的時間,達到 80–90% 的效能。
做得差,它會產生一個教您的模型自信地產生幻覺的資料集。差異在於技術。
為何合成資料有效(以及何時無效)
合成資料背後的核心洞察很簡單:前沿模型已經能夠很好地執行大多數窄任務。它們只是太貴、太慢,或風險太高(隱私、供應商鎖定),無法在生產中大規模使用。微調將這種能力轉移到更小、更便宜、可本地運行的模型中。
合成資料在以下情況最有效:
- 任務定義明確。 分類、提取、摘要、格式轉換——有明確對錯之分的任務。
- 前沿模型能可靠地執行任務。 如果 GPT-4o 無法可靠地完成任務,其生成的樣本也無法教會您的模型完成它。
- 您有一些真實樣本作為錨點。 即使只有 20–50 個真實樣本,也能透過提供可擴展的具體模式,大幅提升合成資料的品質。
合成資料在以下情況效果較差:
- 任務需要前沿模型不具備的稀有領域知識(例如公司內部術語、專有分類方案)。
- 輸出品質高度主觀,沒有明確的評估標準。
- 真實輸入的分布很特殊——合成資料傾向於「平均」情況,低估邊緣案例。
策略一:直接提示
最簡單的方法。您描述任務並要求前沿模型生成輸入-輸出對。
Generate 25 customer support emails about subscription billing issues.
For each email, provide:
1. The email text (vary length from 2-8 sentences, vary tone from frustrated to polite)
2. The correct category: "billing_error", "cancellation_request", "upgrade_inquiry", "refund_request", "payment_method_update"
3. The priority level: "low", "medium", "high"
Format as JSON. Make examples diverse — include typos, different writing styles, and varying levels of detail.
成本: 使用 GPT-4o 生成 100 個樣本,根據輸出長度,約需 0.15–0.30 美元。規模化到 5,000 個樣本,費用為 8–15 美元。
優勢: 設置快速,易於迭代提示,適合熟知任務。
弱點: 輸出多樣性很快達到瓶頸。在同一提示下生成 200–300 個樣本後,開始出現重複模式。模型收斂到一窄帶「典型」樣本。
解決多樣性問題: 分批生成,每批 25–50 個,每次更改提示。改變限制條件,指定不同的角色設定,要求不同的邊緣案例。五個提示各生成 200 個樣本,比一個提示生成 1,000 個樣本產生更多元的資料。
策略二:種子擴展
從您的真實樣本開始,將其用作生成更多樣本的種子。如果您有哪怕一小組真實資料,這是投資報酬率最高的策略。
Here are 5 real customer support emails from our system:
[paste 5 real examples]
Generate 25 new examples that match the style, complexity, and topic distribution of these real examples. Maintain the same format. Include examples that are:
- Similar difficulty to the originals
- Slightly harder edge cases
- Shorter and more ambiguous versions
- Longer and more detailed versions
成本: 由於種子上下文,每個樣本略高(使用 GPT-4o 每 100 個樣本約 0.20–0.40 美元)。5,000 個樣本:10–20 美元。
優勢: 輸出分布與您的真實資料更為接近。模型捕捉到難以在提示中描述的模式、詞彙和邊緣案例。
弱點: 如果您的種子樣本存在偏差或不具代表性,偏差會被放大。始終使用多元化的種子集。
最佳實踐: 輪換您的種子集。如果您有 50 個真實樣本,為每批隨機抽取 5–10 個不同的種子。這可防止模型過度依賴任何單一樣本的模式。
策略三:思維鏈提取
對於推理很重要的任務——不只是最終答案——生成包含推理過程的樣本。這為帶解釋的分類、多步提取或決策任務產生更好的訓練資料。
Task: Classify this legal clause and explain why.
Clause: "The Licensee shall not reverse-engineer, decompile, or disassemble the Software."
Think step by step:
1. This clause restricts specific actions (reverse-engineering, decompiling, disassembling)
2. These restrictions apply to "the Licensee" — the party receiving the license
3. This is a standard IP protection clause found in software license agreements
4. Classification: "intellectual_property_restriction"
Now generate 20 similar examples with full reasoning chains. Vary the clause types across: IP restrictions, liability limitations, termination conditions, payment terms, confidentiality obligations.
成本: 由於輸出更長,每個樣本成本較高(每 100 個樣本約 0.40–0.80 美元)。5,000 個樣本:20–40 美元。
優勢: 基於思維鏈資料訓練的模型更可靠且更具可解釋性。它們學習的是推理模式,而非只是答案。
弱點: 生成速度更慢,成本更高。推理鏈本身需要品質審查——一個聽起來合理但不正確的推理鏈比沒有推理鏈更糟。
策略四:角色設定生成
從多個模擬角色生成資料,以最大化多樣性。這對於輸入來自不同類型用戶的面向客戶任務特別有效。
You are a frustrated small business owner who has been double-charged on your monthly subscription. Write a support email. Be specific about the amount ($49.99) and include at least one emotional statement. Keep it under 100 words.
然後更換角色:
You are a polite enterprise IT admin submitting a ticket on behalf of a team member. Write a formal support email about the same billing issue. Use professional language and reference a ticket number.
成本: 與直接提示類似。5,000 個樣本:8–15 美元。
優勢: 產生真正多元的資料,因為每個角色帶來不同的詞彙、語氣、結構和關注點。這種多樣性正是防止微調模型學習狹窄「合成」風格的關鍵。
弱點: 前期需要更多提示工程工作。您需要定義 10–20 個不同的角色才能獲得有意義的多樣性。
品質過濾管線
原始合成資料不是訓練資料。它需要過濾。預計會丟棄 15–30% 的生成樣本。
步驟一:格式驗證。 解析每個樣本。拒絕不符合預期模式的任何內容(缺少欄位、錯誤類型、格式錯誤的 JSON)。這通常能篩除 5–10% 的樣本。
步驟二:去重。 使用嵌入相似度(餘弦相似度大於 0.95)找出近似重複項。合成資料有強烈的重複傾向,尤其是在後續批次中。這通常再去除 5–10%。
步驟三:標籤驗證。 對於分類任務,透過第二個前沿模型運行一批生成樣本並檢查一致性。如果兩個模型在標籤上不一致,標記該樣本進行審查。一致率應大於 90%;如果更低,您的任務定義可能存在歧義。
步驟四:難度分布。 檢查您的資料集是否包含簡單、中等和困難樣本。合成資料偏向中等難度。如果超過 70% 的樣本是「明顯」的分類,有意生成更多邊緣案例。
步驟五:長度和複雜度分布。 繪製輸入長度分布圖並與您的真實資料比較。合成輸入傾向於聚集在眾數長度附近。在生成提示中添加明確的長度限制以擴展分布。
分布匹配:大多數人跳過的步驟
您的合成資料需要與模型在生產中看到的輸入分布匹配,包括匹配:
- 類別分布。 如果 40% 的真實支援票是帳單相關的,您的 40% 訓練資料也應如此。除非您的生產流量實際上是均衡的(幾乎從來不是),否則不要按類別生成等量樣本。
- 輸入複雜度分布。 如果真實輸入的長度範圍是 10 到 500 個詞,您的合成資料應按比例覆蓋該範圍。
- 邊緣案例頻率。 如果 5% 的真實輸入是模糊的或多類別的,在訓練資料中也包含該比例。
最簡單的方法:分析您現有的真實資料(即使很少),估計分布,然後在生成提示中為每個類別和複雜度級別設置明確的配額。
80/20 原則:混合真實資料與合成資料
最有效的訓練資料集並非純合成的。它們混合了真實資料和合成資料。在各類任務中持續有效的比例:
- 80% 合成,20% 真實:當您的真實資料有限(50–200 個樣本)
- 50/50:當您有更多真實資料(500 個以上)
- 20% 合成,80% 真實:當您有豐富的真實資料,僅使用合成資料填補代表性不足類別的空缺
為什麼還要包含真實資料?真實樣本將模型錨定到實際生產模式。它們包含合成資料系統性低估的噪音、不完善之處和邊緣案例。完全在合成資料上訓練的模型在類似合成的輸入上表現良好,但在真實世界資料的複雜性上會退化。
實際建議: 從 80/20 開始。微調, 僅在真實樣本的保留集上評估(永遠不要在合成資料上評估——那是循環論證)。如果效能低於目標,增加真實資料比例,而非生成更多合成資料。更多合成資料收益遞減;更多真實資料幾乎總是有幫助的。
成本細分:實際需要多少費用
使用合成資料生成完整的微調資料集成本非常低:
| 資料集大小 | GPT-4o 成本 | Claude 3.5 成本 | 時間(掛鐘時間) |
|---|---|---|---|
| 500 個樣本 | 1–3 美元 | 1–2 美元 | 15–30 分鐘 |
| 1,000 個樣本 | 2–5 美元 | 2–4 美元 | 30–60 分鐘 |
| 5,000 個樣本 | 8–20 美元 | 8–15 美元 | 2–4 小時 |
| 10,000 個樣本 | 15–40 美元 | 15–30 美元 | 4–8 小時 |
這些成本假設輸入和輸出長度適中(每個 100–300 個 token)。輸出更長的任務(如摘要、長文生成)費用約為 2–3 倍。
相比之下,人工標注費用為每個樣本 0.50–2.00 美元(Scale AI 或 Labelbox 等平台的典型費用):
| 資料集大小 | 人工標注成本 | 時間 |
|---|---|---|
| 1,000 個樣本 | 500–2,000 美元 | 1–4 週 |
| 5,000 個樣本 | 2,500–10,000 美元 | 4–12 週 |
合成資料並非免費——但對大多數任務而言,它比人工標注便宜 100–500 倍。
Ertas Vault 的作用
Ertas Vault 是您的合成資料工作流程所在地。上傳種子樣本、運行生成管線、應用自動品質過濾,以及管理版本化資料集——一切都無需將資料傳送至外部服務。
針對合成資料的關鍵優勢:
- 種子管理。 標記和組織您的真實樣本。為每個生成批次自動抽取多元種子。
- 品質管線。 內建去重、格式驗證和分布分析。在生成更多資料之前,查看資料集哪裡薄弱。
- 版本控制。 追蹤每次生成運行。比較不同資料集版本的模型效能。如果某批次降低品質,可回滾。
- 隱私優先。 您的真實種子資料永遠不會離開您的基礎設施。透過您自己的 API 金鑰在本地或通過生成合成資料。不需要第三方資料處理協議。
資料瓶頸是真實存在的,但它是可以解決的。合成資料生成不是捷徑——它是一種合法的工程技術,在進行適當品質管控時,能夠產生有效的微調資料集。
Ship AI that runs on your users' devices.
Ertas early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.
相關閱讀
- 微調用合成資料生成:有效的技術 — 深入探討具體生成技術和品質訊號
- 如何微調 LLM:完整實踐指南 — 從資料準備到部署的端對端微調演練
Ship AI that runs on your users' devices.
Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.
Keep reading

From Prompt Engineering to Fine-Tuning: The Migration Playbook
A practical playbook for teams migrating from prompt engineering to fine-tuning — when to make the switch, how to convert prompts into training data, and the step-by-step migration process.

Synthetic Data Generation in Air-Gapped Environments for Fine-Tuning
How to generate synthetic training data in air-gapped environments — covering paraphrasing, instruction generation, DPO pairs, and seed expansion using local LLMs only.

Model Distillation Explained: Run Sonnet-Quality Output on a $0 Inference Bill
A complete guide to model distillation — how to transfer capabilities from large frontier models like Claude Sonnet into small local models, achieving comparable quality at zero ongoing inference cost.