Last Updated on 2025-04-11 by Clay
Cogito V1 是最近在 Reddit 上看到的效果很好的模型,同事們也在更早一天推薦了我,抱著體驗一下的心態放到了手邊的 RAG 任務上,效果相當驚豔 —— 最主要的是它在有查詢出相關參考資料時,不太會出現幻覺、並能好好統整多筆資料進行回答;這在我之前測試的模型當中,只有 Gemma-3 能在不經過微調的情況下給我相似的感受。
DeepCogito 團隊介紹模型與訓練方法(沒有很詳細)的部落格文章於此:https://www.deepcogito.com/research/cogito-v1-preview
簡單來說,他們訓練了一系列名為 Cogito 的大型語言模型,並且採用了一種名為迭代蒸餾放大(Iterated Distillation and Amplification, IDA)的方法,並引用了一篇 2018 年 OpenAI 的論文:Supervising strong learners by amplifying weak experts
按照原始論文中的訓練方法,應如下:
這張圖已經清晰地說明了 IDA 的訓練流程。
- 首先,我們真正的人類工作者 H,接受到問題 Q,並將問題 Q 分解成更小的問題 Q_1, Q_2, ..., Q_n,並透過我們希望輔助的模型 X 得到每個小問題的解答 X(Q_1), X(Q_2), ..., X(Q_N);最後再由 H 將子問題的答案整理為一個統一的 A
- 前一步驟累積下來的資料,用於讓模擬人類工作者的 H' 進行訓練,其輸入是 Q,H' 要分解為更小的問題 Q_1, Q_2, ..., Q_n,同樣透過模型 X 得到每個小問題的解答 X(Q_1), X(Q_2), ..., X(Q_N) 後,再由 Q 彙整整理出 A
- 最後將原始的問題 Q,和最後彙整出的 A,交給我們想要用來輔助的模型 X 進行訓練,讓它能夠在看到 Q 的情況下直接回答 A
不過以上的作法並不能解釋為什麼 Cogito 擁有推理能力,並能透過 Prompt 進行切換,所以我個人更傾向是 DeepCogito 團隊在訓練流程上進行了一些改動(當然詳情還是要等他們公佈論文或更清楚的訓練架構)。
當然最直接的一種猜想是把所有子問題和子問題的回答收集起來,並使用 Disable/Enable deep thinking subroutine. 來決定是否把子問題的問題都交給模型 X 來進行思考訓練。
簡單來說,IDA 被 DeepCogito 團隊視為一種實現通用超級智慧(General Super-Intelligence)的可擴展、高效對齊策略。
他們之所以想要使用這一流程,是因為既有的 LLM 訓練方法,通常會將模型的能力上限限制在監督者(overseer)或資料來源的能力範圍內,而為了達到超越人類水準的通用超級智慧,需要一個打破這一限制的方法。
所以我很期待這一方法被 DeepCogito 團隊公佈,看看實際上與當初的 IDA 論文做了哪些變化。
另外部落格文章中也提到,IDA 比其他流行的方法(如 RLHF、大型模蒸餾)來得更有效率,在擴展性上也更好。比方說,Cogito 模型就是由小團隊在 75 天內開發出來的,其 70B 模型性能優於從更大模型蒸餾而來的 Llama 3.3 70B 和 Llama 4 Scout 109B。
這一說法無疑也是堅持著小模型的一條既有微調路線:過去有一陣子,大公司紛紛得出結論,較小模型的性能比起重新訓練,不如從大模型蒸餾。
而到底哪邊才是正確的?我個人仍然認為還沒法下定論,畢竟兩方的應用場景、測試場景可能都不盡相同。
但總之,在 DeepCogito 團隊的部落格文章中,主要是把 IDA 認為一種透過讓模型利用額外計算進行更深層次的「思考」(放大),然後將這種思考能力「教會」模型自身(蒸餾),並不斷重複這個過程來實現模型自我智慧提升,最終目標是突破人類監督者的限制,達到通用超級智慧。