自從 OpenAI 發(fā)布 ChatGPT 后,最近幾個(gè)月聊天機(jī)器人熱度不減。
雖然 ChatGPT 功能強(qiáng)大,但 OpenAI 幾乎不可能將其開源。不少人都在做開源方面的努力,比如前段時(shí)間 Meta 開源的 LLaMA。其是一系列模型的總稱,參數(shù)量從 70 億到 650 億不等,其中,130 億參數(shù)的 LLaMA 模型「在大多數(shù)基準(zhǔn)上」可以勝過參數(shù)量達(dá) 1750 億的 GPT-3。
LLaMA 的開源可是利好眾多研究者,比如斯坦福在 LLaMA 的基礎(chǔ)上加入指令微調(diào)(instruct tuning),訓(xùn)練了一個(gè)名為 Alpaca(羊駝)的 70 億參數(shù)新模型(基于 LLaMA 7B)。結(jié)果顯示,只有 7B 參數(shù)的輕量級(jí)模型 Alpaca 性能可媲美 GPT-3.5 這樣的超大規(guī)模語言模型。
又比如,我們接下來要介紹的這個(gè)模型 GPT4All,也是一種基于 LLaMA 的新型 7B 語言模型。項(xiàng)目上線兩天,Star 量已經(jīng)突破 7.8k。
項(xiàng)目地址:https://Github.com/nomic-ai/gpt4all
簡(jiǎn)單來講,GPT4All 在 GPT-3.5-Turbo 的 800k 條數(shù)據(jù)上進(jìn)行訓(xùn)練,包括文字問題、故事描述、多輪對(duì)話和代碼。
根據(jù)項(xiàng)目顯示,M1 mac、windows 等環(huán)境都能運(yùn)行。
我們先來看看效果。如下圖所示,用戶可以和 GPT4All 進(jìn)行無障礙交流,比如詢問該模型:「我可以在筆記本上運(yùn)行大型語言模型嗎?」GPT4All 回答是:「是的,你可以使用筆記本來訓(xùn)練和測(cè)試神經(jīng)網(wǎng)絡(luò)或其他自然語言(如英語或中文)的機(jī)器學(xué)習(xí)模型。重要的是,你需要足夠可用的內(nèi)存 (RAM) 來適應(yīng)這些模型的大小……」
接下來,如果你不清楚到底需要多少內(nèi)存,你還可以繼續(xù)詢問 GPT4All,然后它給出回答。從結(jié)果來看,GPT4All 進(jìn)行多輪對(duì)話的能力還是很強(qiáng)的。
在 M1 Mac 上的實(shí)時(shí)采樣
有人將這項(xiàng)研究稱為「改變游戲規(guī)則,有了 GPT4All 的加持,現(xiàn)在在 MacBook 上本地就能運(yùn)行 GPT。」
與 GPT-4 相似的是,GPT4All 也提供了一份「技術(shù)報(bào)告」。
技術(shù)報(bào)告地址:https://s3.amazonaws.com/static.nomic.ai/gpt4all/2023_GPT4All_Technical_Report.pdf
這份初步的技術(shù)報(bào)告簡(jiǎn)要描述了 GPT4All 的搭建細(xì)節(jié)。研究者公開了收集的數(shù)據(jù)、數(shù)據(jù)整理程序、訓(xùn)練代碼和最終的模型權(quán)重,以促進(jìn)開放研究和可重復(fù)性,此外還發(fā)布了模型的量化 4 位(quantized 4-bit)版本,這意味著幾乎任何人都可以在 CPU 上運(yùn)行該模型。
接下來,讓我們看看這份報(bào)告中寫了什么。
GPT4All 技術(shù)報(bào)告
1、數(shù)據(jù)收集和整理
在 2023 年 3 月 20 日至 2023 年 3 月 26 日期間,研究者使用 GPT-3.5-Turbo OpenAI API 收集了大約 100 萬對(duì) prompt 回答。
首先,研究者通過利用三個(gè)公開可用的數(shù)據(jù)集來收集不同的問題 /prompt 樣本:
- LAION OIG 的統(tǒng)一 chip2 子集
- Stackoverflow Questions 的一個(gè)隨機(jī)子樣本集 Coding questions
- Bigscience/P3 子樣本集進(jìn)行指令調(diào)優(yōu)
參考斯坦福大學(xué) Alpaca 項(xiàng)目 (Taori et al., 2023),研究者對(duì)數(shù)據(jù)準(zhǔn)備和整理給予了大量關(guān)注。在收集了最初的 prompt 生成對(duì)的數(shù)據(jù)集后,他們將數(shù)據(jù)加載到 Atlas 進(jìn)行整理和清理,刪除了所有 GPT-3.5-Turbo 未能響應(yīng) prompt 并產(chǎn)生畸形輸出的樣本。這使得樣本總數(shù)減少到 806199 個(gè)高質(zhì)量的 prompt - 生成對(duì)。接下來,研究者從最終的訓(xùn)練數(shù)據(jù)集中刪除了整個(gè) Bigscience/P3 子集,因?yàn)樗妮敵龆鄻有苑浅5汀3 包含許多同質(zhì)化的 prompt,這些 prompt 從 GPT-3.5-Turbo 中產(chǎn)生了簡(jiǎn)短而同質(zhì)化的反應(yīng)。
這種排除法產(chǎn)生了一個(gè)包含 437,605 個(gè) prompt - 生成對(duì)的最終子集,如圖 2 所示。
模型訓(xùn)練
研究者在 LLaMA 7B (Touvron et al., 2023) 的一個(gè)實(shí)例中將幾個(gè)模型進(jìn)行微調(diào)。他們最初的公開版本相關(guān)的模型是用 LoRA (Hu et al., 2021) 在 437605 個(gè)后處理的例子上以 4 個(gè) epoch 訓(xùn)練的。詳細(xì)的模型超參數(shù)和訓(xùn)練代碼可以在相關(guān)的資源庫和模型訓(xùn)練日志中找到。
可重復(fù)性
研究者發(fā)布了所有的數(shù)據(jù)(包括未使用的 P3 generations)、訓(xùn)練代碼和模型權(quán)重,供社區(qū)進(jìn)行復(fù)現(xiàn)。感興趣的研究者可以在 Git 存儲(chǔ)庫中找到最新的數(shù)據(jù)、訓(xùn)練細(xì)節(jié)和檢查點(diǎn)。
成本
研究者大概用了四天的時(shí)間制作這些模型,GPU 成本為 800 美元(從 Lambda 實(shí)驗(yàn)室和 Paperspace 租的,其中包括幾次失敗的訓(xùn)練),此外還有 500 美元的 OpenAI API 費(fèi)用。
最終發(fā)布的模型 gpt4all-lora 可以在 Lambda 實(shí)驗(yàn)室的 DGX A100 8x 80GB 上用大約 8 小時(shí)訓(xùn)練完成,總成本為 100 美元。
這個(gè)模型可以在普通筆記本上運(yùn)行,真就像網(wǎng)友說的「除了電費(fèi)之外,沒有任何成本。」
評(píng)估
研究者使用 SelfInstruct 論文 (Wang et al., 2022) 中的人類評(píng)估數(shù)據(jù)對(duì)該模型進(jìn)行了初步評(píng)估。報(bào)告還對(duì)比了該模型與已知最好的公開的 alpaca-lora 模型(該模型由 huggingface 的用戶 chainyo 提供)的 ground truth 困惑度。他們發(fā)現(xiàn),所有的模型在少數(shù)任務(wù)上都有非常大的困惑度,并且報(bào)告的困惑度最大為 100。與 Alpaca 相比,在這個(gè)收集的數(shù)據(jù)集上進(jìn)行微調(diào)的模型在 Self-Instruct 評(píng)估中表現(xiàn)出了更低的困惑度。研究者表示,這個(gè)評(píng)估不是詳盡的,仍存在進(jìn)一步的評(píng)估空間 —— 他們歡迎讀者在本地 CPU 上運(yùn)行該模型(文件見 Github),并對(duì)它的能力有一個(gè)定性的認(rèn)識(shí)。
最后,需要注意的是,作者公布了數(shù)據(jù)和訓(xùn)練細(xì)節(jié),希望它能加速開放的 LLM 研究,特別是在對(duì)齊和可解釋性領(lǐng)域。GPT4All 模型的權(quán)重和數(shù)據(jù)僅用于研究目的,并獲得許可,禁止任何商業(yè)使用。GPT4All 是基于 LLaMA 的,LLaMA 具有非商業(yè)許可。助理數(shù)據(jù)是從 OpenAI 的 GPT-3.5-Turbo 收集的,其使用條款禁止開發(fā)與 OpenAI 進(jìn)行商業(yè)競(jìng)爭(zhēng)的模型。