最新研究:大語言模型使用Json格式輸出會降低模型性能嗎? 精華
1. 背景
大語言模型在工業(yè)界應用的一個主要障礙就是大語言模型(LLMs)不遵循標準化輸出格式。這種不一致性,使得輸出解析變得更為復雜,也削弱了這些模型的可靠性。
所以,大家普遍會采用結(jié)構(gòu)化輸出的方式來規(guī)避這一問題,也就是使用格式化限制,比如以標準化格式進行輸出,比如:Json、XML等。
這些限制可以通過多種方式來實現(xiàn),比如指示模型遵循帶有格式限制指令的指定格式,或者使用像JSON模式這樣的標準解決方案。這些方案讓LLMs能夠更加順利的融入到實際AI應用中去。
那么,這種格式限制指令,是否會影響LLMs生成內(nèi)容的質(zhì)量?
比如下圖,GPT-3.5-turbo 在這個 GSM8K數(shù)學問題上用標準自然語言輸出時,可以給出正確答案,但是一旦添加了格式限制,GPT-3.5-turbo就輸出了錯誤答案。
圖片
1.1 對比的格式限制方法
為了系統(tǒng)性研究這個問題,作者針對三種格式限制方法進行對比研究:
- ? 約束性解碼(JSON模式,):在生成階段添加超參的方式來實現(xiàn)的,確保模型生成的內(nèi)容符合預設(shè)的JSON格式。
- ? 格式限定指令(FRI,F(xiàn)ormat-Restricting Instructions):通過提示詞來指導模型用JSON、XML、YAML等標準格式生成內(nèi)容,與約束性解碼相比,這種方法更為寬松。
- ? 自然語言轉(zhuǎn)格式(NL-to-Format):首先指導大型語言模型以自然語言形式回答問題,隨后再將其回答轉(zhuǎn)換為目標格式的模式。
1.2 測試的數(shù)據(jù)集
作者對比了兩大類任務,分別是:推理任務和分類任務。
1.2.1 推理任務
- ? GSM8K :數(shù)學問題集合,測試大型語言模型生成必要的中間推理步驟。
- ? Last Letter Concatenation :該任務要求大型語言模型通過串聯(lián)一系列單詞的最后字母來生成一個字符串,以此測試其符號推理能力。
- ? Shuffled Objects:評估在給定初始狀態(tài)和一系列打亂事件的情況下推斷最終狀態(tài)的能力。
1.2.2 分類任務
- ? DDXPlus :醫(yī)療診斷數(shù)據(jù)集,大型語言模型必須依據(jù)給定的患者資料從 49 種可能的疾病中選出最合適的診斷。由
- ? MultiFin :一個多項選擇的金融數(shù)據(jù)集,要求將給定的段落分類為五個類別之一。
- ? Sports Understanding :用于測試大型語言模型判斷與體育相關(guān)的人工構(gòu)建句子是否合理的能力。
- ? NI - Task 280 :基于給定段落的多項選擇刻板印象分類任務。納入此任務,是因為發(fā)現(xiàn)它對提示格式的變化較為敏感,性能變化高達 56% 。
1.3 測試的模型
對 gpt-3.5-turbo-0125 、claude-3-haiku-20240307 、gemini-1.5-flash 進行了比較。
對于開源模型,使用 LLaMA-3-8B-Instruct 和 Gemma-2-9B-Instruct ,并借助 Text-Generation-Server 進行推理,因其支持 JSON 模式 。
1.4 評估指標
對于基于分類的任務(體育理解、DDXPlus、自然指令任務 280 和 MultiFin),將準確率作為主要指標。
對于Last Letter Concatenation和 GSM8K,使用精確匹配指標,即最終答案必須與實際答案完全字符串匹配。
2. 格式限制對最終結(jié)果的影響
通過對比三種逐步放寬的提示方式——JSON 模式、FRI 以及 NL 到格式的轉(zhuǎn)換,來探究格式限制對大型語言模型(LLM)性能的影響。
2.1 推理任務
圖片
我們在具有精確匹配分數(shù)的數(shù)據(jù)集上對這些方式進行評估,如上圖中呈現(xiàn)的 GSM8K 和Last Letter Concatenation。
在Last Letter Concatenation任務中,JSON 模式的表現(xiàn)明顯遜于 FRI(JSON)。經(jīng)檢查,發(fā)現(xiàn) 100%的 GPT 3.5 Turbo JSON 模式響應將“答案”鍵置于“原因”鍵之前,導致了零樣本直接回答,而非零樣本思維鏈推理。
將 NL 到格式與不受限制的自然語言響應相比較,發(fā)現(xiàn)大多數(shù)模型的性能近乎相同,因為兩者均從相同的初始自然語言響應得出答案。然而,NL 到格式偶爾會引入生成錯誤,致使 LLaMA 3 8B Instruct 的性能略低,而其他模型在兩種設(shè)定下保持了一致的分數(shù)。
格式限制的程度和實施方式能夠顯著影響大型語言模型的性能,尤其在推理任務中。
結(jié)構(gòu)化輸出中的鍵的順序以及推理與格式遵循的解耦,成為在提供結(jié)構(gòu)化響應的同時保持大型語言模型能力的重要因素。
2.2 分類任務
圖片
在評估分類數(shù)據(jù)集時,觀察到了與推理任務不同的趨勢,如上圖所示。值得注意的是,在 DDXPlus 數(shù)據(jù)集中,啟用 JSON 模式時,Gemini 1.5 Flash 的性能顯著提升。在其他分類數(shù)據(jù)集中,JSON 模式具有競爭力,在某些情況下,超越了其他三種方法。
JSON 模式通過限制可能的答案從而減少答案選擇中的錯誤,提高了分類任務的性能。
相反,自然語言響應可能會引入干擾,導致解析錯誤。
格式限制對大型語言模型性能的影響取決于任務:嚴格的格式可能會阻礙推理密集型任務,但能提高需要結(jié)構(gòu)化輸出的分類任務的準確性。
2.3 對較寬松格式限制的影響
為進一步探究格式限制所帶來的影響,考察了 Soft Restrict 設(shè)置的一種變體,即從提示描述中移除模式限制。不再提供特定的模式(比如:“以以下模式用 JSON 格式回復您的答案:{‘reason’:…,‘a(chǎn)nswer’:…}”),而是單純指示大型語言模型以目標格式語言進行輸出(比如:“以 JSON 格式回復您的答案。”)。
圖片
上表展示了在 GSM8K 數(shù)據(jù)集上移除模式限制后的效果。對于 Claude 3 Haiku、GPT-3.5 Turbo 以及 LLaMA 3 8B Instruct 而言,在不同的提示擾動下,平均得分顯著提升,標準差降低。
這些結(jié)果表明,雖然結(jié)構(gòu)化輸出對下游處理可能有益,但過于嚴格的模式可能會妨礙大型語言模型的性能,尤其在推理密集型任務中。
這一發(fā)現(xiàn)意味著,在希望獲得易于解析的結(jié)構(gòu)化輸出與保留大型語言模型固有推理能力之間,必須達成平衡。
在處理復雜推理任務時,或許應考慮采用較寬松的格式限制,同時仍保持一定程度的結(jié)構(gòu),以利于下游處理。
2.4 不同格式的比較
通過對比不僅是 JSON,還有 XML 和 YAML 格式來消融格式語言。由于這三種語言有著不同的語法規(guī)則和限制。推斷每個模型的表現(xiàn)可能各異,例如 Claude-3-Haiku 將 XML 用于工具使用模式,所以回過頭來看,未見到任何一種結(jié)構(gòu)格式能在所有模型中始終表現(xiàn)出色,如下圖。對于 Gemini 模型,發(fā)現(xiàn) JSON 更具一致性,但并非總是優(yōu)于其他格式。
圖片
發(fā)現(xiàn)在分類任務中,由于答案空間的限制,JSON 模式的表現(xiàn)比文本好很多。
然而,在推理相關(guān)任務中,JSON 模式未能遵循先推理后回答的順序,致使最終性能大幅下降。
2.5 結(jié)構(gòu)格式與解析錯誤率
最初推測文本與結(jié)構(gòu)化格式之間的性能差距可能源于答案提取過程中的解析錯誤。
然而,對不同格式和模型的錯誤率分析表明,解析錯誤并非主要因素。
實際上,Gemini 1.5 Flash 和 GPT 3.5 Turbo 在這三種格式中均幾乎不存在解析錯誤。在 LLaMA 3 8B 的設(shè)置中,JSON 格式下 Last Letter 任務的解析錯誤率僅為 0.148%,但卻存在高達 38.15%的性能差距。
表明格式間的性能差異主要并非源于解析錯誤,而是格式限制對大型語言模型推理和生成過程的影響。
圖片
通過提示 Claude-3-Haiku 為 Claude 3 Haiku 和 LLaMA 3 8B(解析錯誤百分比最高的兩個模型)重新格式化任何存在解析錯誤的輸出,觀察到 JSON 和 YAML 格式的得分有所提高,如上圖 所示。這種方法展現(xiàn)了在不犧牲特定格式優(yōu)化優(yōu)勢的情況下提升結(jié)構(gòu)化輸出可靠性的潛力。
3. 結(jié)論
格式的限制,尤其是約束解碼(JSON 模式),會阻礙推理能力,卻能提升分類任務的準確率。
較寬松的格式限制通常能提高性能,并減少推理任務中的差異。
解析錯誤雖非性能差異的主因,但通過糾正提示可得以緩解。
在 LLM 應用中平衡格式遵循、推理能力與成本效率的重要性。
本文轉(zhuǎn)載自??大語言模型論文跟蹤??,作者:HuggingAGI ????
