筆記本就能運行的ChatGPT平替來了,附完整版技術報告

編輯:陳萍、蛋醬

GPT4All 是基於大量乾淨的助手資料(包括程式碼、故事和對話)訓練而成的聊天機器人,資料包括~800k 條 GPT-3.5-Turbo 生成資料,基於 LLaMa 完成,M1 Mac、Windows 等環境都能運行。或許就像它的名字所暗示的那樣,人人都能用上個人 GPT 的時代已經來了。

自從 OpenAI 發佈 ChatGPT 後,最近幾個月聊天機器人熱度不減。

雖然 ChatGPT 功能強大,但 OpenAI 幾乎不可能將其開源。不少人都在做開源方面的努力,比如前段時間 Meta 開源的 LLaMA。其是一系列模型的總稱,參數量從 70 億到 650 億不等,其中,130 億參數的 LLaMA 模型「在大多數基準上」可以勝過參數量達 1750 億的 GPT-3。

LLaMA 的開源可是利好眾多研究者,比如史丹佛在 LLaMA 的基礎上加入指令微調(instruct tuning),訓練了一個名為 Alpaca(羊駝)的 70 億參數新模型(基於 LLaMA 7B)。結果顯示,只有 7B 參數的輕量級模型 Alpaca 性能可媲美 GPT-3.5 這樣的超大規模語言模型。

又比如,我們接下來要介紹的這個模型 GPT4All,也是一種基於 LLaMA 的新型 7B 語言模型。項目上線兩天,Star 量已經突破 7.8k。

項目地址:https://github.com/nomic-ai/gpt4all

簡單來講,GPT4All 在 GPT-3.5-Turbo 的 800k 條資料上進行訓練,包括文字問題、故事描述、多輪對話和程式碼。

根據項目顯示,M1 Mac、Windows 等環境都能運行。

我們先來看看效果。如下圖所示,使用者可以和 GPT4All 進行無障礙交流,比如詢問該模型:「我可以在筆記本上運行大型語言模型嗎?」GPT4All 回答是:「是的,你可以使用筆記本來訓練和測試神經網路或其他自然語言(如英語或中文)的機器學習模型。重要的是,你需要足夠可用的記憶體 (RAM) 來適應這些模型的大小……」

接下來,如果你不清楚到底需要多少記憶體,你還可以繼續詢問 GPT4All,然後它給出回答。從結果來看,GPT4All 進行多輪對話的能力還是很強的。

在 M1 Mac 上的實時取樣

有人將這項研究稱為「改變遊戲規則,有了 GPT4All 的加持,現在在 MacBook 上本地就能運行 GPT。」

與 GPT-4 相似的是,GPT4All 也提供了一份「技術報告」。

技術報告地址:https://s3.amazonaws.com/static.nomic.ai/gpt4all/2023_GPT4All_Technical_Report.pdf

這份初步的技術報告簡要描述了 GPT4All 的搭建細節。研究者公開了收集的資料、資料整理程序、訓練程式碼和最終的模型權重,以促進開放研究和可重複性,此外還發布了模型的量化 4 位(quantized 4-bit)版本,這意味著幾乎任何人都可以在 CPU 上運行該模型。

接下來,讓我們看看這份報告中寫了什麼。

GPT4All 技術報告

1、資料收集和整理

在 2023 年 3 月 20 日至 2023 年 3 月 26 日期間,研究者使用 GPT-3.5-Turbo OpenAI API 收集了大約 100 萬對 prompt 回答。

首先,研究者通過利用三個公開可用的資料集來收集不同的問題 /prompt 樣本:

  • LAION OIG 的統一 chip2 子集

  • Stackoverflow Questions 的一個隨機子樣本集 Coding questions

  • Bigscience/P3 子樣本集進行指令調優

參考史丹佛大學 Alpaca 項目 (Taori et al., 2023),研究者對資料準備和整理給予了大量關注。在收集了最初的 prompt 生成對的資料集後,他們將資料載入到 Atlas 進行整理和清理,刪除了所有 GPT-3.5-Turbo 未能響應 prompt 併產生畸形輸出的樣本。這使得樣本總數減少到 806199 個高質量的 prompt – 生成對。接下來,研究者從最終的訓練資料集中刪除了整個 Bigscience/P3 子集,因為它的輸出多樣性非常低。P3 包含許多同質化的 prompt,這些 prompt 從 GPT-3.5-Turbo 中產生了簡短而同質化的反應。

這種排除法產生了一個包含 437,605 個 prompt – 生成對的最終子集,如圖 2 所示。

模型訓練

模型訓練

研究者在 LLaMA 7B (Touvron et al., 2023) 的一個實例中將幾個模型進行微調。他們最初的公開版本相關的模型是用 LoRA (Hu et al., 2021) 在 437605 個後處理的例子上以 4 個 epoch 訓練的。詳細的模型超參數和訓練程式碼可以在相關的資源庫和模型訓練日誌中找到。

可重複性

研究者發佈了所有的資料(包括未使用的 P3 generations)、訓練程式碼和模型權重,供社區進行復現。感興趣的研究者可以在 Git 儲存庫中找到最新的資料、訓練細節和檢查點。

成本

研究者大概用了四天的時間製作這些模型,GPU 成本為 800 美元(從 Lambda 實驗室和 Paperspace 租的,其中包括幾次失敗的訓練),此外還有 500 美元的 OpenAI API 費用。

最終發佈的模型 gpt4all-lora 可以在 Lambda 實驗室的 DGX A100 8x 80GB 上用大約 8 小時訓練完成,總成本為 100 美元。

這個模型可以在普通筆記本上運行,真就像網友說的「除了電費之外,沒有任何成本。」

評估

評估

研究者使用 SelfInstruct 論文 (Wang et al., 2022) 中的人類評估資料對該模型進行了初步評估。報告還對比了該模型與已知最好的公開的 alpaca-lora 模型(該模型由 huggingface 的使用者 chainyo 提供)的 ground truth 困惑度。他們發現,所有的模型在少數任務上都有非常大的困惑度,並且報告的困惑度最大為 100。與 Alpaca 相比,在這個收集的資料集上進行微調的模型在 Self-Instruct 評估中表現出了更低的困惑度。研究者表示,這個評估不是詳盡的,仍存在進一步的評估空間 —— 他們歡迎讀者在本地 CPU 上運行該模型(檔案見 Github),並對它的能力有一個定性的認識。

最後,需要注意的是,作者公佈了資料和訓練細節,希望它能加速開放的 LLM 研究,特別是在對齊和可解釋性領域。GPT4All 模型的權重和資料僅用於研究目的,並獲得許可,禁止任何商業使用。GPT4All 是基於 LLaMA 的,LLaMA 具有非商業許可。助理資料是從 OpenAI 的 GPT-3.5-Turbo 收集的,其使用條款禁止開發與 OpenAI 進行商業競爭的模型。

相關文章

萬字長文全面了解 GPT-4

萬字長文全面了解 GPT-4

今天凌晨1點,openai發佈了全網期待已久的GPT-4。 GPT-4的看點都有哪些呢? 邏輯推理,強到可以代替你考律師啦 角色扮演,cos...