阿里140億大模型開源!10項(xiàng)任務(wù)超340億Llama 2,Demo在線可玩
阿里又開源大模型了!
這次是純粹的大語言模型,相比上一次的70億,新模型的參數(shù)量來到了140億。
它名叫Qwen-14B,一上來就在一系列任務(wù)榜單中全部取得了第一,直接超過了Meta的340億參數(shù)Llama 2版本。
Qwen-14B的訓(xùn)練數(shù)據(jù)達(dá)到3萬億tokens,不僅中英文都來得,序列長度也達(dá)到了8192。
用法也是老樣子,完全開源,而且免費(fèi)可用,目前在魔搭社區(qū)上已經(jīng)可以試玩到Demo版本。
圖片
看起來,阿里的Qwen頗有點(diǎn)對標(biāo)Meta的Llama,要搞出一整套“國內(nèi)大模型開源全系列”那味了。
那么,Qwen-14B的效果究竟怎么樣呢?我們這就試一試。
10個榜單超越340億Llama 2
先來看看Qwen-14B的整體表現(xiàn)如何。
雖然Llama 2取得了一系列不錯的“戰(zhàn)績”,不過至少官方提供的版本中,還不太具備說中文的能力。
圖片
因此,我們先來看看Qwen-14B的中文能力如何,然后再試試它在其他學(xué)科上的水平。
老樣子,弱智benchmark送上:
圖片
看起來Qwen-14B也能準(zhǔn)確應(yīng)對。稍微難點(diǎn)的中文理解題:
圖片
感覺還不錯,順便糾正了我的語?。ㄊ謩庸奉^)。
那么,數(shù)學(xué)題表現(xiàn)如何呢?普通的雞兔同籠試試:
圖片
表現(xiàn)也中規(guī)中矩。再試試稍微難一點(diǎn)的邏輯推理題,之前有人測試發(fā)現(xiàn),60個大模型全部做錯了。
問題如下:
Sally (a girl) has 3 brothers. Each brother has 2 sisters. How many sisters does Sally have?
莎莉(一個女孩)有3個兄弟。每個兄弟有2個姐妹。所以莎莉有幾個姐妹?
PS:這道題的正確答案是1。
在做錯的一系列大模型中,包括GPT-4和Claude 2,也包括Llama 2:
圖片
很遺憾,這里Qwen-14B也沒做出來。
圖片
不過它的代碼能力還可以,例如讓寫一下貪吃蛇的代碼:
圖片
它很快給出了一個完整版的貪吃蛇代碼出來,帶注釋那種:
import random
# 初始化蛇的初始位置和長度
snake = [(0, 0)]
snake_length = 1
# 初始化食物的位置
food = (random.randint(0, 10), random.randint(0, 10))
# 初始化游戲的分?jǐn)?shù)
score = 0
# 初始化游戲的結(jié)束標(biāo)志
game_over = False
# 游戲主循環(huán)
while not game_over:
# 打印游戲界面
for i in range(11):for j in range(11):if (i, j) in snake:print("O", end="")elif (i, j) == food:print("F", end="")else:print(".", end="")print()
# 獲取用戶的輸入
direction = input("Enter direction (up, down, left, right): ")
# 更新蛇的位置
if direction == "up":
snake.insert(0, (snake[0][0], snake[0][1] - 1))elif direction == "down":
snake.insert(0, (snake[0][0], snake[0][1] + 1))elif direction == "left":
snake.insert(0, (snake[0][0] - 1, snake[0][1]))elif direction == "right":
snake.insert(0, (snake[0][0] + 1, snake[0][1]))
# 更新蛇的長度
snake_length += 1
# 如果蛇吃到了食物,更新食物的位置和分?jǐn)?shù)
if snake[0] == food:
food = (random.randint(0, 10), random.randint(0, 10))
score += 1
# 如果蛇撞到了墻或者自己的身體,游戲結(jié)束
if snake[0][0] < 0 or snake[0][0] >= 11 or snake[0][1] < 0 or snake[0][1] >= 11 or snake[0] in snake[1:]:
game_over = True
# 打印游戲的分?jǐn)?shù)
print("Score: ", score)
# 打印游戲結(jié)束的消息
print("Game over!")
試了一下,可以直接運(yùn)行玩耍:
圖片
據(jù)了解,Qwen-14B和Qwen-7B一樣,所具備的也不僅僅是對話功能。
除了上述能力,Qwen-14B也學(xué)會了自己調(diào)用工具。
例如,基于Code Interpreter(代碼解釋器)工具執(zhí)行Python代碼,直接做數(shù)學(xué)計算、數(shù)據(jù)分析和數(shù)據(jù)圖表繪制。
圖片
團(tuán)隊也升級了Qwen-14B對接外部系統(tǒng)的技巧,不僅幾步就能調(diào)用復(fù)雜插件,還能將它作為基座模型開發(fā)Agent等AI系統(tǒng)、完成復(fù)雜任務(wù)。
事實(shí)上,背后的Qwen-14B模型,也是個打榜小能手。
無論是在語言能力測試集上,如大規(guī)模多任務(wù)語言測評榜單MMLU、中文基礎(chǔ)能力評估數(shù)據(jù)集C-Eval中;
還是在數(shù)學(xué)等其他學(xué)科的能力上,如小學(xué)數(shù)學(xué)加減乘除運(yùn)算題GSM8K、數(shù)學(xué)競賽數(shù)據(jù)集MATH等:
圖片
圖片
前后一共10個榜單,都取得了TOP 1的名次。
所以,Qwen-14B究竟是怎么做出來的?
訓(xùn)練數(shù)據(jù)超3萬億tokens
技術(shù)細(xì)節(jié),還得從Qwen-14B的架構(gòu)和訓(xùn)練數(shù)據(jù)說起。
作為一個參數(shù)140億的大模型,Qwen-14B的結(jié)構(gòu)細(xì)節(jié)長這樣:
圖片
在整體架構(gòu)上,團(tuán)隊借鑒了一些當(dāng)前開源大模型的“神奇設(shè)計”,包括谷歌的PaLM以及Meta的Llama等。
包括SwiGLU的激活函數(shù)設(shè)計、ROPE的位置編碼等,都有出現(xiàn)在Qwen-14B的結(jié)構(gòu)設(shè)計中。
不僅如此,團(tuán)隊也針對詞表和長序列數(shù)據(jù)建模進(jìn)行了優(yōu)化。詞表大小超過15萬,更節(jié)省token數(shù)。
長序列數(shù)據(jù)建模上,則采取了一些當(dāng)前最有效的方法,包括但不限于Dynamnic NTK、Log-N attention scaling、window attention等,確保模型表現(xiàn)效果更穩(wěn)定。
這也是模型雖然只有140億,但序列長度能達(dá)到8192的原因。
之所以能取得不錯的效果,也與Qwen-14B的訓(xùn)練數(shù)據(jù)分不開。
Qwen-14B整體采用了超過3萬億tokens數(shù)據(jù)訓(xùn)練。
這里面不僅僅包含語數(shù)英等基礎(chǔ)學(xué)科,還包括了理化生政史地等多個其他學(xué)科的知識、以及代碼知識,直接接受了9年義務(wù)教育(手動狗頭)。
除此之外,團(tuán)隊還進(jìn)一步做了不少數(shù)據(jù)處理工作,包括大規(guī)模數(shù)據(jù)去重、垃圾文本過濾、以及提升高質(zhì)量數(shù)據(jù)比例等。
同時,為了讓模型更好地學(xué)會調(diào)用工具、增強(qiáng)記憶能力,團(tuán)隊也在微調(diào)樣本上進(jìn)行了優(yōu)化,建立更全面的自動評估基準(zhǔn)來發(fā)現(xiàn)Qwen-14B表現(xiàn)不穩(wěn)定的情況,并針對性地使用Self-Instruct方法擴(kuò)充了高質(zhì)量的微調(diào)樣本。
事實(shí)上,這已經(jīng)是通義千問系列的第三波開源了。
最早在8月初,阿里云就開源了中英文通用模型Qwen-7B和對話模型Qwen-7B-Chat。
圖片
Qwen-7B支持8K上下文長度,基于超過2.2萬億tokens包含文本、代碼等類型的數(shù)據(jù)集訓(xùn)練,也支持插件調(diào)用和開發(fā)Agent等AI系統(tǒng)。
項(xiàng)目一開源,就沖上GitHub熱榜,目前已經(jīng)收獲4k星熱度。
圖片
(值得一提的是,這次阿里云除了發(fā)布Qwen-14B以外,也順帶升級了一波Qwen-7B)
隨后在8月底,阿里云再次推出視覺語言大模型Qwen-VL。
Qwen-VL基于Qwen-7B為基座語言模型研發(fā),支持圖像、文本、檢測框等多種輸入,并且在文本之外,也支持檢測框輸出。
圖片
從demo展示中來看,Qwen-VL身兼多種能力,中英文對話、代碼圖像理解都來得:
圖片
對于阿里的一系列Qwen開源大模型感興趣的,可以去項(xiàng)目主頁試玩一波了~
試玩地址:
https://modelscope.cn/studios/qwen/Qwen-14B-Chat-Demo/summary
參考鏈接:
[1]https://github.com/QwenLM/Qwen-7B
[2]https://github.com/QwenLM/Qwen-VL
[3]https://benchmarks.llmonitor.com/sally