發布日期:2024 年 10 月 30 日
使用大型語言模型 (LLM) 建構特徵與傳統的軟體工程有很大的差異。開發人員必須學習提示工程來處理非確定性的結果、預先處理輸入內容,以及後續處理結果。
您曾向我們反映的其中一個挑戰,是測試 LLM 的輸出內容、判斷有效性和品質,需要花費大量時間。開發人員通常會使用不同的輸入內容來批次產生輸出內容,然後透過人工判斷來手動驗證。
LLM 做為評判者 技巧是一種更具擴展性的評估不同模型和提示結果的方法。使用這項技術時,模型驗證作業會委派給另一個 LLM,而非仰賴人為判斷。第二個 LLM 必須是較大的雲端式 LLM,其推理能力可能較好。
在本文件中,我們會使用摘要功能示範如何比較不同模型,並額外顯示從 Gemma 到 Gemma 2 的品質改善情形。
選擇比較及準備資料的模式
我們評估了三種模型在摘要方面的功能。我們比較了兩個可在用戶端執行的 Google 開放式模型 (Gemma 和 Gemma 2) 的結果,兩者都使用 20 億個參數大小。相較之下,我們也評估了更大、功能更強大的雲端模型:Gemini 1.5 Flash。
我們使用了 2225 篇 BBC 文章的資料集,涵蓋商業、娛樂、政治、體育和科技等領域,並使用所選模型產生每篇文章的摘要。所有模型都使用相同的提示:
將文章重點整理成一個段落。
我們將原始文章和產生的摘要儲存在資料庫中,方便在每個步驟中輕鬆存取。
選取評審員來分析摘要並評分
為了分析摘要品質,我們使用 Gemini 1.5 Flash 來評估 Gemma 2B 和 Gemma 2 2B 產生的摘要。我們採用的具體方法是根據對齊,這是 DeepEval 摘要指標的一部分。
「校正」指標可測量摘要中所含陳述式支援的頻率,這些指標是以摘要為依據的原始內容。
我們將評估程序分為兩個步驟。首先,我們會提示模型將每個摘要分成個別陳述式。接著,我們要求模型判斷原始文章內容是否支持每個陳述。
從摘要中擷取陳述式
我們要求 Gemini 1.5 Flash 將較長的文字拆分為不同的陳述式。例如:
儘管他的團隊打敗了利物浦,但後來的團隊卻位居菁英的第二名,但 Everton 捍衛者 David Weir 也曾暢談歐洲足球。
Gemini 1.5 Flash 將這句話分成以下陳述:
- 「David Weir 是 Everton 的後衛。」
- 「埃弗頓目前在英超聯賽中排名第二。」
- 「Everton 在最近的比賽中擊敗 Liverpool。」
- 「David Weir 已將 Everton 在歐洲足球的表現降到最低。」
驗證陳述式
接著,我們要求 Gemini 1.5 Flash 分析原始句子,並與分割陳述式進行比較。模型將每個陳述式的有效性分類為:
- 是:原始文字可證明這項陳述。
- 否。這項陳述與原文牴觸。
- Idk。我們無法驗證這項陳述是否有證據支持,或是是否與原始文字相矛盾。
結果分析
這個程序產生了兩個可用於比較模型的指標:
- Alignment:模型產生的摘要中,有多少次包含原文支援的陳述。
- 豐富度:模型產生的摘要中包含的平均陳述數量。
對齊
我們計算對齊度的方式是,計算至少有一項陳述式標示為「否」的摘要數量,然後除以摘要總數。
Gemini 1.5 Flash 模型的對齊分數最高,超過 92%。 這表示它非常擅長遵循事實,並避免杜撰。
Gemma 2 2B 的分數為 78.64%,表現相當不錯,代表準確度良好。另一方面,舊版 Gemma 2B 的對應分數較低,表示較有可能包含原始文字不支援的資訊。
豐富度
我們計算模型豐富度的方式,是將模型為每個摘要產生的陳述式數量加總後取平均。
Gemma 2 2B 的豐富度分數最高,為 9.1,表示其摘要包含更多詳細資料和重點。Gemini 1.5 Flash 模型的豐富度分數也相當高,超過 8.4 分。Gemma 2B 的豐富度分數較低,表示它可能無法擷取原始文字中的大部分重要資訊。
結論
我們判斷,可在用戶端執行的小型模型 (例如 Gemma 2 2B) 可以產生優質的輸出內容。雖然 Gemini 1.5 Flash 等雲端模型擅長產生與原始文章相符的摘要,並提供大量資訊,但在決定是否應建構用戶端 AI 時,您也應考量應用程式效能、隱私權和安全性需求,以及其他可能會影響決定的因素。
Gemma 模型系列的功能明顯有所進化,因為 Gemma 2 2B 能夠產生比 Gemma 2B 更豐富且更一致的摘要。
評估用途
這份文件僅略微介紹了 LLM 可用於判斷的技術。即使採用摘要,您還是可以查看更多指標,結果可能會有所不同。舉例來說,您可以使用提示來辨識文章的重點,藉此評估涵蓋率,然後使用不同的提示來驗證每個摘要是否涵蓋這些重點。
其他用途 (例如撰寫文字、改寫文字或檢索增強生成 (RAG)) 可能會在相同指標上產生不同的結果,或者應使用其他指標進行評估。
實作此方法時,請思考人類如何評估輸出內容,藉此判斷哪些指標最適合您的用途。另外,您也可以查看 DeepEval 等現有架構,這些架構可能已經有一組適合您用途的指標。
您是否已將 LLM 做為評估模型的判斷標準?請透過 @ChromiumDev 推文並將結果告訴我們,或是與 LinkedIn 上的 Chrome 開發人員專區分享。