結構化輸出導致44種語言模型答案多樣性下降
一項新研究發現,當要求語言模型以JSON格式輸出時,它們的答案多樣性顯著降低。透過對44個模型進行31個開放式問題的測試,發現JSON格式請求使模型趨向於選擇相同的答案,而JSON模式的強制執行並未進一步加劇這種趨同。這表明答案的收斂源於模型對JSON格式的響應,而非解碼器的約束。
一項由Tapan Parikh進行的研究發現,語言模型在需要以JSON格式輸出時,其答案多樣性會顯著下降。研究團隊重複了“One-Word Census”實驗,對44個語言模型使用了31個寬答案空間的類別提示,但這次要求模型以JSON格式回覆,不強制使用特定模式或約束解碼。結果顯示,在無約束的“Pick a word”提示下,模式答案的佔比從41%上升到64%,不同答案的數量從52減少到36,平均答案選擇的熵從1.80位元降至1.58位元。
這種變化是有偏向性的:44個模型中有6個模型個體發生了顯著變化,且全部向模式答案靠攏,其中最獨特的模型變化最大,而原本就傾向於大眾化的模型基本不變。值得注意的是,JSON格式請求並沒有完全改變模型的選擇偏好,而是強化了已有的模式:在31個類別中,有28個類別的模式答案與普通聊天模式下的相同。
進一步的分析表明,模型的預設答案與輸出格式密切相關。在20次重複實驗中,JSON格式請求導致53%的模型穩定聊天預設值發生改變,多數轉向大眾化答案,並且還會引入一些在聊天模式下從未出現的預設值(例如,Claude Fable 5在聊天模式下從不會回答“cerulean”作為顏色,但在JSON格式下100%回答“cerulean”)。
為了探究原因,研究者進行了一系列控制實驗,發現答案多樣性的壓縮與模型訓練時使用的格式有關:JSON格式使熵減少0.22位元(p=0.0002),XML格式減少0.19位元(p=0.002),而YAML和CSV格式沒有顯著效果,甚至一種任意的括號包裹格式還使熵增加了0.13位元(p=0.009)。這表明壓縮效應是格式特定的,且與模型的後訓練工具使用有關。有趣的是,在解碼器端強制使用JSON模式(response_format)並沒有進一步壓縮多樣性(僅減少0.03位元),說明答案收斂主要發生在模型對格式的響應層面,而非解碼器的約束。
這項研究揭示了當語言模型用於軟體互動時,其輸出的多樣性會因結構化格式而降低,這可能導致模型在評估時表現出的能力與實際應用中的效能存在差異。