Serge:用Docker架設本機聊天AI,支援Vicuna13B、Alpaca13B等語言模型

Nathan Sarrazin開發的"Serge"是一款支援多個大型語言模型的網頁程式,它可以讓使用者輕鬆與AI聊天互動,開源可自架。

Nathan Sarrazin的Github儲存庫:Serge - LLaMA made easy - GitHub

“Serge"這個名字源自網路meme。義大利有一隻叫Serge Lama的羊駝,牠的名字是以法國歌手Serge le lam命名的。

1. 系統需求

  • 支援Docker的作業系統,Linux/Windows/macOS
  • 4核心以上的CPU
  • 16GB以上RAM
  • 20GB硬碟空間

Serge背後用到llama.cpp技術,因此它純粹只用CPU和RAM運算,完全不會用到GPU。

2. 安裝Serge

  1. 在電腦上安裝Docker

  2. 執行開發者給的指令,拉取Serge映像檔,並放到背景執行

1
sudo docker run -d -v weights:/usr/src/app/weights -v datadb:/data/db/ -p 8008:8008 ghcr.io/nsarrazin/serge:latest
  1. 瀏覽器開啟https://127.0.0.1:8008就可以看到Serge主畫面。

3. 下載語言模型

使用內建模型

點選Download model進入模型下載頁。對要下載的模型按Download。下載的語言模型檔案位於/var/lib/docker/volumes/weights/_data/

Serge目前提供的模型有Meta LLaMA、Stanford Alpaca、Vicuna、OpenAssistant OAsst、GPT4All。

模型後面都有數字(7B/13B/30B),代表訓練資料集數量。最小的7B執行就需要4GB RAM,數字越大的需要越多RAM。如果電腦RAM不足,可以用SWAP或分頁檔來提升RAM。

如果要我推薦哪個比較好的話,建議是從Vicuna 13B開始玩起,它是最新的模型,且13B的執行速度也還在大多數電腦能接受的範圍,雖然有時候它也會無視指示亂回答。

使用額外語言模型

將想使用的模型(ggml格式)複製到Docker內部,例如支援中文對話的ChatGLM

1
sudo docker cp ~/模型檔.bin 容器ID:/usr/src/app/weights

4. 開始聊天

  1. 點開Model Settings,在Model choice處選取要使用的模型

  1. Max size預設是512等於AI的記憶長度。如果你希望跟AI聊久一點的話,那就把這個值設定為2048,否則馬上就會到達context上限。Pre-prompt處的提示詞是要AI扮演的角色。

  1. 點選Start a new chat開始對話。AI的回應時間依電腦性能而定,Intel i5 7400大概需要算30秒才會開始生成回應。

Vicuna13B雖說是最新模型,但…答非所問的情況也是偶爾會發生。如果要它寫程式的話,務必再三檢查。

另外作者還準備一套API能夠與AI互動,文件網址請看http://localhost:8008/api/docs


感謝您的閱讀。歡迎分享Ivon的部落格(ivonblog.com)的文章,引用或轉載請註明文章網址,並遵守創用CC-姓名標示-非商業性-禁止改作 4.0 國際授權條款。如需商業使用請來信告之。

written by human, not by AI

如果本網站文章對您有幫助,歡迎請我喝杯珍珠奶茶。

留言板

點選按鈕,選擇您覺得方便的留言系統。

這是Giscus留言板,需要登入Github帳號才能留言。方便您張貼程式碼,若要上傳圖片請貼Imgur連結。您的留言會在Github Discussions向所有人公開。