快轉到主要內容

離線版ChatGPT安裝方法!在個人電腦跑AI大型語言模型的開源軟體列表

分類   開源AI應用 大型語言模型 Self-hosting自架
標籤   Large Language Model ChatGPT LLaMA AI Free Software
🗓️ 民國113年 甲辰年
✍ 切換正體/簡體字
目錄

Running free and open source large language models locally on your PC.

這是「開源大型語言模型」與「跑大型語言模型的開源軟體」列表。

本文Ivon解說如何在您的個人電腦跑類似ChatGPT的大型語言模型。免費、開源、無需網路,支援Linux/Windows/macOS系統。

1. 大型語言模型是什麼?為什麼要離線跑?
#

大型語言模型(Large Language Model,簡稱LLM)是一種語言模型,屬於生成式AI的技術,最知名的應用莫過於OpenAI的ChatGPT了。2022年,隨著ChatGPT的出現,讓人們了解到通用大型語言模型的應用潛力。

不過ChatGPT有些缺點,就是它跑在OpenAI的雲端伺服器,必須連上網路才可以使用。且ChatGPT提示詞會受到OpenAI限制,導致不能肆意妄為,有些甚至要催眠一下才會聽話。對話資料由OpenAI掌控,對注重隱私的用戶來說肯定是不合適的。

還有,ChatGPT是封閉原始碼的軟體,沒有人知道背後如何運作,改進方法也只有OpenAI自己知道。


那麼有沒有可能在個人電腦跑大型語言模型呢?

有的,ChatGPT的替代品很多的,但這篇文章Ivon要講的不是其他公司提供的線上AI服務,而是可以真正離線執行的大型語言模型。

相較於ChatGPT跑在雲端,跑在個人電腦的大型語言模型,我們會稱之為本機語言模型(Local LLM)。跑在本機的好處不言而喻,除了保障隱私外,你還可以自由的調整AI,讓它發揮你想要的功能。如果採用的是自由開放原始碼的方案,有能力的人更是能著手改進相關程式。

寫AI聊天程式不難,問題是語言模型何處尋?我們有許多開源的語言模型能用。

2023年,Meta釋出了開源的「LLaMA」模型,提供了對應各種等級硬體的模型,模型後面的「B」代表訓練資料數量,LLaMA的訓練資料量從7B、14B、40B、到65B都有。65B以上的模型是給伺服器使用的,讓他們可以跟ChatGPT競爭。至於最小的7B適合在個人電腦跑,中階以上的CPU就夠跑了,甚至連GPU都不需要。

在LLaMA釋出之後,基於LLaMA訓練的模型如雨後春筍出現,人們餵給LLaMA各式各樣的資料進行微調(finetune),強化LLaMA的聊天能力。比方說:Alpaca、Vicuna、WizardLM、Open Assistant等等。甚至有基於LLaMA的模型支援中文對答了,比如台灣聯發科的Breeze-7B。

LLaMA一出,其他科技公司陸續開源了自家訓練的語言模型,例如2023年的Mistral AI,還有Google於2024年釋出的Gemma。這些模型給了人們更多選擇,讓使用者可以自由下載到個人電腦使用。未來應該還會有更多模型出現吧。

咦?可是這些模型都不是ChatGPT啊?是的,Open AI自從GPT 3以後就沒有開源自家模型了,這篇文章的標題「離線版ChatGPT」是一種方便理解的比喻而已(我承認這個標題有點誤導)。這些開源模型都不是原版的ChatGPT,只是各家廠商釋出的開源模型,功能類似ChatGPT。

能夠在個人電腦跑的主要為訓練資料2B、3B、4B、7B、8B、13B、30B的開源模型,儘管這些模型回答品質差ChatGPT一截,但是在做特定方面任務表現就已經很不錯了,比如寫文案、整理重點、翻譯文字、生成一小段程式碼,所以這些語言模型已經具備實用價值。隨著時代演進,開源模型的性能應會逐步追上ChatGPT。

有了這麼多開源模型,要如何在個人電腦使用呢?大型語言模型只是模型檔案,你需要開發者撰寫軟體方能與模型互動,這篇文章下面會介紹的,就是著名的開源大型語言模型,以及操作大型語言模型的軟體。

2. 著名的開源大型語言模型列表
#

這裡列出著名開源的大型語言模型。在你選好要用的語言模型後,還要安裝跑大型語言模型的軟體才能對話。

大型語言模型日新月異,這個列表我會不定時參照 Reddit r/Localllama的資訊更新推薦的模型,並務求耗費資源最小,不用太高級的硬體也可以跑(以7B的為主)。列表越上面的模型越推薦使用。

那如何下載模型呢?模型檔案多半可以在 HugginFace下載。如果模型為.gguf格式且經過量化,建議選擇Q5_K_M的版本,兼顧資源佔用與性能。

由於開源模型在釋出後多半會有人製作修改版,比如將其調整為*-Instruct*-Coder版本以接受複雜指令,或是改成*-Uncensored去除道德限制。因此我沒辦法將變種全部列出來,只能盡量按照「譜系」去分,並從中挑出評價比較好的模型。

LLaMA系
#

  • LLaMA 3.2 11B:2024年9月釋出,支援128K上下文。另有支援圖像辨識的多模態模型LLaMA 3.2 Vision 11B。
  • Llama-3-Taiwan-8B:2024年7月釋出,研發代號Project TAME,基於LLaMA 3微調的大模型,強化台灣在地繁體中文的理解能力。
  • Llama-3-TAIDE-LX-8B:2024年5月釋出,台灣國科會發表的繁體中文模型,基於LLaMA 3。

Gemma系
#

  • Google Gemma 2 9B
  • Google Gemma 7B

Mistral系
#

  • Pixtral 12B:支援128K上下文,支援圖像辨識的多模態模型。
  • Ministral 8B
  • Breeze 7B:2024年3月釋出,聯發科的繁體中文模型,基於Mistral 7B,支援處理64k token

小模型
#

小型語言模型(Small Language Model,SLM),訓練參數低於7B以下的模型,耗用資源更少,專為行動裝置和硬體較弱的裝置設計。

  • LLaMA 3.2 3B:2024年9月釋出的模型,支援128K上下文。
  • Microsoft Phi 3.5 Mini
  • Google Gemma 2 2B
  • Ministral 3B

其他
#

  • LLaVA 7B:圖像辨識的多模態模型
  • Qwen 2.5 7B
  • LAION Open Assistant Falcon 7B
  • Huggingface BLOOM 7B

3. 跑開源大型語言模型的軟體列表
#

大型語言模型不能直接使用,還需要有人開發程式方能與大型語言模型對話。

這裡列出的軟體都支援Linux、Windows、macOS系統。且都是免費、開放原始碼、無需網路、容易擴充的方案。

Open WebUI
#

以網頁為主的解決方案,簡單又容易擴充的模組化設計,提供API,能夠與許多軟體結合使用。透過Docker即可輕鬆部署到個人伺服器。

在這裡Ollama為後端,會自動依照硬體性能分配CPU與GPU加速運算。Open WebUI是為網頁前端,支援RAG檢索增強生成、整理PDF內容、匯總Google搜尋結果、辨識圖像。

支援串接線上ChatGPT API。

使用方法看 這篇

SillyTavern
#

專為角色扮演設計的語言模型軟體,內建角色卡機制、人物表情、語音合成系統,輕鬆進入AI聊天模式。支援RAG檢索增強生成。

SillyTavern只是個前端界面,需要搭配Ollama或ChatGPT做後端服務才可以跑起來。

使用教學: SillyTavern安裝

AnythingLLM
#

主打開箱即用的桌面應用程式,支援多種語言模型引擎,包含Ollama和ChatGPT,或其他線上語言模型服務。

提供語音辨識、RAG、整理網頁資料、總結PDF等功能。AnythingLLM除了在桌面使用外,也可以改用Docker部署變成網頁應用程式。

官網下載: AnythingLLM | The all-in-one AI application for everyone

Jan AI
#

一體化的解決方案,設計理念很像閉源的LM Studio,主打開箱即用。

透過桌面應用程式即可完成下載語言模型、管理對話、處理文件等應用,無需打指令。

支援串接線上ChatGPT API,或者單純跑離線語言模型。

官網下載: Jan - Turn your computer into an AI computer

Text Generation WebUI
#

oobabooga開發的「Text Generation WebUI」提供網頁界面,支援載入多個開源語言模型、擴充功能、RAG檢索增強生成。它提供API讓其他軟體可以與其整合。

前端用Gradio寫的,操作界面很像Stable Diffusion WebUI。需要花點時間調整系統參數。

既能當語言模型的前端也能當後端。

使用方法看 這篇

LangChain
#

專業的大型語言模型Python框架,模組化設計,自由度極高,可以任意搭配各種語言模型與相關技術,建立AI應用程式。

上手有一定難度。

官網下載: LangChain: Build context-aware reasoning applications

相關文章

SillyTavern 設定語言模型服務,與AI聊天前最重要的設定步驟
分類   開源AI應用 大型語言模型
標籤   Large Language Model LLaMA AI ChatGPT
Meta的LLaMA開源大型語言模型與相關軟體介紹
分類   開源AI應用 大型語言模型
標籤   LLaMA AI Large Language Model ChatGPT
SillyTavern介紹,好玩的角色扮演AI聊天軟體
分類   開源AI應用 大型語言模型
標籤   SillyTavern Large Language Model ChatGPT Stable Diffusion

留言板

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Giscus留言板,需要Github帳號才能留言。支援markdown語法,若要上傳圖片請貼Imgur或Postimages。您的留言會在Github Discussions向所有人公開。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。為防止垃圾內容,有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。若要上傳圖片請善用圖床網站。