本文經(jīng)AI新媒體量子位(公眾號ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請聯(lián)系出處。
GPT-4的使用成本,竟然是GPT-3.5的50倍之多;
(資料圖)
而讓大語言模型同時處理25個請求的時間,僅是處理單個請求的2倍……
這些數(shù)據(jù)聽上去可能有些出乎意料,但都是真實的。
它們出自一篇名為《大語言模型(LLM)開發(fā)者必須知道的數(shù)字》的GitHub文章。
文章發(fā)布之后僅1天,便獲得了1200次星標(biāo)。
文章基于真實的開發(fā)經(jīng)驗,介紹了提示工程、硬件資源、價格等方面的數(shù)據(jù)。
就算沒有成為開發(fā)者的打算,拿來擴充一下知識儲備也是極好的。
都有哪些數(shù)字值得關(guān)注我們不妨先來看一下文章作者制作的速覽圖表:
接下來,我們就來詳細(xì)介紹一下這些數(shù)據(jù)。
提示工程40-90%:在提示詞中加入“Be Concise”節(jié)約的成本
使用LLM是按照回復(fù)的token數(shù)量付費的,因此讓LLM的回答簡明扼要可以節(jié)約成本。
在提示詞中加入“Be Concise”(答案簡明些),可以節(jié)約40-90%的成本。
1.3:每個單詞的平均token數(shù)
LLM是對token進行操作的,token可能包含完整單詞或其中的一部分。
如“eating”是由“eat”和后綴“ing”兩個token組成。
一篇750詞的英文文章中大約含有1000個token。
而對于其他語言,每個詞所含的token數(shù)量可能更多。
價格價格數(shù)據(jù)會存在波動,本節(jié)的價格數(shù)據(jù)主要參考OpenAI,但其他公司數(shù)據(jù)也相似。
約50倍:GPT-4與GPT-3.5花費的比值
效果上,GPT-4的表現(xiàn)明顯好于GPT-3.5,但其成本約為后者的50倍之多。
因此,對于諸如總結(jié)這類GPT-3.5也能出色完成的任務(wù),可以考慮不使用更昂貴的GPT-4。
5倍:GPT-3.5-Turbo生成與使用OpenAI embedding的成本比
諸如“美國的首都是哪里”這類可以通過檢索得到答案的問題,讓LLM生成答案的成本是檢索的5倍。
而如果使用GPT-4,成本差異將高達250倍。
10倍:OpenAI embedding與自建embedding的成本比
這一數(shù)字為大約數(shù)值,實際情況可能隨著embedding的規(guī)模而變化。
6倍:微調(diào)版與基本版OpenAI模型的成本比值
盡管成本較為昂貴,但對基本OpenAI模型的微調(diào)是有意義的。
對基本模型進行微調(diào)的效益明顯高于定制模型。
1倍:自建模型是否進行微調(diào)的成本比
由于參數(shù)量相同,是否進行微調(diào)對自建模型的成本幾乎沒有影響。
訓(xùn)練與微調(diào)約100萬美元:在1.4萬億token上訓(xùn)練130億參數(shù)模型的成本
這一數(shù)字是建立在一切工作都十分順利、沒有發(fā)生崩潰的前提下計算出的。
Meta的大語言模型LLaMA的論文當(dāng)中顯示,用2048塊80GB A100 GPU進行訓(xùn)練LLaMA一共花費了21天。
<0.001:微調(diào)與從頭開始訓(xùn)練的成本比
這一數(shù)據(jù)有一些籠統(tǒng),但微調(diào)的成本幾乎可以忽略不計。
對一個60億參數(shù)模型進行微調(diào)的成本大約是7美元。
即使是最貴的OpenAI模型Davinci,1000個token的微調(diào)成本也只有3美分。
相對于對一部莎士比亞全集進行微調(diào)也只需要40美元。
GPU消耗如果你要自建模型,了解其GPU消耗十分重要。
本節(jié)所列數(shù)據(jù)僅是推理過程所消耗的資源量,訓(xùn)練和微調(diào)過程還需要更多資源。
V100: 16GB, A10G: 24GB, A100: 40/80GB:GPU內(nèi)存大小
GPU內(nèi)存大小決定了LLM的參數(shù)量上限。
24GB的A10G在亞馬遜云服務(wù)中的價格為1.5-2美元每小時。
參數(shù)量的2倍:LLM的典型GPU內(nèi)存需求
例如,7B參數(shù)量的LLM需要消耗14GB的GPU內(nèi)存。
這是因為大多數(shù)時候,每個參數(shù)需要16bit浮點空間。
通常情況下不需要使用超過16bit的精度,8bit則會顯著降低結(jié)果精準(zhǔn)度。
約1GB:嵌入式模型的典型GPU內(nèi)存需求
嵌入式模型消耗的本地GPU資源是很小的。
甚至可以在一塊GPU上同時運行多個嵌入式模型。
超過10倍:批量處理LLM請求帶來的吞吐量改善
在GPU上運行LLM時往往會有較大延遲。
一次請求消耗的時間可能長達5秒,相對于每秒僅能處理0.2個。
但如果同時發(fā)送兩個請求,消耗的時間約為5.2秒。
而將25個請求捆綁發(fā)出的耗時約為10秒,相對于每秒可處理2.5個請求。
約1MB:130億參數(shù)模型輸出1個token所需的GPU內(nèi)存
內(nèi)存消耗量與生成token數(shù)成正比。
512個token(約380個英文單詞)需要消耗512MB的空間。
作者簡介這篇文章的作者來自開源人工智能框架Ray的開發(fā)公司Anyscale。
主要貢獻者是Google前首席工程師Waleed Kadous。
他也曾擔(dān)任Uber CTO辦公室工程戰(zhàn)略負(fù)責(zé)人。
其中一位華人合作者是Google前員工Huaiwei Sun。
他來自江蘇昆山,本科畢業(yè)于上海交通大學(xué)工業(yè)設(shè)計專業(yè)。
期間,他參加了耶魯大學(xué)summer school并取得了滿績。
此后他取得了佐治亞理工學(xué)院碩士學(xué)位,研究方向為人機交互。
此外還有其他作者也參與了這篇文章的工作,未來也可能有更多人加入。
參考鏈接:[1]https://github.com/ray-project/llm-numbers[2]https://www.linkedin.com/in/scottsun94/
標(biāo)簽: