JOVANA
Explore Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

推理模型與測試時運算

與其用提示讓模型思考,不如直接訓練它思考——並讓它在回答時多花運算。最新一代推理模型背後的範式,以及何時值得為更長的思考付費。

從提示到被訓練出來的推理

思維鏈提示是從一個通用模型身上「哄」出推理。推理模型(reasoning models)更進一步:它們被刻意訓練在回答前先產生長長的內部思維鏈,通常用一種獎勵「答對最終答案」的強化學習(reinforcement learning)。模型不只是在模仿範例——它被最佳化去把題目做對,於是它自己發現:想久一點是有幫助的。

看得見的效果很驚人:問推理模型一道困難的數學或程式題,它可能會「思考」好幾秒,吐出數百到數千個字的私下工作過程,最後才給一個簡短的答案。那些工作過程的字,本質上仍是普通的思維鏈——只是量大得多,而且是訓練出來的,不是提示出來的。

自迴歸生成:推理模型先輸出數百個私有的「思考」詞元,再給出簡短的最終答案。

一個迴圈:每生成一個詞元就回饋回去以產生下一個,逐步建構長鏈思考。

在回答時花運算

這正是測試時運算(test-time compute)的核心:即使模型權重固定,你也能用回答當下的額外運算去換取更高的正確率。更長的思維鏈、好幾次取樣的嘗試、一次明確的搜尋——這些都讓每道題花更多運算,並且通常能提升困難任務上的表現。它把「能力」重新定義成你可以在推論時調高的東西,而不只是訓練時烤進去的東西。

其中一個特別乾淨的版本是推論時搜尋(inference-time search):產生許多候選解或許多部分步驟,替它們評分,留下最好的——這是疊在生成之上的「N 選最佳」或集束(beam)式搜尋。模型變成了提案者;由一個評分器決定哪些提案存活。

推論時搜尋在回答時投入算力:分叉出許多候選解或部分解,給它們打分,並擴展最有希望的那一支——即 best-of-N 或束搜尋。

一棵可互動的搜尋樹,分叉出候選的下一步並擴展得分最高的節點。

檢查自己的作業

搜尋需要一個評分器,而其中一個強力的評分來源就是模型自己。自我驗證(self-verification)讓模型檢視一個候選答案、判斷它是否正確——重新推導一次結果、把解代回原方程式,或評點一份草稿。驗證往往比求解容易,這正是它有幫助的原因:一個較弱的檢查,仍能從一個強力提案者產出的眾多錯誤答案中濾掉許多。

推論運算 vs 訓練運算

這在策略上為何重要?多年來,造出更好模型的主要槓桿是訓練:更多參數、更多資料。測試時運算開啟了第二根槓桿——推論運算的擴展(inference-compute scaling)。實證上,讓一個固定的模型想久一點,能沿著它自己的曲線提升正確率,有時甚至追平一個大得多的模型給出簡短答案的水準。這兩根槓桿之間的取捨,就是推論 vs 訓練運算的研究主題。

提升準確率的兩個槓桿:擴大訓練計算(更多參數與資料),或擴大推論計算(在回答時思考更久)。

一張對數-對數圖,損失隨計算量增加而下降,展示增加計算帶來的可預測收益。

實務後果是:長時間思考不是免費的。每個推理用的字都要花錢、增加延遲。真正的本事是把投入對齊難度——簡單的查詢就用快速的直接回答,把深度的測試時運算留給那些真正困難、正確率的提升足以抵掉等待的題目。