מושגי ליבה
這篇研究調查了提升大型語言模型(LLM)推理時效能的演算法,涵蓋了token層級生成演算法、元生成演算法以及提升生成效率的技術。
這篇研究調查了用於提升大型語言模型 (LLM) 推理時效能的演算法,主要涵蓋三大主題:
一、token 層級生成演算法
這些演算法,通常也被稱為解碼演算法,透過一次取樣一個 token 或構建一個 token 層級的搜索空間並从中選取輸出結果。
這些方法通常需要訪問語言模型的內部資訊,例如 logits、next-token 分佈或機率分數。
常見的 token 層級生成演算法包括:
最大後驗機率 (MAP) 解碼演算法: 嘗試尋找最大化 pθ(y|x) 的生成結果 y,例如貪婪解碼和束搜索 (beam search)。
取樣演算法: 直接從語言模型的機率分佈 pθ(y|x) 中取樣,例如祖先取樣 (ancestral sampling)、溫度取樣 (temperature sampling)、top-k 取樣和 nucleus 取樣等。
token 層級取樣適配器: 調整每個 next-token 分佈,例如溫度取樣、top-k 取樣、nucleus 取樣等。
受控生成: 旨在從受序列級標準 c(y) 調製的語言模型分佈中取樣,例如使用分類器、指示器或獎勵函數來引導生成過程。
約束解碼: 強制生成結果滿足特定限制,例如使用基於解析器的解碼來滿足結構性約束,或使用詞彙約束解碼來強制輸出或不輸出特定詞彙。
二、元生成演算法
元生成演算法將 LLM 視為黑盒子,並在更大的生成程序中調用它。
元生成演算法可以透過進行多次模型調用、使用搜索演算法增強模型或整合外部數據源來增加用於生成的計算資源。
根據程式結構,元生成演算法可以分為:
鏈式元生成器: 將多個生成器鏈接在一起,例如將提示的語言模型鏈接起來以執行多步驟任務。
並行元生成器: 並行運行多個生成器,例如束搜索、最佳 N 個結果和拒絕取樣。
步驟級搜索演算法: 在每個生成步驟中執行搜索,例如使用強化學習或其他優化技術來選擇最佳的下一步操作。
優化演算法: 從初始生成結果開始,並迭代地對其進行改進,例如使用梯度下降或其他優化技術來最大化獎勵函數。
三、提升生成效率的技術
隨著模型規模的增長,快速生成變得越來越具有挑戰性,而成本成為多次調用模型的元生成演算法中的關鍵因素。
提升生成效率的技術包括:
優化 token 成本: 減少生成過程中使用的 token 數量,例如使用快取、壓縮和剪枝技術。
加速生成器: 使用模型並行化、量化和蒸餾技術來加速 token 層級生成過程。
加速元生成演算法: 使用並行化、快取和剪枝技術來加速元生成過程。