這篇解決什麼問題:Hermes Agent 桌面版的選單裡選不到你本機用 Ollama 跑的模型, 這篇記錄怎麼繞過選單、直接改設定檔把它接上,全程離線、不花 API 費用、也不動用 Claude 訂閱。 適合誰讀:用 Windows、會開 PowerShell 裝東西的人。硬體門檻是 6GB 顯卡加 16GB 記憶體, 另外準備 3GB 以上硬碟空間放模型。 讀完能做到什麼:能在 Hermes 的對話分頁對本機模型問一句話並收到回覆,全程不連外網; 也會知道為什麼標題那顆 gemma4:e2b 純聊天可以、一進 agent 模式就吐亂碼,最後我改用了 qwen3:4b。

時點:以下所有版本號與畫面位置都是 2026-06-05 的實測值,之後的版本我沒有再驗證。

相關:本篇下方的設定截圖紀錄(安裝截圖)|AI-LLM-MOC

建立日期:2026-06-05|最後更新:2026-09-01(改為原文直出,補上開頭導讀) 環境:Windows 11 Pro|GPU:GTX 1660(6GB)|RAM:16GB 目標:在 Hermes Agent 桌面版接入本地模型,完全離線、零 API 費用、不碰 Claude 訂閱。

本次安裝已驗證成功(2026-06-05)

項目狀態
Ollamav0.30.4(winget 安裝)
第一顆模型 gemma4:e2b已裝,純對話正常,但在 agent 模式會崩(吐「我PleaseI」亂碼)→ 見「踩雷 3」
最終採用 qwen3:4b已裝(2.5GB),agent 模式正常運作
OLLAMA_CONTEXT_LENGTH 環境變數64000
Hermes config.yaml / .env已改為本地 qwen3:4b,Chat 實測可回覆

三大關鍵心得:

  1. Hermes GUI 的模型下拉選不到本地模型,必須直接改設定檔(坑 1、2)。
  2. 2B 等級小模型(如 gemma4:e2b)扛不住 Hermes 的 agent 系統prompt,會吐亂碼 → agent 用途請選 4B 以上、工具能力強的模型(如 Qwen3)(踩雷 3)。
  3. Hermes 強制要求 context ≥ 64,000,低於會直接 agent init failed(踩雷 4)。

0. 名詞釐清(先看這個,避免走錯路)

你說的實際對應說明
Hermes desktopHermes Agent(Nous Research 出品)開源、可完全離線運行的 AI agent,具備記憶與技能系統。它本身不附帶模型,需要外接一個「模型端點」。
Gemini 的 Gemma 4 E2Bgemma4:e2b(Google Gemma 系列,Apache 2.0)邊緣裝置用的輕量模型,「有效 2B 參數」、支援文字/圖片/音訊多模態。這是 Gemma,Gemini 的開源親戚。
中間的橋樑Ollama把 Gemma 跑在本機,並開出一個 OpenAI 相容的 API(http://localhost:11434/v1),讓 Hermes 連上。

架構流程:

Hermes 桌面 App ──(OpenAI 相容 API)──> Ollama ──> Gemma 4 E2B 模型
  (Windows 原生)                       (Windows 本機,port 11434)

本教學使用 Hermes 桌面版 GUI(原生 Windows App,不需要 WSL)。 若你改用 CLI 版,安裝是 curl | bash 腳本,才需要 WSL2 / Git Bash(見文末附錄)。

Gemma 4 E2B 規格速覽

  • 下載大小:約 7.2 GB(Q4_K_M 量化)
  • 有效參數:2.3B(含 embedding 約 5.1B)
  • 上下文長度:128K tokens
  • 多模態輸入:文字、圖片、音訊
  • 建議取樣參數:temperature=1.0、top_p=0.95、top_k=64
  • 記憶體建議:至少 8GB RAM(16GB 以上更順)

桌面版 GUI 接本地模型(實戰走通版)

這版 GUI 比 CLI 友善,但有兩個坑會讓你卡住。下面是實測走通的完整路徑。 模型本體一律由 Ollama 存放,GUI 不會幫你下載 —— 所以務必先完成第 1、2 節。

知識點:為什麼 GUI 沒有「下載模型」按鈕?

Hermes 是「agent 大腦的指揮中心」,只負責「連到一個會講話的端點」。 把幾 GB 權重抓下來、量化、開 API 的活,是 Ollama(模型倉庫 + 引擎)幹的。 流程永遠是:Ollama 先把模型備好 → Hermes 再連過去。


坑 1:Providers 沒有「Custom endpoint」選項

Providers 分頁預設只顯示「用帳號登入」的雲端供應商(Nous Portal、Anthropic、OpenAI…)。 本地入口藏在 右上角小字 → 「Have an API key instead?」。 但點進去後也沒有 Custom / Self-hosted 選項,最接近的是 「Ollama Cloud」,它附一格 「Ollama Cloud base URL override(預設 https://ollama.com/v1)」 —— 我就「借殼」這格指向本地。

坑 2:Ollama Cloud 的模型下拉「只列雲端目錄」,選不到你本機的模型

就算把 base URL 改成本地,Model 分頁第二個下拉仍只會出現 qwen3-vl:235b、kimi-k2:1t、gemma4:31b… 這些雲端大模型, 永遠不會出現你本機的 gemma4:e2b。所以純靠 GUI 點選無法完成,必須改設定檔。


實測走通做法:直接改設定檔(最可靠)

真正決定「連哪裡、用哪個模型」的是設定檔;GUI 下拉只是輔助清單。 下拉抓不到本地模型,就從檔案直接寫死。

步驟 A — 完全關閉 Hermes App 右鍵系統匣圖示 → Quit / Exit(不是縮小!否則 App 關閉時會用舊設定覆蓋你的修改)。

步驟 B — 編輯主設定檔 路徑:C:\Users\<你的帳號>\AppData\Local\Hermes\config.yaml 把最上面的 model: 區塊改成(這是本次實測可用的最終設定):

model:
  default: qwen3:4b
  provider: ollama-cloud
  base_url: http://localhost:11434/v1
  context_length: 64000
欄位說明
default你本機 ollama list 看到的模型名。agent 用途請用 qwen3:4b 而非 gemma4:e2b(原因見踩雷 3)
provider沿用 ollama-cloud(借殼),靠下面的 base_url 改導到本地
base_urlhttp 不是 https,結尾要有 /v1
context_length必須 ≥ 64000,否則 Hermes 直接 agent init failed(踩雷 4)。別填 0 或個位數

步驟 C — 設定檔 .env 補一個假 key 路徑:C:\Users\<你的帳號>\AppData\Local\Hermes\.env 找到 # OLLAMA_API_KEY=... 那行,改成(去掉 #、填任意字):

OLLAMA_API_KEY=ollama

本地 Ollama 不驗證,但 OpenAI 相容客戶端要求 key 欄位不可為空,否則初始化會報錯。 同檔的 OLLAMA_BASE_URL=http://localhost:11434/v1 若已存在可保留,是同一個本地端點。

步驟 D — 重開 App,直接去 Chat 測試

  • 不要再去碰 Model 分頁的下拉或按 Apply —— 一碰可能把設定覆蓋回雲端模型(因為下拉裡沒有本地模型)。
  • 直接到 Chat 打一句話,能回覆就成功 (完全離線、零費用)。
  • 第一句會慢(模型載入 + 思考),請耐心等數十秒。

選對模型(本次最重要的教訓)

一開始裝的 gemma4:e2b 純聊天正常,一進 Hermes agent 就吐「我PleaseI」亂碼中斷。 折騰一輪才發現:不是設定錯,是模型太小。

踩雷 3:2B 小模型扛不住 agent 系統prompt

Hermes 是 agent,會塞一大包「系統指令 + 工具定義 + 技能 + 記憶」給模型(動輒上萬 token)。

  • gemma4:e2b「有效 2B 參數」,是給手機輕對話用的,被這包淹沒就輸出亂碼。
  • 診斷法:直接打 Ollama API 測(curl http://localhost:11434/api/chat)。若純對話正常、進 Hermes 才壞,幾乎就是模型太小。

踩雷 4:context 必須 ≥ 64,000

Hermes 啟動時會檢查模型 context,低於 64K 直接報: agent init failed: ... below the minimum 64,000 required by Hermes Agent → 在 config.yaml 的 model.context_length 填 64000(model 原生 context 要夠大才行;qwen3 原生 256K,OK)。

依硬體選模型(agent 用途)

你的硬體建議模型備註
6GB 顯卡 / 16GB RAM(本機)qwen3:4b(2.5GB)工具能力強、CP 值高。64K context 的 KV 快取會溢到 RAM → 較慢但能跑
想更聰明、可接受更慢qwen2.5-coder:7b、qwen3:8b部分溢到 RAM
純輕對話、不跑 agentgemma4:e2b 也可但別拿來驅動工具

qwen3 是「思考模型」+ 中國模型,兩個提醒

  1. 思考模型:回答前先想一段(agent 推理更準,但較慢)。Hermes 已設 show_reasoning: false 不顯示思考。嫌慢可在 prompt 加 /no_think 關閉。
  2. 內建立場:Qwen 是阿里巴巴模型,政治敏感話題會帶北京官方框架(如自動稱「台灣省」)。若用於社群發文且內容涉及敏感議題,建議改用非中國模型(Llama / 較大 Gemma / 雲端 Claude·GPT)。

知識點:「Auxiliary models(輔助模型)」是什麼?

Model 分頁那排 Vision / Web extract / Compression / Skills hub / Approval / MCP / Title gen / Curator, 是 Hermes 把不同雜務分派給不同模型的設定,預設都是 use main model。 一般全部維持 Set to main 即可,先讓主模型跑起來。

知識點:「Fallback Models(備援模型)」

主模型掛掉時依序嘗試的 provider:model。純本地離線可留空。

進階:更乾淨的本地 provider 寫法

Hermes 其實有獨立的本地 ollama provider(與 ollama-cloud 不同)。 本教學用 ollama-cloud + base_url 借殼雖可行,日後想更正規可改 provider: ollama。


1. 安裝並啟動 Ollama(Windows 端)

  1. 前往 ollama.com 下載 Windows 版 安裝(或用 winget install Ollama.Ollama)。
  2. 安裝後 Ollama 會在背景常駐,並監聽 http://localhost:11434。
  3. 開 PowerShell 確認服務在跑:
    ollama --version

白話知識點:Ollama 是什麼? 把它想成「本地版的模型 App Store + 引擎」。它做三件事: ① 幫你下載模型權重檔;② 自動量化(壓縮成電腦跑得動的大小); ③ 開一個 localhost:11434 的服務,讓別的程式(這裡是 Hermes)能呼叫模型。 只要 Ollama 在背景跑著,模型就「待命」可被呼叫。

白話知識點:什麼是「OpenAI 相容 API」? 它是一種「講話的通用插頭規格」。只要端點長得像 OpenAI 的格式(網址後面有 /v1), 各種前端(Hermes、LM Studio…)就能無痛接上。所以本地的 Gemma 也能假裝成「OpenAI 端點」被連。


2. 下載模型

在 PowerShell 執行(會自動下載 + 量化 + 啟動本機 API):

# agent 用途(推薦):工具能力強,本次實測可正常驅動 Hermes
ollama pull qwen3:4b
 
# (選用)輕量多模態,僅適合純聊天、不要拿來跑 agent
ollama pull gemma4:e2b

跑 Hermes agent 請用 qwen3:4b。gemma4:e2b 純聊天可以,但進 agent 會吐亂碼(見「踩雷 3」)。

下載完成後,先在本機測一下模型能否回應:

ollama run gemma4:e2b

出現對話提示符後,隨便輸入一句話測試。能回覆即代表模型 OK,按 Ctrl + D 離開。 如果你想要的是 Gemma 3n 版本(另一個輕量系列),把指令換成 gemma3n:e2b 即可,後續設定相同。

白話知識點:pull 和 run 差在哪? pull = 只下載不開聊(適合先抓好放著);run = 下載(如果還沒有)+ 直接進入對話。 第一次下載約 7.2 GB,之後就存在本機、離線可用,不會再抓。

白話知識點:E2B 的「E」和「2B」是什麼意思? E2B = Effective 2 Billion(有效 20 億參數)。Gemma 用了「選擇性啟動參數」技術: 模型實際更大(含 embedding 約 5.1B),但每次推論只「點亮」約 2B, 所以跑起來像 2B 那麼省資源、但聰明度比真正的 2B 高。這就是它能在筆電/手機跑的原因。


附錄:CLI 版安裝(非本次使用,僅供參考)

以下第 3~6 節是 Hermes CLI 版 的裝法(curl | bash,需要 WSL2)。 本次用的是桌面 GUI 版,請看上面的「實戰走通版」即可,這段純參考。

3. 安裝 Hermes Agent(WSL2 / Git Bash 端)

若尚未安裝 WSL2:以系統管理員開啟 PowerShell 執行 wsl --install,重開機後設定 Ubuntu 帳號。

進入 WSL(或 Git Bash)後執行官方安裝腳本:

curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
source ~/.bashrc   # zsh 使用者改用 source ~/.zshrc

驗證安裝:

hermes --version

替代方案(已有 Python 環境):pip install hermes-agent


4. 把 Hermes 指向 Gemma(核心步驟)

執行模型設定精靈:

hermes model

依提示選擇 Custom OpenAI-compatible endpoint(自訂 OpenAI 相容端點),並填入:

欄位填入內容
API Base URLhttp://localhost:11434/v1
API Key(留空,Ollama 本機不需驗證)
Model namegemma4:e2b
Context length64000 以上(重要,見下方知識點;最高可填 131072)
Display name自訂,例如 gemma-local

最容易踩雷的白話知識點:Context(上下文)一定要調大! Gemma 4 E2B 雖然支援 128K context,但 Ollama 預設只給很小的視窗(常見只有 2K~4K)。 而 Hermes 是 agent,它要塞「系統指令 + 記憶 + 工具說明 + 對話」進去, context 太小會讓它中途失憶、工具呼叫失敗、行為怪異。 解法:在啟動 Ollama 前,於 PowerShell 設定環境變數:

$env:OLLAMA_CONTEXT_LENGTH = "64000"

(要永久生效請用「系統 → 環境變數」加入,或在 Ollama 設定中調整。) Hermes 官方建議 agent 至少要 64,000 tokens 才穩。

在 WSL 中若 localhost 連不到 Windows 的 Ollama,改用 Windows 主機 IP, 在 WSL 執行 cat /etc/resolv.conf 取得 nameserver IP,把 Base URL 換成 http://<該IP>:11434/v1;或在 Windows 設環境變數 OLLAMA_HOST=0.0.0.0 後重啟 Ollama。


5.(替代)直接編輯設定檔

不想走精靈,可直接改設定檔:

hermes config edit     # 用 $EDITOR 開啟 ~/.hermes/config.yaml

內容範例:

model:
  default: gemma4:e2b
  provider: custom
  base_url: http://localhost:11434/v1
  context_length: 32768

本機 Ollama 不需要在 ~/.hermes/.env 填任何 API key。


6. 啟動並驗證

hermes
  • 啟動橫幅應顯示目前使用的模型為 gemma4:e2b。
  • 隨意問一個問題,模型會回應,且全程無任何網路呼叫(完全離線、無 token 費用)。

疑難排解

症狀可能原因 / 解法
回覆吐亂碼如「我PleaseI」後中斷模型太小扛不住 agent prompt(踩雷 3)。換 qwen3:4b 以上。先用 curl .../api/chat 直測:純對話正常=模型沒壞,是太小。
agent init failed ... below the minimum 64,000context 太小(踩雷 4)。config.yaml 的 model.context_length 設 64000。
GUI 模型下拉選不到本地模型正常現象(坑 2)。Ollama Cloud 下拉只列雲端目錄 → 改設定檔指定(實戰走通版)。
Hermes 連不上端點確認 Ollama 在跑(ollama ps);.env 的 OLLAMA_API_KEY 不可空(填 ollama)。
回應很慢 / 記憶體爆64K context 的 KV 快取大、6GB 顯卡塞不下會溢到 RAM。關閉其他大程式;或加 /no_think 關思考提速。
改了設定檔卻沒生效App 沒完全關閉就被重開 → 它用記憶體舊設定覆蓋了。先 Quit 再改。
改完 GUI 又跑回雲端模型在 Model 分頁按了 Apply(下拉沒有本地模型)。改完設定檔後別碰那個下拉。

附帶結論:Claude Max 訂閱不能餵 Hermes。 第三方 App 的 Anthropic OAuth 會被導到獨立的 extra_usage 計費池(預設空的),常被 HTTP 400 擋。要用雲端 Claude 得另辦 API key(按 token 付費)。本地模型則完全避開此問題。


參考來源