本文來自微信公眾號“twt企業(yè)IT社區(qū)”,作者/詹智才,高級算法工程師,目前主要負責所在大型電商企業(yè)的大模型優(yōu)化、類目檢測、客服系統(tǒng)中意圖識別等項目,有OCR、AI算法平臺架構設計、模型量化、linux、docker,推薦系統(tǒng)、大模型等工作經驗。
一、引言
隨著ChatGPT的問世,大模型被大家一次又一次的提及,而ChatGPT的效果也讓大家從驚訝到興喜到摩拳擦掌,都想開啟一個全新的AI時代。近些年,從政府層面,頒布了諸多政策,從市場的廣泛需求層面,人人都想將大模型應用到自身所處領域。
從市場角度,我們可以在辦公、制造業(yè)、金融業(yè)、醫(yī)療、政務等領域看到大模型的身影。辦公領域大模型的智能助手,使用戶可以從之前繁瑣的文字、演示、數(shù)據處理中抽身出來,只要將這些一股腦扔給大模型,就能一鍵理解內容,并生成想要的文檔;在制造業(yè)的供應鏈管理中,通過與大模型進行實時交互,能完成諸如倉儲,物流等智能調度、智能跟蹤、智能預警;同時在金融業(yè)大模型還能根據客戶的行為偏好直接生成個性化郵件,完成快速的欺詐檢測,提升信貸風控能力等;在醫(yī)療場景,更是能提供態(tài)度良好,知識儲備高的高質量的導診服務和個性化的健康建議;而在政務領域,諸如本地寶等政務解讀產品上面提供大模型的輔助服務,大模型能夠更加智能的理解政策條款,并提供社會大眾更便捷的政策理解和途徑。
二、大模型有哪些不同
大模型相比于傳統(tǒng)算法,有哪些不同呢?傳統(tǒng)算法諸如DFS等,都可歸為一種規(guī)則化或者簡單概率化的算法,其本身具有很強的解釋性,但是這些傳統(tǒng)算法都只能應用于一些特定領域,解決一些特定問題,說的最多的往往都是時間復雜度和空間復雜度。而相比機器學習等智能算法,大模型本質上主要有兩大特征:泛化通用性、涌現(xiàn)性。
泛化通用性:它通過吸收各種不同領域的數(shù)據集,通過預訓練、微調、對齊等階段,能直接應對各個領域的問題。當然當前有各個不同垂域領域的大模型,主要還是因為基礎大模型的不完備和無法拿到垂域領域的數(shù)據。
涌現(xiàn)性:這是大模型最與眾不同的地方,往往我們訓練人工智能模型,不管是計算機視覺的、語音的、文本語義的,都不會有涌現(xiàn)這個特性。通過將模型參數(shù)上升到一定規(guī)模,如一百億(10B),經過預訓練(PreTrain,PT)、有監(jiān)督微調(Supervised Fine-Tuning,SFT)、對齊等階段,你就發(fā)現(xiàn)他突然能夠理解人類在說什么,好像“開竅”一樣。
從大模型的部署場景劃分,我們可以粗暴的劃分為云側大模型和端側大模型。所謂云側大模型,指的是那些部署在云服務廠商或者自己機房的大模型,使用的部署機器大多是NVIDIA的A100、H100等高端顯卡上,這些顯卡具有更強算力,模型也更加復雜。當然這里值得一提的是,因為眾多如Flash Attention等項目或者插件,或者本身顯卡算力問題,極力不推薦用諸如V100等低一代顯卡來訓練模型;而端側大模型更多的是具有可移動性、便攜性,比如可運行在手機端,這些大模型具有極強的隱私性,同時模型參數(shù)量也更小,當然這塊還沒做好,畢竟現(xiàn)在這個階段,還是“百模大戰(zhàn)”的時候,還是在堆算力、堆數(shù)據的時候,Scaling Law的威力還沒見底。
三、大模型的局限
那么,發(fā)展至今,大模型有哪些缺點和局限呢?
一是模型框架的局限性。當前主流的大模型都是基于Transformer架構,其本身存在消耗算力資源巨大、占用內存多的問題,而傳統(tǒng)的Transformer架構由于其算法特性,計算量會隨著上下文長度增加而成非線性增加,如上下文長度增加32倍,計算量增加成百上千倍。在訓練的時候,往往使用Adam等迭代器,這些迭代器需要將前向的值保存一份,梯度保存一份,網絡權重保存一份,這些操作更是增加了顯卡顯存的消耗。而另一個大模型無法做到人人都有的就是數(shù)據,最新的Llama3的最小模型7B就消耗了15T Tokens的語料,而這些語料不僅僅是下載就行的,還需要經過清洗,而且是深度清洗,就更別說更大模型所需要的數(shù)據量了。所以這也是為什么大模型的產出也只聚焦于頭部的一些企業(yè),就連高校都難負擔這個代價。加上大模型能夠模仿真人的寫作風格和習慣,這里又增加了一個安全合規(guī)性審查,即大模型不能被那些不法分子用來做壞事,比如你問大模型怎么制造槍支,一個成熟的合規(guī)的大模型一定是拒絕回答或者進行規(guī)勸,而不是吐出一堆步驟。大模型的訓練本身也是不穩(wěn)定的,如果一個企業(yè)打算從0開始訓練,而不是基于諸如Llama等架構做二次訓練,那么他將會遇到三個問題:
1)“算力墻”,引用天翼云資深專家陳希的話“完成一個千億參數(shù)級別的大模型例如GPT-3需要314ZFLOPs算力的模型訓練,而單卡只有312TFLOPS算力時,一張卡訓練一個模型要耗時32年。”
2)“存儲墻”,單顯卡的顯存已經無法加載千億級參數(shù)。千億級參數(shù)完全加載到顯存大概需要幾個TB,如果再考慮梯度、優(yōu)化器狀態(tài)等訓練過程產生的一些中間結果,占用的顯存量就更大了,往往需要上百張卡才可以支持,當然如DeepSpeed等框架一定程度緩解了這個問題,通過梯度切分,迭代器參數(shù)切分等形式進行分片處理,但仍無法從根本上解決這個問題。
3)“通信墻”,這也是最考驗功底的地方,如何在大集群下面進行數(shù)據的通信,如節(jié)點內多卡通信、節(jié)點間通信等等,所以大模型很多時候既考驗算法功底,也考驗工程功底。
在模型推理層面,大模型還有一些目前沒完全解決的問題,有:
1)大模型幻覺問題,即大模型回答的結果看似正確,實質上是不符合事實或者錯誤的,比如,你問他一個現(xiàn)實世界的問題,結果回答的是錯誤的,這叫事實性幻覺;你發(fā)出指令讓大模型告訴你你輸入指令上下文中的內容,他卻答錯,這叫忠實性幻覺。
2)微調后災難性遺忘的問題,即一個基座大模型是用通識語料進行訓練的,不符合某個垂域領域的業(yè)務需要,所以需要用這個垂域數(shù)據進行有監(jiān)督微調,但是經過微調后,該大模型可能會遺忘之前的一些通識能力。
四、大模型的發(fā)展方向
當前我國云側的大模型百花齊放,截止今天(2024年5月14日),通過備案的大模型已經有上百個了,如我們耳熟能詳?shù)陌俣任男囊谎?、阿里通義千問、科大訊飛星火、騰訊混元等。他們都是通過強大的算力、海量的訓練數(shù)據去訓練的,提供諸如文檔問答、知識問答、數(shù)學推理、代碼生成、文本生成等等。那么未來,我們的大模型有哪些變化和成長的地方呢?我們可以通過如下幾個方向去看:
1)大模型的小型化
隨著智能手機、智能穿戴設備、智能家居等設備的普及,人們對于在移動端和邊緣設備上運行大模型的需求越來越迫切。然而,由于這些設備的計算資源和存儲空間有限,傳統(tǒng)的大模型往往難以直接應用于這些場景。大模型小型化不僅可以提高模型在資源受限設備上的運行效率,還可以降低模型的存儲和傳輸成本,此外,大模型小型化還可以加速模型的部署和迭代,提高模型的靈活性和適用性,為各種場景提供定制化的智能解決方案。
現(xiàn)在主流的大模型的小型化方法有如下幾種:
參數(shù)剪枝(Pruning):通過刪除模型中的冗余參數(shù)和連接,以減少模型的參數(shù)量和計算復雜度,從而實現(xiàn)模型的小型化,這塊工作目前成果較少;知識蒸餾(Knowledge Distillation):通過將一個大型模型的知識轉移到一個小型模型中,來實現(xiàn)模型的小型化,這塊工作目前成果也不多;網絡結構設計(Network Architecture Design):通過設計更加輕量級的網絡結構,來實現(xiàn)模型的小型化,如設計一個更緊湊的Transformer單元結構;量化(Quantization):將模型中的參數(shù)和激活值轉換為低精度的表示形式,以減少模型的存儲空間和計算量,從而實現(xiàn)模型的小型化,這也是目前最主流的,如GPTQ,AWQ等等量化方法。GPTQ全稱是Generative Pretrained Transformer Quantization,是對某個塊內所有參數(shù)逐個量化,每個參數(shù)量化后,適當調整這個塊內其他未量化的參數(shù),以彌補量化造成的精度損失;而AWQ全稱是Activation-aware Weight Quantization,激活感知權重量化,不依賴任何反向傳播或者重構,直接進行量化,所以速度快。而且對應的如Qwen等大模型在開放原有參數(shù)量大模型的基礎上,也會提供GPTQ和AWQ版本的大模型,它們都是將大模型的權重層直接從半精度的FP16量化到INT8甚至INT4。
我個人既嘗試過基于AutoAWQ做AWQ的量化,然后通過VLLM進行拉起做服務,也用AutoGPTQ做GPTQ的量化。這里值得一提的是,通過對比,GPTQ量化模型的效果要更好主要是它需要你準備業(yè)務數(shù)據做調整,而AWQ是純量化的。
目前的一個定律是,要想獲得好的結果,那就得更大的模型。在效果上,10B的比7B的好,30B的比14B的好,72B的比30B的好,而如何將72B這種更大模型量化或者小型化到足以放到手機,也就是端側來執(zhí)行,目前仍是一個熱點,也是一個難點。一旦實現(xiàn)了,那么模型的部署量將無法想象,就像人人用微信,如果每個手機,每個機頂盒,每個智能手表都能塞得下一個小型化的大模型,那么也會達到人人都能享受人工智能的地步。
2)大模型的專業(yè)化
上面我們說我國現(xiàn)在有上百個大模型,均是云側大模型,是基于海量的通用數(shù)據進行訓練完成的。雖然它們包含了各行各業(yè)的數(shù)據,但是終究不如一個在某個行業(yè)中從事多年的專業(yè)人才。而大模型所展現(xiàn)出的強大的數(shù)據擬合能力和強大的基座能力可以為我們所用,即某家大企業(yè)發(fā)布了一個強力底座,當前國內最強的開源中文大模型是阿里的千問Qwen,其在通用測試集上的效果很好,我們可以將其選為我們的底座,然后自身去采集自己領域的數(shù)據,進行強力清洗,要記得“數(shù)據質量高于數(shù)量”,當然數(shù)量也不能太少,可以千條數(shù)據為單位作為一個主題的數(shù)據量,然后通過SFT微調得到自己領域的專有大模型。
與通用大模型相比,這類行業(yè)大模型具有專業(yè)性強、數(shù)據安全性高等特點,而且經過實踐,也并不會損壞大模型原有的通識能力。所以未來各個行業(yè)挑選一個參數(shù)量符合自己企業(yè)的大模型,然后基于上述邏輯進行模型微調,對于企業(yè)的落地具有顯著的成本優(yōu)勢。拿國金證券發(fā)布的《互聯(lián)網行業(yè)研究》中的數(shù)據來說,“AI代碼助手幫助工程師節(jié)省55%的時間。據ARK測算,2022年在代碼編寫的產能上,AI為人類的1.5倍,預計到2030年,AI的代碼產能預計達到人類的10倍。圖片生成上,人工需要5小時花費150美金完成的工作,AI繪畫可以在1分鐘內完成,成本約0.08美金”。未來也會有越來越多的行業(yè)大模型給每個行業(yè)進行降本增效。
3)大模型的普世化
大模型未來一定會存在閉源領先,開源追趕,并且開源的模型不會落后閉源太多的局勢。閉源是為了商業(yè)利益,而開源是為了生態(tài)和公司股價。如OpenAI的ChatGPT是大模型業(yè)內最強模型,同時Meta的Llama也是目前業(yè)內最強開源模型,大模型的開源一方面能降低開發(fā)者的使用門檻,另一方面也能提高該算法的社區(qū)追隨度、模型的完善度(相當于一堆其他外援在幫忙測試大模型和給該大模型補齊短板)。國內當前的幾大大模型開源巨頭如阿里的千問、清華系的智譜GLM、百川智能的Baichuan、上海人工智能實驗室的書生、VIVO的BlueLM,還有一系列基于Llama底座進行行業(yè)內開源的大模型。
如上述所說,閉源是為了商業(yè)利益,開源更多的是為了自身生態(tài)和模型短板,其實從另一個角度,那也是有利于未來在該行業(yè)的大模型中占據規(guī)則制定者的角色,且能形成一定的技術先發(fā)優(yōu)勢和打壓對手技術升級的目的,同時減少自身所需要付出的測試和特定場景的開發(fā)成本。
4)大模型的產業(yè)化
大模型的產業(yè)化也是所有商業(yè)公司決策層最關注的,從市場以及技術支持層面,可以分為:
I)上層應用層,不同場景下大模型在該行業(yè)不斷擴大的占有率
即當一個大模型能夠在特定領域內完成先行,比如法律領域、醫(yī)療領域,那么下一步一定是小范圍的人工代替,慢慢的變成更大范圍內的使用。通過開放一個可交互式的、態(tài)度良好的、收費低廉的大模型交互產品,會給該企業(yè)降本增效,而反過來又會影響到同行業(yè)其他競爭者,一定會最終形成一個正向循環(huán)。而且因為大模型的出現(xiàn),很多行業(yè)以往AI無法深入的情況可能得到逆轉。習總書記也說過:“誰能把握大數(shù)據、人工智能等新經濟發(fā)展機遇,誰就把準了時代脈搏”。
II)中層基座層,牢牢掌握基礎大模型的規(guī)則制定
如前文說的,未來格局一定是幾個巨頭開放開源的大模型底座,和一些行業(yè)內開源的大模型。但是很多企業(yè)因為行業(yè)特殊或者數(shù)據的時效性,更多的是拿大模型底座加上自家數(shù)據進行微調訓練。這時候誰能掌握底座大模型的占有率,誰就能主導大模型的技術制定規(guī)則。
III)下層硬件層,我國還在不斷地追趕中
這一層也是我國目前尚未領先的部分,還沒能和Nvidia完全的掰手腕。大模型的成功,猶如當年深度學習的成功,主要還是兩個事情:“算力”、“數(shù)據”。其中算力一直受制于Nvidia的GPU顯卡,有人戲稱,AI整個產業(yè)值1000億,其中800億都給Nvidia掙走了。Nvidia的顯卡歷經幾代的研發(fā),從最開始的Tesla架構到最新的Hopper架構,其護城河已經形成。雖然前赴后繼者如Google的TPU、寒武紀的思元等都無法完全撼動他的地位,還有前些年的國內深鑒科技提出的基于xlinx的fpga研發(fā)的DPU等。不過這也不是未來,畢竟高通在收購NXP之后,也一直在和Facebook的Yann LeCun等在合作開發(fā)實時推理的新型芯片,最近的新星Groq公司的LPU號稱推理速度較英偉達GPU提高10倍、成本只有其1/10,運行的大模型生成速度接近每秒500 tokens。當然這塊發(fā)展國內也在不斷地追趕,如政府幫助下的華為昇騰,還有地平線的BPU等,前段時間刷屏的海光信息的DCU,也是基于GPGPU架構,兼容通用的“類CUDA”場景,其目前適配了文心一言等大多數(shù)國內外主流大模型,也能實現(xiàn)LLaMa、GPT、Bloom、ChatGLM、悟道、紫東太初等模型的部署。
所以未來鹿死誰手尚未可知。