
芯東西(公眾號:aichip001)
編輯 |? GACS
9月14日(ri)-15日(ri),2023全球AI芯(xin)片峰會(GACS 2023)在深圳市南山區圓滿(man)舉行。在首日(ri)主(zhu)(zhu)題(ti)(ti)演講開幕式上,高(gao)通(tong)AI產品技(ji)術中國(guo)區負責人萬衛星分享了主(zhu)(zhu)題(ti)(ti)為《終端(duan)側AI是AI的(de)未來》的(de)主(zhu)(zhu)題(ti)(ti)演講。
萬(wan)衛星著(zhu)(zhu)重分享了高通(tong)對(dui)生成(cheng)式(shi)AI未來發(fa)展趨勢(shi)的(de)(de)觀察(cha):隨著(zhu)(zhu)云端處理生成(cheng)式(shi)AI的(de)(de)成(cheng)本(ben)不斷提(ti)升(sheng),未來云經濟將(jiang)難以支撐生成(cheng)式(shi)AI的(de)(de)規(gui)模(mo)化(hua)發(fa)展。此外,基(ji)礎模(mo)型正(zheng)(zheng)在(zai)向多模(mo)態擴展,模(mo)型能力越(yue)來越(yue)強大,而(er)垂直領域模(mo)型的(de)(de)參數量也正(zheng)(zheng)在(zai)變得越(yue)來越(yue)小。未來,豐富的(de)(de)生成(cheng)式(shi)AI模(mo)型將(jiang)在(zai)終端側運行,讓大眾(zhong)享受到生成(cheng)式(shi)AI帶給生活、工作(zuo)、娛樂上的(de)(de)變革。
以下為萬衛星的演講實錄:
尊(zun)敬的各(ge)位(wei)(wei)嘉賓,各(ge)位(wei)(wei)同行(xing),大(da)家(jia)上午(wu)好!很榮幸作為高通中國的代表參加這次峰會并(bing)進行(xing)演講,我非常期待能跟各(ge)位(wei)(wei)一起共同推動AI產(chan)業在中國的繁(fan)榮發展。今天我給大(da)家(jia)帶來的演講主題是終端(duan)AI是AI的未來。
一、終端側AI加速落地,高通已深耕端側AI多年
隨著(zhu)去(qu)年Stable Diffusion、Midjourney和GPT的(de)(de)火爆,生成(cheng)式(shi)AI的(de)(de)概念(nian)在以(yi)指數(shu)速度在我們普通大眾中普及(ji)。前面有嘉賓也分享了,ChatGPT是有史(shi)以(yi)來最快的(de)(de),只花(hua)了兩個月(yue)的(de)(de)時間(jian)就擁有了1億使用者的(de)(de)應用。
回到這張膠片,雖然我(wo)在這里列舉的多數(shu)是圖(tu)片相關的生成(cheng)式AI應用(yong),但(dan)是我(wo)們也(ye)知道生成(cheng)式AI應用(yong)不僅僅是局限(xian)于圖(tu)像(xiang),還包(bao)(bao)括文(wen)(wen)字生成(cheng)文(wen)(wen)字、圖(tu)片生成(cheng)圖(tu)片,甚至(zhi)包(bao)(bao)括文(wen)(wen)字生成(cheng)代碼、音樂(le),圖(tu)片生成(cheng)視頻,等等。
我們(men)(men)看到(dao)(dao)現在的(de)基(ji)礎大模(mo)型都在朝(chao)多模(mo)態模(mo)型轉變(bian),我們(men)(men)認為這(zhe)將深刻影(ying)響到(dao)(dao)我們(men)(men)的(de)生(sheng)(sheng)活、工作和(he)娛(yu)樂方(fang)式(shi)。為了讓普通(tong)大眾能夠更方(fang)便地享(xiang)受到(dao)(dao)生(sheng)(sheng)成(cheng)式(shi)AI,生(sheng)(sheng)成(cheng)式(shi)AI需要在終端側運行,這(zhe)也是高通(tong)公司努力(li)推動的(de)一個方(fang)向。
我(wo)們認為數(shu)據在(zai)哪(na)里(li),AI的(de)推理就應該在(zai)哪(na)里(li)。這個正確的(de)地方,就是在(zai)終端(duan)側。跟(gen)云端(duan)相比,端(duan)側的(de)優勢包括成(cheng)本、能(neng)耗、可(ke)靠性、時(shi)延和(he)(he)性能(neng),還有(you)非常重要的(de)隱(yin)私和(he)(he)安全,因為所有(you)數(shu)據都保留(liu)在(zai)終端(duan),不會(hui)上傳到任(ren)何云端(duan)。
除此(ci)之外(wai),我們還(huan)可以根據端(duan)側的(de)(de)信息為不(bu)同的(de)(de)用戶提(ti)供(gong)定制化、個(ge)性化的(de)(de)服(fu)務(wu),所(suo)有的(de)(de)這些(xie)服(fu)務(wu)都不(bu)依(yi)賴于任(ren)何網絡連接(jie)。對于一些(xie)有著上千億參數,只能在云端(duan)運(yun)行的(de)(de)大模(mo)型(xing),高通的(de)(de)5G技術也能夠幫助我們充分利用云端(duan)的(de)(de)算力,提(ti)高我們在端(duan)側的(de)(de)AI體驗。
在今(jin)年(nian)2月份的世(shi)界(jie)移(yi)動通(tong)信大會上,我(wo)們基于第(di)二代(dai)驍龍8的終端演示(shi)了全球首個在安(an)卓手機上運行Stable Diffusion的終端側演示(shi),通(tong)過高通(tong)全棧式AI對Stable Diffusion這樣一(yi)個超(chao)過10億參數的文生圖(tu)大模型(xing)的優化,我(wo)們可以15秒內完成20步(bu)推理,輸(shu)出(chu)一(yi)張512*512的圖(tu)片。
今年6月份,同樣也是基于第(di)二代(dai)驍龍8,我們完成了(le)全(quan)球最(zui)快(kuai)的手機上運行(xing)ControlNet終(zhong)端側演示,ControlNet是一個(ge)參數量比(bi)Stable Diffusion更大的圖生圖大語言模型(xing),用(yong)(yong)戶可以輸入一些文本(ben),同時選擇輸入你日(ri)常拍攝的一張(zhang)(zhang)普(pu)通照(zhao)片(pian)。比(bi)如說現在展示的拍了(le)一張(zhang)(zhang)花瓶(ping)的照(zhao)片(pian),通過ControlNet得到一張(zhang)(zhang)具(ju)有文藝復興時期作品風格的輸出(chu)照(zhao)片(pian)。當(dang)然,你也可以用(yong)(yong)它做其(qi)他的事情,比(bi)如對旅(lv)游照(zhao)片(pian)做背景(jing)切換或者(zhe)構圖等(deng)等(deng)。
二、生成式AI發展三大趨勢,終端側AI勢不可擋
下(xia)面我想談一談我們(men)觀察(cha)到的,生成式(shi)AI當前(qian)的發展趨勢。
第一個(ge)(ge)趨勢,生(sheng)成(cheng)(cheng)(cheng)式(shi)AI的(de)成(cheng)(cheng)(cheng)本。我(wo)們這(zhe)里舉(ju)了(le)一個(ge)(ge)例子,單(dan)就網絡(luo)搜索(suo)為(wei)例,使用(yong)生(sheng)成(cheng)(cheng)(cheng)式(shi)AI的(de)新技術(shu)跟傳統的(de)辦法(fa)相比(bi),每次搜索(suo)的(de)成(cheng)(cheng)(cheng)本提升10倍。考慮(lv)到(dao)還有各(ge)種各(ge)樣的(de)生(sheng)成(cheng)(cheng)(cheng)式(shi)AI應用(yong)正(zheng)在涌現,以及(ji)全球數十億的(de)用(yong)戶,顯而易(yi)見,云經(jing)濟將(jiang)難以支撐生(sheng)成(cheng)(cheng)(cheng)式(shi)AI的(de)規(gui)模化發展。
第二個趨勢,我(wo)前面也提(ti)到,現在(zai)數(shu)據的(de)(de)模態非常(chang)多,有文本、圖(tu)像,音樂、語(yu)音等(deng)等(deng),基(ji)礎模型正(zheng)在(zai)向多模態擴(kuo)展,也就是說(shuo)用(yong)戶可以(yi)隨意(yi)輸入任意(yi)模態的(de)(de)數(shu)據,可以(yi)得到與(yu)之對(dui)應的(de)(de)任意(yi)模態的(de)(de)輸出數(shu)據,也就是所謂的(de)(de)“X to X”。
第三個趨勢,我(wo)們能看到現在的基礎模(mo)型變得(de)越來越強大,但同時垂直領(ling)域模(mo)型的參(can)數(shu)(shu)量(liang)變得(de)越來越小(xiao),比如說GPT-3總的參(can)數(shu)(shu)量(liang)在1750億,但是Meta發布的Llama,包括(kuo)國內的百川等模(mo)型,他們的參(can)數(shu)(shu)量(liang)要小(xiao)很多,可(ke)能只有70億或者(zhe)130億。
跟大參(can)數量(liang)基礎模(mo)型(xing)相(xiang)(xiang)比,這些相(xiang)(xiang)對較小參(can)數量(liang)的大模(mo)型(xing)在(zai)某些垂(chui)直領域,性能依(yi)然(ran)十分(fen)強大,這也是為什么我們認為在(zai)未來(lai),我們非常有機會(hui)將這些模(mo)型(xing)在(zai)終(zhong)端側(ce)部(bu)署,讓更(geng)廣泛大眾(zhong)能夠享(xiang)受(shou)到生成式AI給(gei)我們的生活、工作(zuo)、娛樂帶來(lai)的各種(zhong)變(bian)革。
如(ru)果我(wo)們仔(zi)細看一下不同的(de)(de)(de)這些(xie)(xie)生成(cheng)(cheng)式AI的(de)(de)(de)用(yong)例,包括文字生成(cheng)(cheng)圖(tu)像或(huo)對話(hua)、NLP(自然語言(yan)處理)、編程、推理甚至包括圖(tu)像、視頻理解等等,所有(you)(you)支(zhi)撐這些(xie)(xie)AI用(yong)例的(de)(de)(de)大模型,它的(de)(de)(de)參數量在(zai)10億-150億之間(jian),這也是為什么我(wo)們認為在(zai)終端側完(wan)全(quan)有(you)(you)可(ke)能讓(rang)這些(xie)(xie)模型跑(pao)起來。
當前我(wo)們可以(yi)支持(chi)10億包括(kuo)15億參數的(de)大(da)模型(xing)在(zai)驍龍(long)平臺(tai)支持(chi)的(de)終(zhong)端(duan)(duan)側(ce)運行。未來幾個月我(wo)們也非常有希望能看到,超過100億參數的(de)大(da)模型(xing)能夠(gou)完整地在(zai)驍龍(long)平臺(tai)上(shang)跑起(qi)來。我(wo)們在(zai)終(zhong)端(duan)(duan)側(ce)通過不(bu)斷提(ti)升大(da)模型(xing)支持(chi)的(de)參數閾值,讓更(geng)多(duo)云(yun)端(duan)(duan)的(de)生(sheng)成式(shi)AI用例(li)向邊緣側(ce)遷移。
像手(shou)機(ji)這(zhe)樣的終(zhong)端,它有(you)著相機(ji)、麥(mai)克風、傳(chuan)感器、藍(lan)牙、Wi-Fi、調制(zhi)解(jie)調器等(deng)等(deng)能(neng)夠提(ti)供(gong)感知(zhi)信(xin)息的模塊,而(er)這(zhe)些感知(zhi)信(xin)息可以作為生(sheng)成式(shi)AI輸入提(ti)示,讓終(zhong)端可以提(ti)供(gong)更個性(xing)化的服務,而(er)不需要通過(guo)任何(he)網絡連接。
但同(tong)時人(ren)們可能擔心(xin),所有(you)(you)的(de)(de)個(ge)(ge)性化隱私數(shu)(shu)據(ju)當作(zuo)生(sheng)成(cheng)式AI的(de)(de)輸入,會(hui)不會(hui)有(you)(you)隱私安(an)全(quan)泄露的(de)(de)問(wen)題(ti)?針對這方(fang)面的(de)(de)擔心(xin),我們認為一個(ge)(ge)比較(jiao)好的(de)(de)解決方(fang)案(an),是讓(rang)整個(ge)(ge)模型完全(quan)閉環(huan)跑在(zai)終端側(ce),讓(rang)所有(you)(you)感知信(xin)息、隱私數(shu)(shu)據(ju)全(quan)部(bu)保(bao)留(liu)在(zai)終端側(ce),沒(mei)有(you)(you)任何數(shu)(shu)據(ju)可以上云(yun)。
三、高通AI引擎成硬件殺手锏,多項黑科技實現能效翻倍
高(gao)通之所以能夠(gou)支撐這些超過10億參(can)數,甚(shen)至未來超過100億參(can)數量的大模(mo)型在終端部署,所依(yi)賴的是高(gao)通強大的高(gao)通AI引(yin)擎和統一的技術路(lu)線(xian)圖。
下面(mian),我會從硬(ying)件(jian)和軟(ruan)件(jian)兩個角度(du)分別跟大家(jia)展開介紹(shao)。
第一(yi)就(jiu)是(shi)我們(men)的硬件高(gao)通AI引擎。可(ke)以(yi)看到(dao),高(gao)通AI引擎既(ji)有(you)通用的CPU、GPU硬件加(jia)(jia)速(su)單(dan)元(yuan)(yuan),還有(you)一(yi)顆(ke)專門為大(da)算力AI工作負載而(er)設計的高(gao)性能AI硬件加(jia)(jia)速(su)單(dan)元(yuan)(yuan)Hexagon處(chu)理器。
在此(ci)之上我(wo)們(men)還有另外一塊(kuai)單獨的(de)超低功耗處理器,高(gao)通(tong)(tong)傳感器中(zhong)樞,適(shi)用于(yu)一些始(shi)終開啟功能(neng),比如(ru)相機、屏幕(mu)和語音喚醒等(deng)等(deng)。這些模塊(kuai)共同構成了一整套(tao)異構計算系統(tong),同時結合我(wo)們(men)的(de)異構軟件系統(tong),能(neng)夠充分釋放高(gao)通(tong)(tong)AI引擎的(de)AI加速能(neng)力。
高通的AI硬件優勢(shi)在哪里?我覺得第一是性(xing)能(neng)(neng),我們不僅(jin)能(neng)(neng)提供領(ling)先(xian)的峰值(zhi)性(xing)能(neng)(neng),也能(neng)(neng)提供非(fei)常(chang)好的能(neng)(neng)效。我們在既定功耗下的性(xing)能(neng)(neng)領(ling)先(xian)于手機(ji)和PC領(ling)域的競(jing)爭對手。
第二點,前面有嘉(jia)賓提到,目前大語言(yan)模(mo)型70%都是(shi)基于Transformer,高通在(zai)硬(ying)件上(shang),也(ye)針(zhen)對Transformer網絡架構做了專門的硬(ying)件優化,重塑(su)了神經網絡架構,減(jian)少算(suan)子數量,引入了先進(jin)的量化、微切片推理(li)等(deng)技術。
微切(qie)片(pian)(pian)推理技術可以(yi)把一個比(bi)較(jiao)(jiao)大的模型切(qie)成更細粒度(du)的切(qie)片(pian)(pian),在更細粒度(du)的層面上對整個算子(zi)融合,包(bao)括邊(bian)緣(yuan)計算等做加速(su),充分利(li)用較(jiao)(jiao)大的配套內存(cun),提高配套內存(cun)的使用率,盡量去降低跟DDR的交互。
因為大家知(zhi)道,其實在(zai)數(shu)據讀取(qu)上(shang),讀取(qu)配套內存(cun)跟讀取(qu)DDR,性能大概(gai)有1-2個數(shu)量級(ji)的(de)(de)差異。除此(ci)之外,我們還專門針對Transformer里面(mian)的(de)(de)激(ji)活函數(shu)和分組卷積(ji)做了(le)專門的(de)(de)加(jia)速。
大家(jia)都知道神(shen)經網絡里面有(you)不同的數(shu)據類型,這顆Hexagon處理器(qi)(qi)上有(you)標量、向(xiang)量和(he)張量加速器(qi)(qi)。尤其(qi)是張量加速器(qi)(qi),跟(gen)上一代產品相比,算(suan)力翻倍。
另(ling)外是量(liang)化(hua)技術(shu),功耗對(dui)于終(zhong)端設備(bei)是一個(ge)非常關(guan)鍵的(de)問題,所以(yi)我(wo)們(men)在做模(mo)型推(tui)理的(de)時候,對(dui)模(mo)型做量(liang)化(hua)是一個(ge)非常好(hao)的(de)手(shou)段(duan)。高通此前就提(ti)供(gong)了對(dui)INT8和INT16的(de)支持,甚至我(wo)們(men)支持它們(men)之間的(de)混(hun)合(he)量(liang)化(hua)。有些神經網絡(luo)架構對(dui)首尾(wei)層精(jing)度(du)(du)要求(qiu)比較(jiao)高,但在中間層對(dui)精(jing)度(du)(du)要求(qiu)沒那(nei)(nei)么(me)高,所以(yi)我(wo)們(men)提(ti)出的(de)混(hun)合(he)量(liang)化(hua),可以(yi)針對(dui)某些層用INT16去做量(liang)化(hua),對(dui)于精(jing)度(du)(du)要求(qiu)不(bu)那(nei)(nei)么(me)高的(de),用INT8去做量(liang)化(hua)。
這樣既可以(yi)(yi)享受到INT8量化(hua)帶來(lai)的(de)性能優(you)(you)勢,也可以(yi)(yi)享受到INT16帶來(lai)的(de)精(jing)(jing)度優(you)(you)勢。在(zai)去年(nian)年(nian)底的(de)驍(xiao)龍(long)峰會上,第二代驍(xiao)龍(long)8宣(xuan)布(bu)首次支持INT4精(jing)(jing)度量化(hua)。INT4量化(hua)跟INT8量化(hua)相比,可以(yi)(yi)帶來(lai)60%的(de)功耗(hao)節省(sheng)或者90%的(de)性能提升。
四、一次開發多端部署,打通軟件底層加速生態擴展
前(qian)面講(jiang)的(de)大多數跟硬(ying)件(jian)相關,在(zai)軟件(jian)方面我們(men)推出了(le)高通AI軟件(jian)棧(Qualcomm AI Stack),這(zhe)是一個跨(kua)平臺、跨(kua)終(zhong)端(duan)、跨(kua)OS的(de)統一軟件(jian)棧,它貫徹了(le)我們(men)的(de)每一條產品線(xian),包括手機(ji),汽車(che)、PC,還有各種IoT設備、機(ji)器(qi)人(ren)等。
這張圖就(jiu)是我們(men)高(gao)通AI軟件棧的(de)整(zheng)體框(kuang)架(jia)。從上往下(xia)看,最上面是我們(men)的(de)框(kuang)架(jia)層,我們(men)支持(chi)目(mu)前主(zhu)流的(de)框(kuang)架(jia),包括TensorFlow、PyTorch、ONNX、Keras等(deng)等(deng)。
再(zai)往下(xia)是Runtimes層,高(gao)(gao)通有自己的(de)(de)Runtimes,叫高(gao)(gao)通神經網絡處理SDK,我(wo)們的(de)(de)合作伙伴(ban)或(huo)者開發者可(ke)以直接調(diao)用(yong)我(wo)們的(de)(de)Runtimes。當然,我(wo)們也支(zhi)持開源的(de)(de)Runtimes,包括像ONNX、Direct ML、TF Lite等等。我(wo)們還有更(geng)底(di)層的(de)(de)模塊去支(zhi)持第(di)三方(fang)的(de)(de)Runtimes,叫高(gao)(gao)通AI引(yin)擎(qing)Direct。第(di)三方(fang)Runtimes可(ke)以調(diao)用(yong)高(gao)(gao)通AI引(yin)擎(qing)Direct的(de)(de)接口,充分利用(yong)高(gao)(gao)通AI引(yin)擎(qing)的(de)(de)AI硬件加(jia)速單(dan)元來做推理加(jia)速。
再(zai)往下就是開發者(zhe)庫和(he)服務層,我(wo)們(men)(men)提供(gong)豐(feng)富的(de)加速庫給(gei)到開發者(zhe)去做調(diao)用(yong)。同(tong)時(shi),我(wo)們(men)(men)還(huan)提供(gong)編譯器,讓開發者(zhe)在做模型轉(zhuan)化時(shi)對高通底層的(de)硬件更友好。同(tong)時(shi)我(wo)們(men)(men)的(de)編譯器也可以支持用(yong)戶通過我(wo)們(men)(men)給(gei)定(ding)的(de)引導去寫自己定(ding)義的(de)算子。
除了編譯器之外,我們還提供比較(jiao)豐富(fu)強大(da)的(de)(de)分析器和調試器。開(kai)發者在(zai)做推理部署的(de)(de)時候會(hui)發現(xian),很多時候推理性能或(huo)(huo)者精(jing)度(du)不(bu)如人意,我們的(de)(de)工具可以告訴開(kai)發者整個(ge)推理性能在(zai)哪(na)里(li);網(wang)絡結(jie)構、推理結(jie)構對高通(tong)硬件是否友好(hao)(hao);或(huo)(huo)者是哪(na)一層引起(qi)的(de)(de)精(jing)度(du)問題(ti),是因為量(liang)化(hua)位寬不(bu)夠,還是本身的(de)(de)算子在(zai)高通(tong)HTP實現(xian)的(de)(de)效(xiao)率不(bu)夠好(hao)(hao)等等。
再往(wang)下就是我們(men)的(de)(de)(de)(de)(de)系(xi)統(tong)層(ceng)。系(xi)統(tong)層(ceng)提(ti)供了豐富的(de)(de)(de)(de)(de)系(xi)統(tong)接口(kou),也提(ti)供了各種各樣底層(ceng)的(de)(de)(de)(de)(de)Kernel驅動器(qi)。當然,我們(men)還(huan)提(ti)供了一個仿(fang)真(zhen)支持。如果開發者(zhe)沒有(you)拿到(dao)高通的(de)(de)(de)(de)(de)平臺(tai)或者(zhe)開發板,但又(you)想知道整(zheng)體(ti)算法(fa)在驍龍平臺(tai)上(shang)部署的(de)(de)(de)(de)(de)表現情況或者(zhe)精度怎么樣,可以用我們(men)的(de)(de)(de)(de)(de)仿(fang)真(zhen)支持,我們(men)有(you)一個模擬器(qi)會給到(dao)大家(jia)。
再往(wang)下就是OS層(ceng),高通的(de)產品(pin)線(xian)非常豐(feng)富(fu),OS層(ceng)支持安卓(zhuo)手(shou)機、平板(ban)、PC的(de)Windows系統,還有(you)(you)各種IoT設(she)備采用的(de)Linux或者(zhe)是CentOS等(deng)等(deng),還有(you)(you)我們(men)的(de)QNX。我們(men)把所有(you)(you)的(de)OS都(dou)集成在高通AI軟(ruan)件棧(zhan)里面,能夠(gou)支持高通所有(you)(you)的(de)產品(pin)形態(tai)。
除(chu)此之(zhi)外,我們還有(you)高(gao)通AI模型增效工(gong)具包(AIMET),AIMET最(zui)主要有(you)兩個(ge)功(gong)能,一(yi)個(ge)是幫助大家做量化,我們支(zhi)持PTQ(量化感知訓練)和QAT(訓練后量化);另外是模型壓(ya)縮。
總結(jie)一(yi)下,高(gao)(gao)通AI軟件棧(zhan)是一(yi)個跨平臺、跨終端、跨OS的統一(yi)軟件棧(zhan)。高(gao)(gao)通AI軟件棧(zhan)旨(zhi)在(zai)幫助合作(zuo)伙(huo)伴及(ji)開發者在(zai)驍(xiao)龍平臺上更高(gao)(gao)效地完成軟件部(bu)署,提高(gao)(gao)它的擴展(zhan)性,也就是所謂(wei)的一(yi)次開發、多(duo)次部(bu)署。以上就是我今天演講的全部(bu)內容,謝謝大家!
以上是萬衛星演講內容的完整整理。