Long to Short Reasoning:7 篇長思維鏈壓縮工作總結(jié)
一、背景
隨著 Long Reasoning 領(lǐng)域的快速發(fā)展,最近涌現(xiàn)出了諸多 Reasoning 模型,比如 DeepSeek R1、DeepSeek R1 Distill 以及阿里的 QwQ-32B 模型。這些模型在處理復雜任務(wù)時表現(xiàn)卓越,但與此同時,我們也觀察到一些值得關(guān)注的現(xiàn)象。部分用戶在不必要的場景下盲目使用 Reasoning 模型,導致大量不必要的 CoT Token 被引入,直接推高了 Inference 成本。
筆者在之前的 CoT-Valve 介紹文章中提到過:“Long CoT 模型通常需要更長的 Token 序列,這會顯著增加模型輸出長度,從而大幅增加了 Inference 成本??梢灶A(yù)見,為了降低 Inference 成本,未來不久將涌現(xiàn)一系列專注于壓縮輸出 Token 數(shù)量的技術(shù)”。事實上,近期的一些研究已經(jīng)在朝這個方向努力,出現(xiàn)了不少針對 Long to Short Reasoning 的文章。
這些方案多采用 Token 壓縮、路徑剪枝等策略,聲稱“輕微損失精度”甚至“幾乎無損”的情況下降低輸出 Token 長度。然而,實際效果往往并非如此,所謂的“微小精度損失”在某些任務(wù)場景下可能被放大,影響最終決策質(zhì)量。本文將對近期的 Long to Short Reasoning 優(yōu)化技術(shù)進行簡要梳理和分析,探討其實際收益與潛在局限。
二、LightThinker
2.1 概要
LightThinker 由浙大、螞蟻等發(fā)表,其通過動態(tài)壓縮 Reasoning 過程中的中間思維步驟,提高 LLM 在復雜 Reasoning 任務(wù)中的 Inference 效率,同時幾乎不影響性能。此外,論文中引入了依賴度(Dependency,Dep)指標,通過測量生成過程中對歷史 Token 的依賴程度來量化壓縮程度。
如下圖所示為 LinkThinker 與常規(guī)方法的區(qū)別:
- (a):包含 Thought1 和 Thought2 兩步 Reasoning。
- (b):首先基于 Question + Thought1 生成壓縮 Token [C T1];然后基于 Question + [C T1] 生成思考過程 Thought2;之后進一步使用 Question + [C T1] + Thought2 生成壓縮 Token [C T2];最后,基于 Question + [C T1] + [C T2] 生成 Answer。

對應(yīng)的論文為:[2502.15589] LightThinker: Thinking Step-by-Step Compression [1]
2.2 具體方案
2.2.1 數(shù)據(jù)重構(gòu)
為了使模型能夠?qū)W習壓縮能力,需要對訓練數(shù)據(jù)進行了重構(gòu),以便模型能夠理解何時以及如何進行壓縮。具體步驟如下:
分割輸出:給定輸入問題 X 和對應(yīng)的輸出 Y,使用分割函數(shù) Seg() 將輸出 Y 分割成多個子序列 Si。分割函數(shù)可以基于兩種策略:
- 基于 Token 的分割(Token-level):每生成固定數(shù)量的 Token 后進行一次壓縮。
- 基于思維單元的分割(Thought-level):在完成一個完整的思維單元(如句子或段落)后進行壓縮。
插入特殊 Token:在分割后的子序列之間插入特殊 Token:
- <w>:可選的壓縮觸發(fā) Token,表示需要對前面的思維進行壓縮。
- [c]:一組特殊 Token(稱為 “gist tokens”),用于存儲壓縮后的內(nèi)容。
- [o]:輸出 Token,用于基于壓縮后的內(nèi)容繼續(xù)生成后續(xù)文本。
重構(gòu)后的數(shù)據(jù)形式為:

2.2.2 注意力掩碼設(shè)計
為了使模型能夠?qū)W習如何壓縮以及如何基于壓縮后的內(nèi)容繼續(xù) Reasoning,作者設(shè)計了特定的注意力掩碼。具體如下圖 Figure 2 所示:
- 生成階段:如 t=1,t=3,t=5 所示,基于問題 X、之前的壓縮 Token [c] 以及生成的內(nèi)容 [o] 來生成思維步驟 S。
- 壓縮階段:如 t=2,t=4 所示,基于問題 X、之前的壓縮 Token [c] 以及生成的內(nèi)容 [o] 以及新的思維步驟 S 生成壓縮 Token [c]。
- Attention Mask:每次的生成只能看到對應(yīng)箭頭來源的方向,比如 S2 的生成只能看到 X、[c1][c2]、[o]。(PS:這也是能夠降低 Inference 成本的關(guān)鍵所在,生成時的計算量減少了)

2.2.3 Training & Inference
Training 過程:使用重構(gòu)后的數(shù)據(jù) D 進行訓練,通過 Attention Mask 引導模型學習壓縮和理解壓縮后的內(nèi)容。
Inference 過程:模型動態(tài)地生成思維步驟,并在適當?shù)臅r候?qū)⑵鋲嚎s為緊湊的表示,然后基于壓縮后的內(nèi)容繼續(xù) Inference。
2.3 結(jié)果
如下圖 Table 1 所示為關(guān)鍵結(jié)果,其中 Distill-R1 是 DeepSeek 開源出來的蒸餾模型。Vanilla 為在 Bespoke-Stratos-17k 數(shù)據(jù)集上 SFT 后的模型。H2O 等都是在 Vanilla 基礎(chǔ)上采用各種優(yōu)化方案的模型。Acc 表示精度、Time 表示 Inference 時間,Peak 表示 Inference 中上下文的峰值 Token 數(shù)??梢钥闯觯寒斍暗倪@些方案相比 Vanilla 模型來說 Acc 多少都會有所降低,同時 Time 并沒有明顯降低,只是 Peak 低了很多。

三、TokenSkip
3.1 概要
TokenSkip 由香港理工大學和中科大發(fā)表,同樣是為了解決 Reasoning 模型輸出過長導致的 Inference 成本過高問題。作者深入分析了 CoT 輸出中 Token 的語義重要性,發(fā)現(xiàn)其對 Reasoning 的貢獻度存在差異?;诖耍岢隽?TokenSkip 策略,它使 LLM 能夠有選擇性地跳過重要性較低的 Token,從而實現(xiàn)可控的 CoT 壓縮。
實驗中,基于 Qwen2.5-14B-Instruct 模型,TokenSkip 在 GSM8K 任務(wù)中將 Reasoning Token 減少 40%(從 313 降至 181),且性能下降不足 0.4%。
對應(yīng)的論文為:[2502.12067] TokenSkip: Controllable Chain-of-Thought Compression in LLMs [2]
對應(yīng)的代碼庫為:https://github.com/hemingkx/TokenSkip [3]
3.2 方案
如下圖 Figure 4 所示,TokenSkip 關(guān)鍵過程包含 3 步:
- Token Pruning:根據(jù) Token 的重要性對 CoT 序列進行剪枝。首先計算每個 Token 的語義重要性,然后按重要性值降序排列,根據(jù)指定的壓縮比率 γ 確定閾值,保留重要性大于等于閾值的 Token。
- Training:使用剪枝后的 CoT 數(shù)據(jù)對目標 LLM 進行 SFT。在訓練數(shù)據(jù)中,每個樣本包含問題、壓縮后的 CoT 和答案,格式為 “Q [EOS] γ [EOS] Compressed CoT A”。
- Inference:給定問題和壓縮比率 γ,模型按照訓練時的格式進行 Inference,自回歸地生成輸出序列,包括 CoT Token 和答案。

3.3 結(jié)果
如下圖 Table 1 可以看出,在 80% 的壓縮率下?lián)p失已經(jīng)比較大了,而且加速只有 1.2x 左右:

四、Token-Budget-Aware LLM Reasoning
4.1 概要
Token-Budget-Aware LLM Reasoning 由南京大學等發(fā)表,主要是通過引入 “Token Budget” 來優(yōu)化 LLM 的 Inference 過程,以在保持 Reasoning 準確性的同時降低 Token 使用量和成本。具體來說,作者提出了一種 Token Budget 感知的 LLM Reasoning 框架,該框架能根據(jù)每個問題的 Reasoning 復雜度動態(tài)調(diào)整 Reasoning Token 的數(shù)量。實驗表明,該方法在僅輕微降低性能的前提下,有效減少了 CoT Reasoning 中的 Token 成本,為平衡 LLM Reasoning 效率與準確性提供了一種實用解決方案。
對應(yīng)的論文:[2412.18547] Token-Budget-Aware LLM Reasoning [4]
對應(yīng)的代碼庫:GitHub - GeniusHTX/TALE [5]
4.2 方案
論文提出了名為 TALE(Token-Budget-Aware LLM rEasoning)的框架,通過動態(tài)調(diào)整 Reasoning 過程中的 Token 數(shù)量來平衡 Reasoning 效率和準確性。TALE 包含兩種實現(xiàn)方式:
TALE-EP(Estimation & Prompting):如下圖所示,通過 0-shot prompting 方式估計合理的 Token Budget,并將其納入 Prompt 中,從而生成更高效的 Reasoning 過程。

具體示例如下圖所示:

TALE-PT(Post-Training):如下圖所示,通過 Post-training 將 Token Budget 內(nèi)化到 LLM 中,使其在沒有顯式 Token 約束的情況下生成更高效的響應(yīng)。

4.3 結(jié)果
如下圖 Table 3 所示為 TALE-EP 的結(jié)果,可以看出輸出 Token 確實明顯減少,但是 Acc 也有一定程度的降低:

如下圖 Table 3 所示為 TALE-PT 的結(jié)果,可以看出 TALE-PT-SFT 的結(jié)果還不錯,相比 Vanilla CoT 的 Acc 更高,輸出 Token 更少。不過如果有更多實驗應(yīng)該會更有說服力。

五、Chain of Draft
5.1 概要
Chain of Draft(CoD)由 Zoom 發(fā)表,其受人類認知過程啟發(fā),提出了草擬連(Chain of Draft)。在此框架下,LLM 在解決任務(wù)時生成簡潔而富含信息的中間 Reasoning 輸出。通過減少冗長并聚焦于關(guān)鍵洞見,CoD 在多個 Reasoning 任務(wù)中匹配甚至超過了 CoT 的準確性,同時僅使用約 7.6% 的 Token 數(shù)量,顯著降低成本和時延。
對應(yīng)的論文:[2502.18600] Chain of Draft: Thinking Faster by Writing Less [6]
對應(yīng)的代碼庫:Code and data for the Chain-of-Draft (CoD) paper [7]
5.2 方案
CoD 主要通過以下兩個關(guān)鍵機制:
- 限制 Reasoning 步驟的輸出長度:如下圖左圖所示,在 CoD 中,作者建議每個 Reasoning 步驟的輸出長度最多為 5 個單詞。這種限制迫使模型只關(guān)注解決問題所需的關(guān)鍵信息,避免冗余的描述和不必要的細節(jié)。
- 提供簡潔的中間步驟示例:如下圖右圖所示,為了幫助模型理解 CoD 的要求,作者在 Prompt 中手動編寫了簡潔的中間步驟示例。這些示例作為引導,幫助模型學習如何生成簡潔的推理過程。

5.3 結(jié)論
如下圖 Table 1 所示,在 few-shot 下,CoD 相比 CoT 有一定損失,但加速比較明顯:

如下圖 Table 5 所示,在 0-shot 下,CoD 相比 CoT 的差距非常明顯:

六、InftyThink
6.1 概要
Long Reasoning 范式面臨 3 大挑戰(zhàn):計算復雜度與序列長度呈二次方增長、Reasoning 受限于最大上下文長度、超出預(yù)訓練上下文窗口時性能下降。當前常見方法是壓縮 CoT,而未從根本上解決規(guī)模擴展問題。
本文中,作者提出 InftyThink 范式,將單一 Reasoning 過程轉(zhuǎn)化為包含中間總結(jié)的迭代流程。通過將短 Reasoning 片段與簡要的進度摘要交錯編排,相較于傳統(tǒng)方法顯著降低了計算復雜度。實驗結(jié)果表明:基于 Qwen2.5-Math-7B 在 MATH500、AIME24 和 GPQA_diamond 基準測試中分別實現(xiàn)了 3%-13% 的性能提升。
對應(yīng)的論文:[2503.06692] InftyThink: Breaking the Length Limits of Long-Context Reasoning in Large Language Models [8]
6.2 方案
如下圖 Figure 2 可以看出,InftyThink 的核心思路是將單次 Long Reasoning 過程分為多個 Short Reasoning 過程,并在每個階段之間插入中間總結(jié),用于后續(xù)迭代基于之前的總結(jié)繼續(xù) Reasoning。

如下圖 Figure 1 所示,這種周期性總結(jié)創(chuàng)建了“鋸齒形”內(nèi)存模式,顯著降低了計算復雜度(PS:需要注意的是,Total Token 的數(shù)量會有所增加):

為了訓練模型適應(yīng) InftyThink 范式,作者提出了一種將現(xiàn)有 Long Reasoning 數(shù)據(jù)集重構(gòu)為迭代格式的方法。以 OpenR1-Math 數(shù)據(jù)集為例,重構(gòu)過程包含以下步驟:
- Reasoning 分割:根據(jù)最大 Token 長度參數(shù) η,將 Reasoning 過程分割為多個語義連貫的片段。
- 總結(jié)生成:使用 Meta-Llama-3.3-70B-Instruct 模型為每個片段生成總結(jié)。
- 訓練樣本構(gòu)建:將分割的 Reasoning 片段和生成的總結(jié)組合成新的訓練樣本,用于 SFT。通過這種方法,OpenR1-Math 數(shù)據(jù)集被擴展為 OpenR1-Math-Inf,包含 333K 訓練樣本。

6.3 結(jié)論
如下圖 Table 1 所示為本文的實驗結(jié)果,本文的方案能有效的提升 Acc。遺憾的是,雖然其可以降低峰值內(nèi)存需求,但作者并沒有進行 Inference 時間等相關(guān)評估。單純從生成 Token 數(shù)的角度出發(fā)其增加了總的 Token 數(shù),可能增加 Inference 成本;但每個 Iter 參與的 Token 數(shù)是少的,又可能降低 Inference 成本;除此之外,Summary 也需要一定的 Inference 開銷。

七、Sketch-of-Thought
7.1 概要
思維草圖(Sketch-of-Thought,SoT)框架結(jié)合了認知啟發(fā)的 Reasoning 范式與語言約束,旨在最大限度地減少 Token 使用量,同時保持 Reasoning 準確性。在跨越 15 個多語言及多模態(tài)場景的 Reasoning 數(shù)據(jù)集上的全面評估表明,SoT 實現(xiàn)了 76% 的 Token 減少,且對準確性的影響微乎其微。在數(shù)學及多跳 Reasoning 等特定領(lǐng)域,SoT 甚至在使用顯著更少 Token 的同時提高了準確性。
對應(yīng)的論文:[2503.05179] Sketch-of-Thought: Efficient LLM Reasoning with Adaptive Cognitive-Inspired Sketching [9]
對應(yīng)的代碼庫:https://github.com/SimonAytes/SoT [10]
7.2 方案
SoT 框架的核心思想是借鑒人類專家在解決問題時使用的“草圖”(Sketche),即通過簡潔的符號、縮寫和領(lǐng)域特定的術(shù)語來高效表達 Reasoning 過程。SoT 框架包含三個基于認知科學的 Reasoning 范式,分別針對不同類型的 Reasoning 任務(wù)。
概念鏈(Conceptual Chaining):利用聯(lián)想記憶網(wǎng)絡(luò)連接關(guān)鍵概念,以極簡的文字表達 Reasoning 過程。例如,回答“首爾使用的貨幣是什么?”時,SoT 的 Reasoning 過程為:#Seoul → #South Korea → Won。

分塊符號主義(Chunked Symbolism):基于工作記憶分塊理論,將數(shù)學 Reasoning 組織成緊湊的符號表示。例如,計算“一輛汽車以 2.5 m/s2 的加速度加速 10 秒,初始速度為 15 m/s,求最終速度?”時,SoT 的 Reasoning 過程為:a = 2.5 m/s2, t = 10 s, vi = 15 m/s → vf = 15 + (2.5 × 10) → vf = 40 m/s。

專家詞典(Expert Lexicons):模仿專家使用的領(lǐng)域特定的縮寫和符號,以高效表達復雜信息。例如,回答“STEMI 患者接受 MONA 治療,但對阿司匹林過敏,這種治療是否安全?”時,SoT 的 Reasoning 過程為:STEMI → ST-Elevation MI, MONA → Morphine, O2, Nitrates, Aspirin → Aspirin ∈ MONA。

如下圖 Figure 2 所示,SoT 框架通過一個輕量級的 Router Model(基于 DistilBERT)動態(tài)選擇最適合每個問題的 Reasoning 范式,確保 Reasoning 過程的高效性。

7.3 結(jié)論
如下圖 Table 1 所示為主要結(jié)果,相比 CoT 的損失確實不大,并且 Token 數(shù)有比較明顯的下降:

八、Meta Reinforcement Fine-Tuning
8.1 概要
這個工作來自卡內(nèi)基梅隆大學和 Huggingface 團隊,主要研究如何通過元強化學習(Meta Reinforcement Learning,MRL)優(yōu)化 LLM 在測試時的計算資源利用效率。作者開發(fā)了元強化微調(diào)(Meta Reinforcement Fine-Tuning, MRT)方法,旨在優(yōu)化測試時計算。與 Outcome-Reward RL 相比,MRT 在數(shù)學 Reasoning 任務(wù)上實現(xiàn)了 2x-3x 的性能相對提升,以及約 1.5x 的 Token 效率增益。
對應(yīng)的論文:[2503.07572] Optimizing Test-Time Compute via Meta Reinforcement Fine-Tuning [11]
8.2 方案
MRL 的核心在于如何在訓練時學習到一種策略,使得模型在測試時能夠根據(jù)不同的任務(wù)動態(tài)調(diào)整其行為。具體來說,論文提出了以下關(guān)鍵概念:
- 將輸出流劃分為多個“episode”:將 LLM 的輸出流劃分為多個邏輯塊(episode),每個 episode 可以看作是對問題的一次嘗試或?qū)χ皣L試的修正。
- 最小化累積遺憾(cumulative regret):通過優(yōu)化一個密集獎勵函數(shù)(dense reward),使得模型在每個 episode 中都能取得進展,從而最小化與最優(yōu)策略的差距(遺憾)。
MRT 的核心在于定義一個“進展”(Progress)的概念,并將其作為密集獎勵函數(shù)的一部分。具體來說:
- 進展(Progress):定義為在給定上下文和當前 episode 的情況下,模型成功解決問題的概率變化。如果一個 episode 能夠顯著提高解決問題的概率,則認為該 episode 有較高的進展。
- 密集獎勵函數(shù):在標準的 0/1 結(jié)果獎勵基礎(chǔ)上,加入一個與進展相關(guān)的獎勵項。這樣,模型不僅需要在最終輸出中獲得正確的答案,還需要在每個 episode 中取得有意義的進展。

論文中提出了兩種實現(xiàn) MRT 的方法:
- 基于 STaR(Self-Training with Rollouts)的 MRT:通過采樣模型的輸出,篩選出那些既符合進展獎勵又最終成功的軌跡,然后進行監(jiān)督學習。
- 基于 RL 的 MRT:直接在訓練過程中優(yōu)化包含進展獎勵的目標函數(shù),使用在線強化學習方法(如 PPO 或 GRPO)進行更新。

8.3 結(jié)論
如下圖 Table 1 所示,本文的 MRT 相比之前的其他方法在 Acc 上有比較明顯的提升:

如下圖 Figure 7 所示,對于 Qwen-1.5B 模型,在實現(xiàn)同樣 Acc 的情況下本文的 MRT 方法與其他方法相比可以明顯減少 Token 數(shù):

如下圖 Figure 8 所示,在 8B 模型上有類似結(jié)論:

九、參考鏈接
- ??https://arxiv.org/abs/2502.15589??
- ??https://arxiv.org/abs/2502.12067??
- ??https://github.com/hemingkx/TokenSkip??
- ??https://arxiv.org/abs/2412.18547??
- ??https://github.com/GeniusHTX/TALE??
- ??https://arxiv.org/abs/2502.18600??
- ??https://github.com/sileix/chain-of-draft??
- ??https://arxiv.org/abs/2503.06692??
- ??https://arxiv.org/abs/2503.05179??
- ??https://github.com/SimonAytes/SoT??
- ??https://arxiv.org/abs/2503.07572??
本文轉(zhuǎn)載自???????AI閑談?????????,作者:AI閑談

















