戳破「思考模型」的行銷幻覺:KV Cache 暴力美學與 Test-Time Compute 的真相

在深入研究 LLM 應用與 Agent 系統的過程中,我實在對業界那種「AI 馬屁精」式的玄學行銷感到反胃。現在廠商動不動就愛吹自家的新模型「會思考」、「有邏輯」,彷彿加了一個 “Pro” 或 “Thinking” 的後綴,神經網路就突然長出了人類的大腦。我們如果不採取懷疑與質問的態度,很容易就會被這些漂亮話牽著鼻子走。今天我們就冷酷地從底層運作機制與物理限制出發,拆解 Flash 模型與 Thinking 模型真正的差異,以及那些所謂的「思考過程」到底是什麼。 1. 根本不是「想久一點」:訓練目標與機率分佈的差異 很多人以為 Thinking 模型只是 Flash 模型跑得比較久,或者我們透過 Prompt 叫它「你想仔細一點喔」。這完全是個誤解。 Flash 模型的訓練目標是追求極致的推理速度與低延遲,它依賴強大的壓縮記憶和直覺式的 Pattern Matching。而標榜推理的 Thinking 模型,是在訓練階段引入了大量的RL,被「刻意訓練」成在給出最終答案前,必須先產生一長串的內部推理軌跡(Chain of Thought)。 無論是哪一種,它們本質上依然是在做 Next-Token Prediction。我們來看自迴歸生成最核心的機率公式:P(Y | X) = 根據過往生成的X個token 預測目前要接龍的下一個token Y的sampling長什麼樣子。 給定輸入 X,模型每一步都是在計算下一個 Token y_t 的最大條件機率。Thinking 模型並沒有跳脫這個框架,它只是被訓練成在生成最終答案的 y 之前,先利用這個公式接龍出一大堆中間步驟。 2. KV Cache 的暴力美學:破除「重新計算」的直觀迷思 既然是接龍出思考過程,這就帶出了第二個嚴重的迷思。很多人直觀地以為,Thinking 模型的運作方式是: 原始問題 -> 產出思考步驟 1。 接著把「原始問題+思考步驟 1」整包重新餵給 Transformer -> 產出思考步驟 2… 就這樣像俄羅斯娃娃一樣越疊越大。 如果真的是這樣運作,GPU 的算力早就原地爆炸了。真正的底層魔法,在於 KV Cache(Key-Value Cache)。 ...

May 22, 2026 · 1 分鐘 · datafox & 柯宥圻 (Yuchi Ko)

打破 Seq2Seq 迷思,從資訊理論看大模型的極致壓縮與湧現

當時的我會覺得,Decoder 說穿了根本只是看著輸入做「文字接龍」,沒辦法預先知道整體要生成什麼。但現在回頭看,如果我們不跟著那些 AI 馬屁精瞎起鬨、講一些「因為 GPT 比較有靈性」的漂亮話,而是冷酷地從Information Theory與工程現實的底層來拆解,你會發現 Decoder-only 的勝出,根本是一場數學與物理限制下的必然。 1. 統一架構的暴力美學:交叉熵與自作聰明的代價 Seq2Seq 雖然邏輯清晰,但它把「理解」與「生成」拆成兩個模組,其實在數學目標函數上「自我閹割」了資訊壓縮的純粹性。 我們回到機率與資訊理論最純粹的定義——熵的鏈律(Chain Rule for Entropy): $$H(X_1, X_2, \dots, X_n) = \sum_{i=1}^{n} H(X_i | X_{i-1}, \dots, X_1)$$ 這條公式告訴我們,要量化一段人類語言的總體不確定性,最完美、最無損的拆解方式,就是去計算「在給定所有歷史資訊的情況下,下一個字的條件熵」並全部加總。 而 LLM 每天在跑的 Next-Token Prediction,其損失函數本質上就是最小化真實世界人類語言分佈 $p$ 與模型預測分佈 $q$ 之間的交叉熵(Cross-Entropy): $$H(p, q) = H(p) + D_{\text{KL}}(p \parallel q)$$ 這裡面的物理意義非常優雅:$H(p)$ 是「上帝的熵」,人類語言本身自帶的終極亂度;而 KL 散度 $D_{\text{KL}}(p \parallel q)$ 則是模型因為不夠聰明,導致我們在進行接龍時,平均每一步要多付出的資訊代價(雜訊)。優化模型的終極目標,就是要把這個代價逼近到 0。反觀 Seq2Seq,它偏要把這個統一的優化任務拆開,用雙向 Attention 去搞 Span Corruption(挖空填空),再用 Cross-Attention 去撈 Embedding。這打碎了能量化一切的條件熵鏈律,讓參數空間的優化目標變得極度不純粹。 2. 質問:我們真的希望 KL 散度歸零嗎? 好,這時候如果有人舉手質問:「照你這樣說,我們希望 $D_{\text{KL}}$ 越低越好,那終極目標不就是讓它等於 0?如果模型分佈跟人類真實資料採樣完全一模一樣,那它不就只是個死記硬背的隨機鸚鵡?你們天天掛在嘴邊的『湧現能力』到底從哪裡蹦出來的?」這個質問,就是解開 Decoder-only 勝出謎題的終極鑰匙。 ...

May 21, 2026 · 1 分鐘 · datafox & 柯宥圻 (Yuchi Ko)

為什麼現在的 LLM 都是 Decoder-only?從 Seq2Seq 到 GPT 的架構演進與思考

「如果要通往圖靈機的路上,Seq2Seq 本身比 Decoder 還要合理。」這是我在 2022 年的筆記裡寫下的一句話。 當時我試玩了早期的 GPT-2,心裡總覺得:這到底是個什麼東西?相比之下,基於 Seq2Seq 概念的 BART 或是 T5 看起來合理太多了。沒想到幾年後的現在,在這場 AI 軍備競賽中,竟然是 Decoder-only 架構拿下了 MVP。 當時的我會覺得,Decoder 說穿了根本只是看著輸入做「文字接龍」。它沒辦法預先知道自己整體要生成什麼,只能不斷在 Sample Space (樣本空間) 中選擇「現在這個情況下,下一個字機率最大的是誰」。 相較之下,Seq2Seq 才是完整使用 Transformer 架構的「好學生」: Encoder 負責看懂整個句子架構,並生成富含語意細節的 Embedding。 Decoder 應用 Encoder 給的全局上下文 (Context) 來輸出序列。 這樣的分工聽起來超合理,對吧?但為什麼現在的發展卻完全偏向了 Decoder-only?以下是我後來自己的反思,以及結合近期與 AI 討論後整理出的幾個關鍵原因。 1. 統一架構的暴力美學:Scaling Law 與目標函數 Seq2Seq 雖然邏輯清晰,但它把「理解」與「生成」拆成了兩個模組。Encoder 負責理解並產生針對細部觀念的 Embedding。這其實帶來了一個隱形的代價:訓練目標的不一致。 Seq2Seq 常常使用 Span Corruption(例如把一段話挖空,讓 AI 填空,類似 BERT/T5 的作法)來預訓練;而 GPT 則是貫徹到底的 Next Token Prediction (預測下一個詞)。 後來的事實證明,當模型參數規模放大到百億、千億等級時,遵守 Scaling Law (規模法則) 的 Next Token Prediction 是最能榨取資料價值的「目標函數」。當我們要壓低 Loss Function,讓 Decoder-only 的模型表現越來越好時,因為要預測下一個字足夠準確,模型被迫要在內部「模擬」出整個世界的邏輯、常識甚至物理規律。 ...

May 14, 2026 · 1 分鐘 · datafox & 柯宥圻 (Yuchi Ko)

讓網站自己更新:用 GitHub Actions + Gemini 做週報自動化

為什麼想做這件事 靜態網頁有一個很常見的誤解,就是「靜態」代表死的、不能動的。但其實搭配 CI/CD 之後,它可以做到很多人沒想到的事情。 我想做一件事:讓這個網站的某個欄位,每個禮拜自動更新,不需要我手動寫任何東西。我的動機有兩個: 第一個是純粹想測試 GitHub Pages 這類靜態部署在自動化上能走多遠。從爬資料、呼叫 LLM、到最後 commit 進 repo 觸發部署,整條鏈可以完全在 GitHub Actions 裡完成,不需要任何後端伺服器。這件事本身就很有趣。 第二個是實用性:GitHub Trending 是我覺得目前還沒有被充分利用的資訊源。每週跑一次 top 15,用關鍵字篩掉不相關的,剩下的讓 LLM 幫我整理摘要,然後自動發布到網站上。這樣我不用每週主動去追,資訊會自己跑到我的網站來。 技術細節 起點是找到一個乾淨的 RSS 來源。GitHub 官方沒有提供 Trending 的 RSS,但有人做了:mshibanami/GitHubTrendingRSS,每天自動更新,週報的 URL 格式長這樣: h t t p s : / / m s h i b a n a m i . g i t h u b . i o / G i t H u b T r e n d i n g R S S / w e e k l y / a l l . x m l 有了 RSS 之後,pipeline 的結構就很清楚了: ...

May 2, 2026 · 1 分鐘 · datafox & 柯宥圻 (Yuchi Ko)