Skip to content
LLM 評估

用 Potato 做 LLM 評估與偏好資料收集

在你自己的伺服器上為 RLHF 和 DPO 收整合對偏好資料,用量規給模型輸出打分,並檢驗 LLM 評審者與人類評分者是否一致。

Potato 收集 LLM 評估和後訓練所需的人類判斷,包括用於 RLHF 和 DPO、允許平局的成對偏好,量規得分,生成文本中的錯誤片段,以及用來檢驗 LLM-as-a-judge 的人工標籤。Potato 免費開源,執行在你自己的伺服器上,未釋出的模型輸出和私有提示都留在你的基礎設施裡。

人類判斷仍然是衡量模型和自動指標的參照,而把這些判斷收集好本身就是一個標註問題。團隊要選定回答形式和每個條目的評分者人數,防止評分者偏向更長的回答,還要證明標籤是可靠的。Potato 負責研究層面的工作:隨機化的並排呈現、每個條目分配多名評分者、研究進行中即時計算一致性,以及保留每位評分者答案的匯出。

Potato 中的 LLM 評估任務

每一行是 Potato 自帶的一種標註類型或工具,連結頁面給出了它的配置。

任務Potato 的做法文件
為獎勵模型和 DPO 收整合對偏好pairwise,支援二選一、量表和多維度模式,允許平局,A/B 順序隨機成對比較
按量規打分rubric_eval,含具名評分維度,每個維度一個分數量規評估
對多個輸出排序最佳-最差量表,把從小組輸出中選出的最佳和最差項轉換為分數最優-最差量表
查詢錯誤與幻覺以 MQM 的方式在生成文本中標出錯誤片段錯誤片段
檢驗 LLM 評審者對一個樣本做人工標註,在相同條目上與評審者的標籤比較LLM 評審者與人類的一致性
即時比較模型把同一個提示並排發給多個模型,生成勝率排行榜模型競技場
RAG 與有依據的回答對照檢索到的段落評判回答品質及其支撐程度RAG 評估

一個偏好收集任務

下面的 annotation_schemes 塊要求評分者給出允許平局的二選一偏好,再寫一句理由。包含提示和兩個回覆的完整任務見 RLHF 與偏好資料。

yaml
annotation_schemes:
  - annotation_type: pairwise
    name: preference
    description: "Which response better follows the instruction and is more helpful and harmless?"
    mode: binary
    allow_tie: true
  - annotation_type: text
    name: rationale
    description: "One sentence on why you chose it."
    label_requirement:
      required: false

理由設為選填,因為寫理由會拖慢評分者,不過至少在一個樣本上收集理由是值得的。有了理由,你就能審查偏好資料,找出那些看重長度或格式而非品質的評分者。

與 Label Studio、Argilla、Langfuse 和 LMArena 的分工

Label Studio 有用於收集人類偏好的成對比較模板,Argilla 提供評分和排序題,用於構建偏好資料集。Langfuse 讓團隊在標註佇列中給生產環境的 trace 打分。Chatbot Arena(現名 LMArena)確立了盲測並排投票、再用 Bradley-Terry 模型排名的模式(Zheng et al., 2023)。Potato 的重點是把評估當作一項研究來做:每個條目分配多名評分者,每個方案都測量一致性,對眾包評分者設定注意力檢查和黃金標準檢查,統計計算在瀏覽器中完成。Bradley-Terry 計算器根據成對判斷給模型排名,評審者一致性計算器檢驗 LLM 評審者與人的一致程度。

常見問題

如何檢驗我的 LLM-as-a-judge 與人類評分者是否一致?

先讓至少兩個人在看不到評審者答案的情況下標註一個條目樣本,再把評審者與這些人的一致性同這些人彼此之間的一致性作比較。如果評審者與人類之間的 Cohen's kappa 接近人類彼此之間的 kappa,這個評審者的表現就和多一名標註者差不多。LLM 評審者與人類的一致性給出了具體步驟,評審者一致性計算器可以對一個 CSV 檔案做這項比較。

應該用成對比較、李克特評分還是量規?

需要偏好資料或模型排名時用成對比較,因為評分者比較兩個輸出,比給出穩定的絕對分數更可靠。需要知道一個輸出為什麼更好時用量規,因為逐維度打分能把有用性和準確性分開。對單個輸出做李克特評分適合快速的品質檢查。成對比較與最佳-最差量表和評分量表比較了這些形式。

能否在不向第三方傳送資料的情況下做盲測並排比較?

可以。Potato 執行在你自己的伺服器上,以隨機順序顯示兩個輸出,評分者無法分辨哪個輸出來自哪個模型。除非你配置了託管的 AI 端點,否則資料不會離開你的伺服器;模型競技場也可以通過 Ollama 或 vLLM 呼叫本地模型。

偏好標籤每個條目需要多少名評分者?

人數取決於評分者在你的條目上分歧有多大。每個條目兩名評分者可以直接測量一致性;在不允許平局的二選一中,奇數名評分者總能形成多數。你需要多少位標註者?和標註功效規劃器可以幫你按目標精度確定研究規模。

延伸閱讀

參考文獻

  1. Zheng et al. (2023). Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena. NeurIPS 2023 Datasets and Benchmarks. https://arxiv.org/abs/2306.05685

從這裡開始

示例設計

每個設計都是可以下載並直接執行的 Potato 配置。

其他領域

全部應用場景