跳到內容

用 Ollama 在本地跑 LLM:OpenClaw 整合指南

我以前開發 AI Agent 時,最頭痛的就是 API 帳單。每次只是想測試一個簡單的邏輯,都要噴掉幾塊美金,累積下來也是一筆開銷。後來我開始在本地跑 Ollama,雖然隱私和成本問題解決了,但手動設定模型參數和 Tool Calling 簡直是災難。這就是為什麼我喜歡 OpenClaw 的設計——它能自動幫你搞定這一切。

在開始之前,請確保你已經準備好以下環境:

  • 安裝好的 Ollama(點此下載)
  • 至少一個支援 Tool Calling 的本地模型
  • 運作中的 OpenClaw 環境

只要 5 分鐘,你就能讓本地模型跑起來:

  1. 下載模型: 建議選擇支援工具呼叫的模型,效果最好。

    Terminal window
    ollama pull llama3.3
    # 或者
    ollama pull qwen2.5-coder:32b
  2. 啟用 Ollama 支援: OpenClaw 只要偵測到 OLLAMA_API_KEY 就會啟動自動發現功能。雖然 Ollama 本身不需要 key,但你需要隨便填一個值來觸發它。

    Terminal window
    # 直接設定環境變數
    export OLLAMA_API_KEY="ollama-local"
    # 或使用 OpenClaw 指令設定
    openclaw config set models.providers.ollama.apiKey "ollama-local"
  3. 在 Agent 中使用: 在你的設定檔中指定模型,記得加上 ollama/ 前綴。

    {
    agents: {
    defaults: {
    model: { primary: "ollama/llama3.3" },
    },
    },
    }

這是 OpenClaw 最聰明的地方。只要你設定了 OLLAMA_API_KEY 且沒有手動定義 models.providers.ollama,系統就會自動去掃描你本地 http://127.0.0.1:11434 的模型。

它會幫你處理這些瑣事:

  • 自動過濾掉不支援 tools 的模型,確保你的 Agent 不會當機。
  • 偵測模型是否支援 thinking 過程並標記為 reasoning 模型。
  • 自動讀取 contextWindow(上下文視窗)大小。
  • 將所有模型成本設為 0,看著帳單是 0 元就是爽。

想知道目前有哪些模型可用?跑這兩行指令:

Terminal window
ollama list
openclaw models list

如果你遇到以下狀況,就得放棄「自動發現」,改用手動設定:

  • Ollama 跑在不同的 IP 或 Port。
  • 你想強行使用不支援 Tool 的模型。
{
models: {
providers: {
ollama: {
baseUrl: "http://your-server-ip:11434/v1",
apiKey: "ollama-local",
api: "openai-completions",
models: [
{
id: "llama3.3",
name: "Llama 3.3 Local",
contextWindow: 8192,
maxTokens: 81920
}
]
}
}
}
}

這是一個技術上的實務建議:在 Ollama 上請預設關閉串流 (Streaming)。

因為目前底層 SDK 與 Ollama 的回應格式存在相容性問題,開啟串流時,模型輸出的 Tool Calling 內容(例如 memory_get 等指令)可能會跟一般文字混在一起,導致解析失敗。為了穩定性,OpenClaw 預設會關閉 Ollama 的串流功能,改用一次性回傳。

如果你非要挑戰看看,可以這樣強行開啟:

{
agents: {
defaults: {
models: {
"ollama/llama3.3": { streaming: true },
},
},
},
}

請檢查兩件事:

  1. 你的 Ollama 真的有在跑嗎?試試 curl http://localhost:11434/api/tags。
  2. 該模型是否支援 Tool?OpenClaw 預設會隱藏不支援 Tool 的模型。你可以改用 ollama pull llama3.3 試試看。

回應出現亂碼或奇怪的工具名稱?

Section titled “回應出現亂碼或奇怪的工具名稱?”

這通常是因為你開啟了 streaming: true。請回到設定檔將其移除,或明確設定為 false。本地模型跑得很快,不差那幾秒鐘的打字機效果,穩定才是王道。

如果你是把 Ollama 跑在 Docker 或是另一台電腦,記得檢查 OLLAMA_HOST 環境變數,確保它允許外部連線,而不只是綁定在 127.0.0.1。


如果你在設定過程中卡住了,可以隨時詢問我們的 AI Setup Assistant。

OpenClaw

OpenClaw Expert

還是卡住了?

如果這篇文件沒有解決你的情境,直接問 OpenClaw Expert,拿到可執行步驟。