Back to blog
    為何你的微調模型聽起來很好,卻把事實說錯了
    hallucinationfine-tuningquality-assurancetroubleshootingsegment:agency

    為何你的微調模型聽起來很好,卻把事實說錯了

    理解並修復微調模型中的幻覺問題——為何微調可能使幻覺更嚴重、偵測技術,以及生產部署的實用緩解策略。

    EErtas Team·

    有一種特定的失敗模式讓每個將微調模型部署給客戶的代理商感到恐懼。模型生成了一個格式精美、自信、有說服力的回應——但其中的事實完全是錯誤的。

    這就是幻覺問題,而微調可能使它變得更糟。

    這聽起來有違直覺。你在正確的資料上訓練了模型,它學習了正確的模式。額外的訓練怎麼可能使模型的準確率降低?答案在於微調實際上優化的是什麼——而這與大多數人假設的不同。

    微調實際上教了什麼

    當你在一組輸入-輸出對的資料集上微調模型時,模型學習產生看起來像你訓練資料的輸出。關鍵詞是「看起來像」。模型學習模式——格式、語氣、詞彙、句子結構、正確答案的大致形狀。它不學習驗證事實或從第一原理推理。

    考慮一個具體例子。你在一個電子商務客戶的 500 個產品描述範例上微調模型。模型學習了產品描述應該提及材料、尺寸、價格點和使用場景。它學習了客戶的品牌聲音。它學會了聽起來有權威性和具體性。

    現在模型收到一個關於它從未見過的產品的查詢。它生成了一個自信、格式良好的描述——帶有捏造的尺寸、編造的材料和虛構的價格點。輸出看起來完全像一個正確答案,因為模型學習了正確答案看起來是什麼樣子,而不是什麼讓它們正確。

    這不是一個漏洞。這就是技術的工作方式。理解這個機制是管理它的第一步。

    為何微調可能增加幻覺

    1. 在小型訓練集上過擬合

    最常見的原因。當你在小型資料集(不到 500 個範例)上微調時,模型記憶了訓練範例而不是泛化。它學會了產生統計上類似訓練資料的輸出,但它沒有見過足夠的多樣性來區分基本事實和偶發細節。

    結果:當模型遇到與訓練範例不緊密匹配的輸入時,它通過在記憶模式之間插值來填補空缺。這些插值就是幻覺。

    數字: 在少於 200 個範例上微調的模型,比在同一任務上微調 1,000 個以上範例的相同模型,幻覺率高 2-3 倍。閾值因任務複雜性而異,但模式是一致的——數據不足導致捏造。

    2. 訓練資料過於單一

    如果你的所有訓練範例都遵循相同的模式——相同的長度、相同的結構、相同類型的內容——模型學習總是產生那種模式,無論它是否合適。

    僅在合約摘要上訓練的法律 AI 會嘗試將任何東西都總結成好像是一份合約。問它關於法院裁決的問題,它會產生看起來像合約摘要的東西,完整的捏造合約條款和不存在的當事人。

    3. 通過格式進行獎勵劫持

    微調模型學習到,訓練資料中某些格式和風格與「正確」輸出相關聯。它們優化產生這些格式,即使這樣做需要發明內容。

    如果你的訓練資料總是包含特定的數字(收入數字、百分比、日期),模型學習好的輸出包含具體數字。當它沒有實際數字時,它會生成一個看起來合理的數字。這特別危險,因為捏造的數字通常在合理範圍內——它們看起來是正確的。

    4. 信心校準漂移

    基礎模型有一個內置的不確定性機制——它們使用修飾語、限定詞,有時拒絕回答。微調可以侵蝕這種校準。如果你的訓練資料完全由自信、明確的答案組成(正如大多數精心策劃的資料集那樣),模型學習避免表達猶豫。

    結果是一個對一切都聽起來 100% 確定的模型,包括它正在編造的事情。

    如何偵測幻覺

    偵測比聽起來更難,因為幻覺輸出是(通過模型的訓練)被設計成看起來正確的。以下是四種實用方法。

    事實驗證取樣

    暴力方法,仍然是最可靠的。

    1. 從你的測試集中提取 50 個模型輸出。
    2. 對於每個輸出,識別每個事實聲明(名稱、日期、數字、引用、具體斷言)。
    3. 根據你的來源材料或真實情況驗證每個聲明。
    4. 計算你的幻覺率:(至少有一個錯誤聲明的輸出)/(總輸出)。

    這很費力。對 50 個輸出進行徹底審查需要 2-4 小時。但沒有自動化捷徑能匹配領域專家核查事實的準確性。

    目標基準: 一般商業應用的幻覺率低於 5%。法律、醫療或金融應用低於 1%。安全關鍵部署的零容忍。

    一致性檢查

    以相同設置(溫度 0 或非常低)通過模型運行相同輸入 5 次。比較輸出。如果運行之間的事實聲明發生變化——不同的日期、不同的數字、不同的名稱——這些聲明很可能是幻覺。

    知道事實的模型會一致地重現它。捏造的模型每次都會產生不同的捏造,因為沒有基礎事實錨定輸出。

    這種技術以最小的努力捕獲大約 60-70% 的幻覺。它錯過一致的幻覺(模型可能每次都自信地產生相同的錯誤事實),但它是一個好的初步篩選器。

    與來源文件交叉參照

    如果你的使用案例涉及基於提供的文件生成輸出(摘要、分析、擷取),驗證輸出中的每個聲明都追溯到來源文件。

    對於模型輸出中的每個事實陳述,問:「這些資訊出現在來源文件的哪裡?」如果你找不到來源,模型捏造了它。

    這是 RAG 增強系統的標準方法,但它同樣適用於處理文件的微調模型。

    信心校準測試

    向模型提出它不可能正確回答的問題——關於虛構實體、未來事件或任何訓練資料中都不包含的資訊。

    一個校準良好的模型應該表達不確定性:「我沒有關於那的資訊」或「我對這個答案不確定」。校準不良的模型會生成一個自信、詳細、完全捏造的回應。

    如果你的模型自信地回答無法回答的問題,它的信心信號在整個系統中是不可靠的。每個聽起來自信的輸出都值得懷疑。

    緩解策略

    1. 提高訓練資料品質和數量

    最有效的單一緩解措施。更多樣化、更高品質的訓練資料比任何後處理技術都更可靠地減少幻覺。

    最低目標:

    • 簡單任務(分類、格式轉換)500 個以上範例
    • 複雜生成任務 1,000-2,000 個範例
    • 涉及事實回憶的任務 3,000 個以上範例

    確保你的訓練資料包含正確答案是「我不知道」或「我需要更多資訊」的範例。如果模型在訓練中從未見過不確定性,它在生產中也不會表達不確定性。

    2. 添加 RAG 層以進行事實接地

    微調告訴模型如何回應。RAG(檢索增強生成)提供模型回應什麼。對於需要事實準確性的生產系統,結合兩者通常是正確的架構。

    模式:微調模型以適應你的特定任務格式、語氣和推理模式。在推理時,擷取相關來源文件並將它們包含在提示中。微調模型根據擷取的文件生成回應,而不是依賴參數記憶。

    這種方法與僅微調相比,根據任務和擷取管道的品質,將幻覺率降低 40-70%。請參閱我們對微調和 RAG 的比較,以深入分析何時使用每種方法。

    3. 輸出驗證管道

    在模型和最終用戶之間添加程序化驗證層。

    對於結構化輸出: 根據 schema 解析和驗證。拒絕缺少必填欄位、超出範圍的值或無效引用的輸出。

    對於事實聲明: 根據已知良好的資料庫交叉參照擷取的事實。標記任何與已驗證來源不匹配的聲明。

    對於引用: 如果模型生成引用或參考,驗證它們是否存在。不存在的引用是最常見也最令人尷尬的幻覺類型之一。

    對於數字聲明: 應用合理性檢查。如果模型聲稱一家公司的收入為 5,000 億美元,而正確數字是 5 億美元,一個簡單的邊界檢查就能發現這個問題。

    這不能消除幻覺——它捕獲漏過的幻覺。把它看作安全網,而不是解決方案。

    4. 溫度和取樣控制

    較低的溫度可以減少幻覺。在溫度 0 時,模型總是選擇最可能的下一個 token,這往往是最有事實根據的。在較高溫度下,模型探索不太可能的 token,這增加了創造力但也增加了捏造。

    對於事實性任務,使用溫度 0 到 0.3。對於可接受一些變化的創意任務,保持在 0.7 以下。超過 0.7,幻覺率顯著增加。

    還要考慮核心取樣(top-p)。將 top-p 設置為 0.9 而不是 1.0 可以消除最不可能的 token 選擇,這些選擇不成比例地負責事實錯誤。

    5. 明確的不確定性訓練

    包含展示適當不確定性的訓練範例:

    Input: What is the current stock price of Acme Corp?
    Output: I do not have access to real-time stock prices. As of my training data, I cannot provide a current price. Please check a financial data provider for the latest information.
    
    Input: Summarize the contract between Company A and Company B.
    Output: I do not have access to the specific contract between these parties. To provide an accurate summary, I would need the contract document to be provided.
    

    添加 50-100 個適當拒絕和不確定性表達的範例,告訴模型「我不知道」是一個有效的輸出模式。這顯著減少了模型在缺乏資訊時捏造的傾向。

    僅靠微調不夠的情況

    有些使用案例在沒有額外保障措施的情況下進行微調是不負責任的:

    醫療劑量和治療建議。 幻覺劑量的代價太高。微調應與針對已驗證醫療資料庫的 RAG 以及檢查所有數字聲明的驗證層結合使用。

    法律引用和判例法。 律師依賴的幻覺案例引用可能導致制裁。在呈現之前始終根據法律資料庫驗證引用。

    財務數字和預測。 微調模型永遠不應該是財務數字的唯一來源。根據已驗證的資料來源交叉參照。

    對於這些使用案例,架構應該是:用於任務理解和格式的微調模型、用於事實接地的 RAG,以及用於安全的輸出驗證。沒有任何單一層是足夠的。

    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.

    誠實的評估

    幻覺不是一個已解決的問題。沒有任何微調技術、資料集大小或後處理管道能完全消除它。目標是減少和管理,而不是消除。

    代理商的實際問題不是「這個模型是否幻覺?」(所有模型都會),而是「對於這個特定的使用案例,幻覺率是否足夠低,偵測管道是否足夠健全?」

    對於某些使用案例——創意寫作、頭腦風暴、草稿生成——5-10% 的幻覺率是可以接受的,因為在到達最終用戶之前有人審查輸出。對於其他情況——醫療、法律、金融——即使 1% 在沒有額外驗證層的情況下也太高了。

    對客戶誠實。「我們的驗證管道下模型 97% 的時間是準確的」是一個可信的陳述。「模型從不犯錯」是一個最終會被揭穿的謊言。


    延伸閱讀

    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