快轉到主要內容

Android手機用Termux Ollama跑任意大型語言模型

· 民國113年甲辰年
· ·
分類   開源AI應用 大型語言模型
標籤   Ollama Large Language Model Android Termux
目錄
Open WebUI與Ollama教學 - 點選展開系列文章
3: 本文

在Android手機跑Ollama服務,執行LLaMA、Gemini、Qwen這類開源的大型語言模型。

最後討論架設圖形聊天界面的方法。

Ollama這款開源軟體呢,簡化了跑大型語言模型的複雜度,將Lllama.cpp變成單一執行檔,使其能夠執行多款語言模型,並透過REST API提供給外部程式串接的能力。

Ollama的大型語言模型執行的時候完全是跑在本機運算的,資料不會回傳給第三方。

不過Ollama主要是設計給Linux、Windows、macOS電腦跑的,Android手機得透過Termux執行。

目前Ollama只支援CUDA和ROCm加速技術,Termux環境難以使用手機的GPU加速,所以這裡都是用CPU硬算的,語言模型生成回應的速度非常慢,可能只夠跑3B以下資料量的模型。

或者,你可以改將Ollama部署到自己的電腦,再用手機遠端存取WebUI,這是比較實際的作法。手機與網頁互動,將運算交給遠端伺服器,使用體驗較佳。

1. 系統需求
#

  • 10GB以上儲存空間,大型語言最小的3B起碼都4GB起跳
  • 8GB以上RAM,大型語言模型執行非常吃RAM,這只是最低需求。
  • SD 865以上處理器

2. 安裝Ollama
#

雖然Ollama有ARM64的版本,但那是給樹莓派用的,Termux環境下需要手動編譯。且Termux沒有Systemd,故我們需要手動啟動服務。

  1. 安裝Termux

  2. 安裝Go語言的依賴套件

pkg install git cmake golang clang
  1. 參考官方文件,編譯Ollama
git clone https://github.com/ollama/ollama.git

cd ollama

go generate ./...

go build .
  1. 將Ollama安裝到$PREFIX/bin
cp ollama $PREFIX/bin

cd

rm -r ollama

3. 終端機使用Ollama
#

詳細使用方法參考Ollama教學

我以Mistral-7B為例子:

指示Ollama下載Mistral 7B,模型會儲存到~/.ollama/models

ollama serve &
ollama pull mistral:7b-instruct

試著在終端機跑跑看,能不能進入對話:

ollama run mistral:7b-instruct

我另外使用Ollama的Modelfile的功能,把聯發科的Breeze-7B-Instruct中文模型轉到手機上跑。

4. 使用圖形界面APP
#

Open WebUI目前無法在Termux執行。

有很多Android APP相容Ollama API,例如JHubi1/ollama-app或者Mobile-Artificial-Intelligence/Maid當作前端。下面以Maid為例。

  1. 在Termux啟動Ollama服務
ollama serve &
  1. 下載Maid APK

  2. 點選Settings,輸入http://127.0.0.1:114314,連線到Ollama服務

  3. 選取要使用的模型,就可以聊天了。

Open WebUI與Ollama教學 - 點選展開系列文章
3: 本文

相關文章

Linux系統Ollama安裝教學,快捷部署AI大型語言模型到你的電腦,離線執行
分類   開源AI應用 大型語言模型
標籤   Ollama Large Language Model Retrieval Augmented Generation
Android手機Termux跑Alpaca.cpp (LLaMA) 大型語言模型
分類   開源AI應用 大型語言模型
標籤   LLaMA AI Large Language Model Termux
SillyTavern 設定語言模型服務,與AI聊天前最重要的設定步驟
分類   開源AI應用 大型語言模型
標籤   Large Language Model LLaMA AI ChatGPT

留言板

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

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