目錄
Ollama 環境變數與設定:OLLAMA_HOST、模型路徑、上下文長度
Ollama 服務的行為由環境變數控制。這一節整理最常用的設定,以及在各作業系統上的設定方式。
常用環境變數
| 變數 | 作用 | 預設值 |
|---|---|---|
OLLAMA_HOST | 服務監聽的位址與連接埠 | 127.0.0.1:11434 |
OLLAMA_MODELS | 模型存放的資料夾 | 見下方 |
OLLAMA_CONTEXT_LENGTH | 預設上下文長度(token) | 4096 |
OLLAMA_KEEP_ALIVE | 模型閒置多久後從記憶體卸載 | 5m |
OLLAMA_NUM_PARALLEL | 每個模型同時處理的請求數 | 1 |
OLLAMA_MAX_LOADED_MODELS | 同時載入的模型數量上限 | 每張 GPU 3 個 |
OLLAMA_MAX_QUEUE | 排隊請求上限,超過回傳 503 | 512 |
OLLAMA_ORIGINS | 允許跨來源(CORS)請求的網域 | 本機 |
OLLAMA_FLASH_ATTENTION | 強制開啟(1)或關閉(0)Flash Attention | 自動 |
OLLAMA_KV_CACHE_TYPE | 上下文快取的量化:f16、q8_0、q4_0 | f16 |
OLLAMA_NO_CLOUD | 停用雲端功能(雲端模型、網路搜尋) | 關閉 |
完整清單可以執行 ollama serve --help 查看。預設值可能隨版本調整,以你安裝的版本為準。
如何設定
Windows
- 先從系統匣圖示結束 Ollama。
- 開始選單搜尋「編輯您帳戶的環境變數」。
- 新增或修改變數,例如名稱
OLLAMA_HOST、值0.0.0.0:11434。 - 按確定後,從開始選單重新啟動 Ollama。
macOS(應用程式版)
launchctl setenv OLLAMA_HOST "0.0.0.0:11434"
launchctl setenv OLLAMA_CONTEXT_LENGTH "8192"
設定後重新啟動 Ollama 應用程式。launchctl setenv 在重新開機後會失效,需要長期生效可以寫成登入時執行的腳本。
Linux(systemd)
sudo systemctl edit ollama.service
在開啟的編輯器中加入:
[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"
Environment="OLLAMA_CONTEXT_LENGTH=8192"
存檔後套用:
sudo systemctl daemon-reload
sudo systemctl restart ollama
手動執行時
OLLAMA_HOST=0.0.0.0:11434 ollama serve
讓區網其他電腦連線
預設只監聽 127.0.0.1,只有本機能連。要讓同一個網路中的其他電腦(或手機、NAS)使用:
-
把
OLLAMA_HOST設為0.0.0.0:11434,重新啟動 Ollama。 -
確認防火牆允許 11434 連接埠。
-
在其他電腦上測試:
curl http://你的電腦IP:11434
Ollama 的 API 沒有帳號密碼驗證。千萬不要直接把 11434 開放到網際網路上,否則任何人都能使用你的 GPU,甚至刪除你的模型。需要從外部存取時,請透過 VPN(例如 Tailscale),或在前面加一個有驗證的反向代理。
更改模型存放位置
模型動輒數 GB 到數十 GB。預設位置:
| 系統 | 位置 |
|---|---|
| Windows | C:\Users\使用者名稱\.ollama\models |
| macOS | ~/.ollama/models |
| Linux | /usr/share/ollama/.ollama/models |
想放到其他硬碟,設定 OLLAMA_MODELS,例如 Windows 上設為 D:\ollama\models。Linux 上要確認 ollama 使用者對新資料夾有讀寫權限:
sudo mkdir -p /data/ollama/models
sudo chown -R ollama:ollama /data/ollama
已經下載的模型可以直接把整個 models 資料夾搬過去,不必重新下載。
上下文長度
上下文長度(context length)是模型一次能處理的 token 數量,包含你的輸入、對話歷史和模型的回答。中文大約 1 個字等於 1~2 個 token。
如果你把一份長文件交給模型摘要,卻發現它只看了後半段,通常就是上下文不夠,前面的內容被截掉了。
調整方式(擇一):
- 全域:
OLLAMA_CONTEXT_LENGTH=16384 - 單一模型:Modelfile 中
PARAMETER num_ctx 16384 - 單次請求:API 中的
"options": {"num_ctx": 16384}
上下文越長,佔用的記憶體越多。可以用 ollama ps 確認模型是否還能完整放在 GPU 上。
模型常駐時間
模型每次載入都需要時間(大模型可能要十幾秒)。
OLLAMA_KEEP_ALIVE=30m # 閒置 30 分鐘後才卸載
OLLAMA_KEEP_ALIVE=-1 # 永不卸載
OLLAMA_KEEP_ALIVE=0 # 用完立即卸載
API 請求中的 keep_alive 參數會覆蓋這個設定。
同時服務多個使用者
把 Ollama 當作團隊共用的服務時:
OLLAMA_NUM_PARALLEL=4
OLLAMA_MAX_LOADED_MODELS=2
注意:平行請求數會讓上下文的記憶體用量成倍增加(約為 NUM_PARALLEL × CONTEXT_LENGTH),顯示卡記憶體要足夠。
讓網頁直接呼叫 Ollama(CORS)
從瀏覽器擴充功能或其他網域的網頁直接呼叫 Ollama 時,需要允許該來源:
OLLAMA_ORIGINS="https://my-app.example.com,chrome-extension://*" 更新於 2026年10月12日