
DeepSeek+dify知識庫,查詢數據庫的兩種方式(api+直連)
https://arxiv.org/abs/2402.13116 這篇論文是干嘛的?這篇論文是關于“知識蒸餾”(Knowledge Distillation,簡稱 KD)在大型語言模型(Large Language Models,簡稱 LLMs)中的應用。
簡單來說,知識蒸餾就像是讓一個“聰明的大老師”(比如 GPT-4)教一個“普通的小學生”(比如開源模型 LLaMA),把大模型的聰明才智傳給小模型,讓小模型也能變聰明,而且更省資源、更容易用。
論文的作者們想給大家講清楚三件事:
他們還特別提到了一種“數據增強”(Data Augmentation,簡稱 DA)的技術,說它在知識蒸餾里特別重要,能讓小模型學得更好。
論文結構很清晰,分成了算法、技能和應用三個大塊(這叫“三大支柱”),后面我會詳細講。
想象一下,GPT-4 這樣的“大模型”超級聰明,能寫文章、回答問題、甚至幫你解決問題,但它有個問題:太大了,太貴了,不是每個人都能用得上。就像一臺超級豪華跑車,性能強但耗油多、一般人開不起。
而開源模型(比如 LLaMA、Mistral)呢,雖然免費、靈活,但本事沒那么大,就像一輛普通小轎車。知識蒸餾的目標就是:
論文里還提到,這種技術還能讓開源模型自己教自己變得更強(自改進),或者把大模型壓縮得更高效。
知識蒸餾最早是用來把復雜的神經網絡“壓縮”成簡單的小網絡。比如原來一個大模型有幾億個參數,跑起來很費電腦,蒸餾后弄成一個小模型,參數少多了,但還能干差不多的事。
到了大型語言模型時代,知識蒸餾變得更高級了。現在不光是壓縮模型,還要把大模型的“知識”和“能力”傳給小模型。比如,GPT-4 能寫詩、推理、聊天,知識蒸餾就想讓小模型也學會這些本事。
論文里提到,知識蒸餾有三個主要作用(見圖 1 位置:Fig. 1: KD plays three key roles in LLMs):
數據增強聽起來很高大上,其實就是“造數據”。
比如,你給 GPT-4 一點點“種子知識”(比如幾個問題和答案),它就能生成成千上萬類似的問答對。這些數據不是隨便亂造,而是針對特定技能(比如數學推理)或領域(比如醫學)量身定做的。有了這些數據,小模型就能拿來練習,學到大模型的本事。
這就像給小學生準備了一堆精選練習題,比隨便找點題做效果好多了。
論文給了個通用流程,告訴你怎么把大模型的知識傳給小模型(見圖 4 位置:Fig. 4: An illustration of a general pipeline to distill knowledge):
這個流程簡單來說就是:
論文把知識蒸餾分成三大塊(見圖 3 位置:Fig. 3: Taxonomy of Knowledge Distillation of Large Language Models):
這是講怎么“教”。論文分了兩步:
知識怎么挖出來(Knowledge):
怎么教小模型(Distillation):
這是講教小模型“學會什么”。論文列了好多技能:
這是講小模型“用在哪”。論文舉了幾個例子:
這篇論文就像一份“AI 教學指南”。
它告訴你怎么用大模型(比如 GPT-4)當老師,把知識傳給小模型(比如 LLaMA),讓小模型變得聰明、好用還能省資源。核心是三大塊:
數據增強是個秘密武器,能造出好教材,讓小模型學得更好。論文還給了很多例子和方法(具體看圖 2 位置:Fig. 2: An overview of this survey)。
如果你感興趣,可以去他們的 GitHub(https://github.com/Tebmer/Awesome-Knowledge-Distillation-of-LLMs)找更多資料。