還在為玩不了ChatGPT苦惱?這十幾個開源平替也能體驗智能對話
距離 ChatGPT 的最初發(fā)布,過去差不多四個月的時間了。在這期間,ChatGPT 的驚艷表現(xiàn),讓人直呼 AIGC 是不是要提前實現(xiàn)了。
不過眾所周知的一個秘密是,ChatGPT 不大可能開源,加上巨大的算力投入以及海量的訓練數(shù)據(jù)等,都為研究界復制其實現(xiàn)過程設下重重關卡。
面對 ChatGPT 的來勢洶洶,開源平替是一個不錯的選擇,它們在實現(xiàn)相似功能的同時,還能讓你通過替代品了解 ChatGPT 的運行機理。
隨著技術的進步,現(xiàn)在已經(jīng)出現(xiàn)了許多其他類似于 ChatGPT 的新 AI 模型。本文我們將為大家盤點一下 ChatGPT 的開源平替項目。內容將分為兩部分,一部分為類 ChatGPT 開源項目匯總,另一部分是對該項目匯總的補充。
項目匯總
項目作者 nichtdax 整理了 9 個開源的 ChatGPT 平替項目。接下來會一一介紹。
項目地址:https://github.com/nichtdax/awesome-totally-open-chatgpt
PaLM-rlhf-pytorch?
第一個項目是「PaLM-rlhf-pytorch」,項目作者為 Phil Wang。該項目是在 PaLM 架構之上實現(xiàn) RLHF(人類反饋的強化學習),它基本上是使用 PaLM 的 ChatGPT。
該項目已在 GitHub 上獲得了 5.8k 的 Stars。
項目地址:https://github.com/lucidrains/PaLM-rlhf-pytorch
下圖為訓練流程。
OpenChatKit
第二個項目是「OpenChatKit」,它提供了一個強大的的開源基礎,為各種應用程序創(chuàng)建專用和通用的聊天機器人。該 kit 包含了一個經(jīng)過指令調優(yōu)的 200 億參數(shù)語言模型、一個 60 億參數(shù)調節(jié)模型和一個涵蓋自定義存儲庫最新響應的可擴展檢索系統(tǒng)。
OpenChatKit 是在 OIG-43M 訓練數(shù)據(jù)集上訓練的,該數(shù)據(jù)集是 Together、LAION 和 Ontocord.ai 三者的聯(lián)合。項目作者表示,這不僅僅是一個模型的發(fā)布,還是一個開源項目的開始。他們正在發(fā)布一套工具和流程,并通過社區(qū)貢獻持續(xù)改進。
該項目已在 GitHub 上獲得了 5.7k 的 Stars。
項目地址:https://github.com/togethercomputer/OpenChatKit
text-generation-webui
第三個項目是「text-generation-webui」,它是一個用于運行 GPT-J 6B、OPT、GALACTICA、LLaMA 和 Pygmalion 等大語言模型的 gradio web UI。該項目旨在成為文本生成領域的 AUTOMATIC1111/stable-diffusion-webui。
功能包括使用下拉菜單在不同模型之間切換、提供類似于 OpenAI playground 的筆記本模式、用于對話和角色扮演的聊天模式、為 GPT-4chan 生成漂亮的 HTML 輸出等等。
該項目已在 GitHub 上獲得了 3.4k 。
項目地址:https://github.com/oobabooga/text-generation-webui
KoboldAI-Client
第四個項目是「KoboldAI-Client」,它是一個基于瀏覽器的前端,通過多個本地和遠程 AI 模型實現(xiàn) AI 輔助寫作。
KoboldAI-Client 提供了一系列標準的工具,包括內存、作者注釋、世界信息、保存 & 加載、可調節(jié)的 AI 設置、格式化選項以及導入現(xiàn)有文字冒險游戲《AI Dungeon》的能力。你可以開啟 Adventure 模式,也可以玩 AI Dungeon Unleashed 之類的游戲。
該項目已在 GitHub 上獲得了 1.4k。
項目地址:https://github.com/KoboldAI/KoboldAI-Client
Open-Assistant
第五個項目是「Open-Assistant」,它旨在讓每一個人都可以訪問基于聊天的大語言模型。項目作者希望借此在語言創(chuàng)新方面掀起一場革命,就像 stable diffusion 幫助世界以新的方式創(chuàng)造藝術和圖像一樣。
項目作者計劃收集高質量人工生成指令執(zhí)行樣本(指示 + 響應),目標大于 50k。對于收集到的每個指示,他們將采樣多個補全結果。接下來進入基于指示和獎勵模型的 RLHF 訓練階段。
該項目已在 GitHub 上獲得了 19k 的 Stars。
項目地址:https://github.com/LAION-AI/Open-Assistant
stanford_alpaca
第六個項目是「stanford_alpaca」,它旨在建立和共享一個指令遵循的 LLaMA 模型。該 repo 包含了用于微調模型的 52k 數(shù)據(jù)、用于生成數(shù)據(jù)的代碼以及用于微調模型的代碼。
該項目已在 GitHub 上獲得了 9.5k 的 Stars。
項目地址:https://github.com/tatsu-lab/stanford_alpaca
ChatRWKV
第七個項目是「ChatRWKV」,它類似于 ChatGPT,但由 RWKV(100% RNN)模型支持,并且是開源的。項目作者表示,RWKV 是目前唯一能在質量和擴展方面媲美 transformers 的 RNN 模型,同時速度更快、節(jié)省 VRAM。
該項目已在 GitHub 上獲得了 3.5k 的 Stars。
項目地址:https://github.com/BlinkDL/ChatRWKV
ChatGLM-6B
第八個項目是由清華技術成果轉化的公司智譜 AI 開源、支持中英雙語的對話語言模型「ChatGLM-6B」,基于 General Language Model (GLM) 架構,具有 62 億參數(shù)。結合模型量化技術,用戶可以在消費級的顯卡上進行本地部署(INT4 量化級別下最低只需 6GB 顯存)。
ChatGLM-6B 使用了和 ChatGPT 相似的技術,針對中文問答和對話進行優(yōu)化。經(jīng)過約 1T 標識符的中英雙語訓練,輔以監(jiān)督微調、反饋自助、人類反饋強化學習等技術的加持,62 億參數(shù)的 ChatGLM-6B 已經(jīng)能生成相當符合人類偏好的回答。
不過由于 ChatGLM-6B 的規(guī)模較小,目前已知其具有相當多的局限性,如事實性 / 數(shù)學邏輯錯誤、可能生成有害 / 有偏見內容、較弱的上下文能力、自我認知混亂、以及對英文指示生成與中文指示完全矛盾的內容。
該項目已在 GitHub 上獲得了 6k 的 Stars。
項目地址:https://github.com/THUDM/ChatGLM-6B
xmtf
第九個項目是「xmtf」,包含了創(chuàng)建論文《Crosslingual Generalization through Multitask Finetuning》中介紹的 BLOOMZ、mT0 和 xP3 的所有組件。
其中 BLOOMZ 是一個 1760 億參數(shù)且可開放獲取的多語言模型;mT0(這里特指谷歌的 T5X);xP3 是 46 種語言的有監(jiān)督數(shù)據(jù)集,帶有英語和機器翻譯的 prompts。
項目地址:https://github.com/bigscience-workshop/xmtf
除了上述提到的模型,ChatGPT 平替項目還包括基于 Meta 開源的大模型系列 LLaMA(Large Language Model Meta AI)的一些研究,這個系列模型的參數(shù)量從 70 億到 650 億不等。具有 130 億參數(shù)的 LLaMA 模型「在大多數(shù)基準上」可以勝過 GPT-3( 參數(shù)量達 1750 億),而且可以在單塊 V100 GPU 上運行;而最大的 650 億參數(shù)的 LLaMA 模型可以媲美谷歌的 Chinchilla-70B 和 PaLM-540B。
- 論文鏈接:https://research.facebook.com/publications/llama-open-and-efficient-foundation-language-models/
- GitHub 鏈接:https://github.com/facebookresearch/llama
基于此研究,開發(fā)者也提出了幾個開源項目。
llama.cpp 無需 GPU,就能運行 LLaMA
llama.cpp 項目實現(xiàn)了在 MacBook 上運行 LLaMA,還有開發(fā)者成功的在 4GB RAM 的樹莓派上運行了 LLaMA 7B。總結而言,即使開發(fā)者沒有 GPU ,也能運行 LLaMA 模型。
項目地址:https://github.com/ggerganov/llama.cpp
ChatLLaMA?
由于 LLaMA 大模型系列沒有使用 RLHF 方法,因此初創(chuàng)公司 Nebuly AI 開源了 RLHF 版 LLaMA(ChatLLaMA)的訓練方法。它的訓練過程類似 ChatGPT,該項目允許基于預訓練的 LLaMA 模型構建 ChatGPT 形式的服務。與 ChatGPT 相比,LLaMA 架構更小,但訓練過程和單 GPU 推理速度更快,成本更低;該庫還支持所有的 LLaMA 模型架構(7B、13B、33B、65B),因此用戶可以根據(jù)訓練時間和推理性能偏好對模型進行微調。
項目地址:https://github.com/nebuly-ai/nebullvm/tree/main/apps/accelerate/chatllama
期待后續(xù)更多開源項目加入進來。