Select Page

Nvidia DGX Spark 安裝 Holo-3.1

原本我在 Nvidia 都搭配 vLLM 啟動,這條路理論上可以發揮 NVFP4 權重的優勢,但在 DGX Spark 的 GB10 平台上,實際遇到 CUDA Kernel 與 Marlin repack 相容性問題。

最後我改採:

Hcompany/Holo-3.1-35B-A3B-GGUF

搭配 llama.cpp CUDA Build,成功啟動模型並提供 API 服務。

這篇文章記錄完整流程,也保留幾個重要的踩坑經驗。


環境

本次環境如下:

硬體:NVIDIA DGX SparkGPU:NVIDIA GB10系統:Ubuntu Linux模型儲存位置:/mnt/ai-models推論框架:llama.cpp模型格式:GGUF量化版本:Q4_K_M

DGX Spark 使用統一記憶體架構,因此 CPU、GPU 與系統服務會共用記憶體。這點對 vLLM 與 llama.cpp 都很重要。


為什麼放棄 NVFP4 + vLLM

一開始使用 vLLM 載入:

Hcompany/Holo-3.1-35B-A3B-NVFP4

後,權重其實已經完整載入:

Loading safetensors checkpoint shards: 100% Completed | 3/3Loading weights took 142.78 seconds

但載入完成後,仍然在 Marlin FP4 重新整理階段失敗:

NotImplementedError:Could not run '_C::gptq_marlin_repack'with arguments from the 'CUDA' backend

這代表模型檔案本身沒有問題,真正卡住的是 vLLM 的 CUDA Extension 在 DGX Spark GB10 上沒有完整提供所需的 Marlin CUDA Operator。

如果只是想先把 Holo 3.1 跑起來,不一定要繼續投入時間處理 NVFP4 相容性。改用 GGUF + llama.cpp 是更快、更穩定的選擇。


移除 NVFP4 模型快取

vLLM 下載的 Hugging Face 模型通常會放在:

/mnt/ai-models/huggingface/hub/

先確認路徑:

find /mnt/ai-models/huggingface \  -maxdepth 3 \  -type d \  -name 'models--Hcompany--Holo-3.1-35B-A3B-NVFP4' \  -print

確認容量:

du -sh \  /mnt/ai-models/huggingface/hub/models--Hcompany--Holo-3.1-35B-A3B-NVFP4

確認無誤後刪除:

rm -rf \  /mnt/ai-models/huggingface/hub/models--Hcompany--Holo-3.1-35B-A3B-NVFP4

安裝 llama.cpp

1. 安裝編譯工具

sudo apt update
sudo apt install -y \  git \  build-essential \  cmake \  ninja-build \  libcurl4-openssl-dev \  pkg-config

2. 確認 CUDA Toolkit

export CUDA_HOME=/usr/local/cudaexport PATH="${CUDA_HOME}/bin:${PATH}"
export LD_LIBRARY_PATH="${CUDA_HOME}/lib64:${LD_LIBRARY_PATH:-}"
nvcc --versionnvidia-smi

nvcc --version 必須能正常回傳 CUDA 版本。

3. Clone llama.cpp

mkdir -p /mnt/ai-models/srccd /mnt/ai-models/srcgit 
clone https://github.com/ggml-org/llama.cpp.gitcd 
llama.cpp

如果之前已經下載過:

cd /mnt/ai-models/src/llama.cpp
git fetch origingit switch master
git pull --ff-only origin master

4. 編譯 CUDA 版本

cd /mnt/ai-models/src/llama.cpp
rm -rf buildcmake -B build \  -DGGML_CUDA=ON \  -DCMAKE_BUILD_TYPE=Releasecmake --build build \  --config Release \  -j 4 \  --target llama-server llama-cli

確認:

./build/bin/llama-server --version
./build/bin/llama-cli --version

下載 Holo 3.1 GGUF 模型

建立模型目錄:

mkdir -p \  /mnt/ai-models/llama-models/Holo-3.1-35B-A3B-GGUF

下載主模型、視覺投影模型與 Chat Template:

hf download \  Hcompany/Holo-3.1-35B-A3B-GGUF \  q4_k_m.gguf \  mmproj.f16.gguf \  chat_template.jinja \  --local-dir \  /mnt/ai-models/llama-models/Holo-3.1-35B-A3B-GGUF

確認:

ls -lh \  /mnt/ai-models/llama-models/Holo-3.1-35B-A3B-GGUF

應該看到:

q4_k_m.ggufmmproj.f16.ggufchat_template.jinja

單模型模式啟動

先用最簡單的單模型方式確認服務能運作:

cd /mnt/ai-models/src/llama.cpp
./build/bin/llama-server \  -m /mnt/ai-models/llama-models/Holo-3.1-35B-A3B-GGUF/q4_k_m.gguf \  --mmproj /mnt/ai-models/llama-models/Holo-3.1-35B-A3B-GGUF/mmproj.f16.gguf \  --jinja \  --host 0.0.0.0 \  --port 8080 \  -c 8192 \  -np 1 \  -ngl 999

參數說明:

--mmproj     指定視覺投影模型
--jinja      使用模型附帶的 Chat Template
-c 8192      Context Length
-np 1        同時處理 1 個請求
-ngl 999     儘可能將模型層放到 GPU

官方建議參數

llama-server \
  --hf Hcompany/Holo-3.1-35B-A3B-GGUF \
  --n-gpu-layers 999 \
  --ctx-size 65536 \
  --batch-size 16384 \
  --ubatch-size 2048 \
  --flash-attn 1 \
  --cache-type-k q8_0 \
  --cache-type-v q8_0 \
  --image-min-tokens 1024 \
  --ctx-checkpoints 8 \
  --cache-ram 32768 \
  --kv-unified \
  --threads 16

測試文字 API

curl -s http://192.168.0.240:8080/v1/chat/completions \  -H "Content-Type: application/json" \  -d '{    "model": "Holo-3.1-35B-A3B-GGUF",    "messages": [      {        "role": "user",        "content": "請使用繁體中文介紹你的 UI 畫面分析能力。"      }    ],    "max_tokens": 256,    "temperature": 0.2  }' | python3 -m json.tool

在這台 DGX Spark 上,實測文字生成速度約為:

82 tokens/s

測試圖片分析 API

curl -s http://127.0.0.1:8080/v1/chat/completions \  -H "Content-Type: application/json" \  -d '{    "model": "q4_k_m.gguf",    "messages": [      {        "role": "user",        "content": [          {            "type": "text",            "text": "Describe this image in one concise English sentence."          },          {            "type": "image_url",            "image_url": {              "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg"            }          }        ]      }    ],    "thinking_budget_tokens": 64,    "max_tokens": 1024,    "temperature": 0.1  }' | python3 -m json.tool

已知問題:中文多模態輸出偶爾觸發解析錯誤

圖片推論本身可以成功,但在某些中文輸出中,llama-server 可能回傳:

Failed to parse input at pos ...

例如:

自由女神像、火炬、基座、城市天際線、高樓、水面、島嶼、樹木、旗�、船。

其中 是 UTF-8 無效字元替代符號。

實務上的處理方式:

1. 降低 temperature,例如 0.12. 限制輸出為簡短句子3. 提高 max_tokens,避免輸出被截斷4. Client 端遇到 500 時自動 Retry 一次5. 優先更新至最新版 llama.cpp

Router Mode:支援多模型切換

確認單模型模式正常後,可以啟用 Router Mode:

cd /mnt/ai-models/src/llama.cpp
./build/bin/llama-server \  --models-dir /mnt/ai-models/llama-models \  --models-max 1 \  --models-autoload \  --jinja \  --host 0.0.0.0 \  --port 8080 \  -c 8192 \  -np 1 \  -ngl 999

啟動後會看到:

Loaded 1 local model presets from /mnt/ai-models/llama-modelsAvailable models (1)    Holo-3.1-35B-A3B-GGUFstarting router server, no model will be loaded in this processrouter server is listening on http://0.0.0.0:8080

Router 會在 Client 第一次呼叫時才載入模型。

查看模型清單:

curl -s \  'http://127.0.0.1:8080/models?reload=1' | \  python3 -m json.tool

指定模型:

curl -s http://127.0.0.1:8080/v1/chat/completions \  -H "Content-Type: application/json" \  -d '{    "model": "Holo-3.1-35B-A3B-GGUF",    "messages": [      {        "role": "user",        "content": "請使用繁體中文簡短介紹你的功能。"      }    ],    "max_tokens": 512,    "temperature": 0.2  }' | python3 -m json.tool

Router Mode 的記憶體策略

我使用:

--models-max 1

意思是:

可以讓 Client 選擇多個模型但同一時間只保留一個模型在記憶體中

這很適合 DGX Spark。因為 Holo 35B、KV Cache、圖片 Token 與系統服務都會共用統一記憶體。

如果要同時提供 Holo 與另一個 Tool Calling 模型,建議:

Holo 35B:Context 8192 或 16384用途:UI 截圖與視覺分析較小的文字 Tool Calling 模型:Context 65536用途:Hermes Agent 預設模型

不同模型需要不同 Context Length 時,可使用 models.ini

version = 1

[*]
jinja = true
n-gpu-layers = 999
parallel = 1

[Holo-3.1-35B-A3B-GGUF]
model = /mnt/ai-models/llama-models/Holo-3.1-35B-A3B-GGUF/q4_k_m.gguf
mmproj = /mnt/ai-models/llama-models/Holo-3.1-35B-A3B-GGUF/mmproj.f16.gguf
ctx-size = 8192

[qwen-coder]
model = /mnt/ai-models/llama-models/qwen-coder-14b-q4_k_m.gguf
ctx-size = 65536

啟動:

./build/bin/llama-server \  --models-preset /mnt/ai-models/llama-models/models.ini \  --models-max 1 \  --models-autoload \  --host 0.0.0.0 \  --port 8080

讓 llama.cpp 開機就執行

一、確認執行檔路徑

先執行:

ls -lh /mnt/ai-models/src/llama.cpp/build/bin/llama-server

再確認模型目錄:

ls -lah /mnt/ai-models/llama-models

測試版本:

/mnt/ai-models/src/llama.cpp/build/bin/llama-server --version

如果這三個指令正常,就可以建立服務。


二、建立 systemd 服務

建立服務檔:

sudo nano /etc/systemd/system/llama-router.service

貼上:

[Unit]
Description=llama.cpp Router Server
Documentation=https://github.com/ggml-org/llama.cpp
After=network-online.target local-fs.target
Wants=network-online.target
RequiresMountsFor=/mnt/ai-models

[Service]
Type=simple
User=gwoyju
Group=gwoyju
WorkingDirectory=/mnt/ai-models/src/llama.cpp

Environment="LD_LIBRARY_PATH=/usr/local/cuda/lib64"
Environment="CUDA_HOME=/usr/local/cuda"

ExecStartPre=/usr/bin/test -x /mnt/ai-models/src/llama.cpp/build/bin/llama-server
ExecStartPre=/usr/bin/test -d /mnt/ai-models/llama-models

ExecStart=/mnt/ai-models/src/llama.cpp/build/bin/llama-server \
  --models-dir /mnt/ai-models/llama-models \
  --models-max 1 \
  --models-autoload \
  --jinja \
  --host 0.0.0.0 \
  --port 8080 \
  -c 8192 \
  -np 1 \
  -ngl 999

Restart=on-failure
RestartSec=10
TimeoutStopSec=30
KillSignal=SIGTERM
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target

儲存後離開:

Ctrl + O
Enter
Ctrl + X

WantedBy=multi-user.target 讓服務可以隨一般多使用者開機流程啟動;Restart=on-failure 會在程式異常退出時重新啟動服務。

為什麼需要 RequiresMountsFor

你的模型與程式都放在:

/mnt/ai-models

如果外接 SSD 尚未掛載完成,直接啟動 llama-server 會失敗。

這一行:

RequiresMountsFor=/mnt/ai-models

會要求 systemd 先準備好該掛載點,再啟動 Router。


三、啟用開機自動執行

重新讀取服務設定:

sudo systemctl daemon-reload

設定開機自動啟動,並立即啟動:

sudo systemctl enable --now llama-router

查看服務狀態:

systemctl status llama-router --no-pager

正常情況應該看到:

Active: active (running)

以及:

router server is listening on http://0.0.0.0:8080

四、查看即時日誌

查看最近 100 行日誌:

journalctl -u llama-router -n 100 --no-pager

持續追蹤日誌:

journalctl -u llama-router -f

離開即時日誌:

Ctrl + C

五、測試 Router API

確認 Router 已啟動:

curl -s http://127.0.0.1:8080/health

查看模型清單:

curl -s \  'http://127.0.0.1:8080/models?reload=1' | \  python3 -m json.tool

測試 Holo 3.1:

curl -s http://127.0.0.1:8080/v1/chat/completions \  -H "Content-Type: application/json" \  -d '{    "model": "Holo-3.1-35B-A3B-GGUF",    "messages": [      {        "role": "user",        "content": "請使用繁體中文簡短介紹你的功能。"      }    ],    "max_tokens": 256,    "temperature": 0.2  }' | python3 -m json.tool

第一次呼叫時會需要等待模型載入。後續請求會比較快。


六、常用管理指令

啟動服務

sudo systemctl start llama-router

停止服務

sudo systemctl stop llama-router

重新啟動

sudo systemctl restart llama-router

查看狀態

systemctl status llama-router --no-pager

取消開機自動啟動

sudo systemctl disable --now llama-router

七、確認開機後是否真的自動啟動

重新開機:

sudo reboot

重新 SSH 登入後執行:

systemctl status llama-router --no-pager

確認 Port:

ss -ltnp | grep :8080

測試模型清單:

curl -s http://127.0.0.1:8080/models | \  python3 -m json.tool

八、改用 models.ini

準備讓不同模型有不同 Context Length:

Holo 35B:8192Hermes 預設 Tool Calling 模型:65536

這種情況建議不要在服務中使用:

--models-dir-c 8192

而是改用:

--models-preset

假設設定檔位於:

/mnt/ai-models/llama-models/models.ini

服務中的 ExecStart 改成:

ExecStart=/mnt/ai-models/src/llama.cpp/build/bin/llama-server \
  --models-preset /mnt/ai-models/llama-models/models.ini \
  --models-max 1 \
  --models-autoload \
  --host 0.0.0.0 \
  --port 8080

改完後重新載入設定:

sudo systemctl daemon-reload
sudo systemctl restart llama-router

查看日誌:

journalctl -u llama-router -f

九、避免 Ollama 開機後搶占記憶體

你之前遇過記憶體不足。如果目前 DGX Spark 主要改用 llama.cpp,建議停用 Ollama 的開機自動啟動:

sudo systemctl disable --now ollama

確認:

systemctl status ollama --no-pager

未來需要恢復:

sudo systemctl enable --now ollama

十、限制只允許內網連線

目前使用:

--host 0.0.0.0

代表區域網路內其他裝置可以存取 API。Router Mode 目前仍屬於實驗性功能;llama.cpp 啟動日誌也提醒,不建議直接暴露在不受信任的網路環境。

假設區域網路是:

192.168.0.0/24

可以設定 UFW:

sudo ufw allow from 192.168.0.0/24 \  to any port 8080 proto tcp

查看規則:

sudo ufw status numbered

不要直接把 Port 8080 暴露到公網。


建議你現在直接執行的版本

建立 /etc/systemd/system/llama-router.service 後,執行:

sudo systemctl daemon-reload
sudo systemctl enable --now llama-router
systemctl status llama-router --no-pagerjournalctl -u llama-router -n 50 --no-pager

這樣 DGX Spark 每次重新開機後,llama.cpp Router Server 就會自動啟動,並等待 Hermes Agent 或其他 Client 指定要載入的模型。

參考資料

https://huggingface.co/collections/Hcompany/holo31

https://build.nvidia.com/spark/llama-cpp/instructions

MarkItDown 教學:微軟開源神器,一鍵把 PDF、Word、PPT 轉成 AI 可讀 Markdown

MarkItDown 教學:微軟開源神器,一鍵把 PDF、Word、PPT 轉成 AI 可讀 Markdown

在 AI 時代,「讓 AI 看懂文件」變成一個非常關鍵的能力,但現實世界的資料格式五花八門,從 PDF、Word 到 PPT、甚至影片與音訊,這些內容對 AI 來說其實並不好直接處理。

這時候,MarkItDown 就成為一把真正的「文件瑞士刀」。

由 Microsoft 開源推出,MarkItDown 能將各種格式的檔案,一鍵轉換成乾淨、結構化、AI 友善的 Markdown,讓 ChatGPT、Claude 或各種 AI Agent 能輕鬆理解與分析。

你只要把 https://github.com/microsoft/markitdown 網址貼給 agent ,請他安裝就可以了


🚀 為什麼 MarkItDown 這麼強?

MarkItDown 最大的優勢只有一句話:

👉 幾乎什麼格式都能轉,而且還轉得漂亮

📂 支援格式(強到誇張)

🧾 辦公文件

  • PDF
  • Word(DOCX)
  • PowerPoint(PPTX)
  • Excel(XLSX / XLS)

🌐 網頁內容

  • HTML
  • 直接輸入 URL 解析整個頁面

🖼️ 影像檔

  • JPG / PNG
  • 支援 OCR 文字辨識
  • 可搭配 AI 產生圖片描述

🎧 音訊檔

  • WAV / MP3
  • 自動語音轉文字(Speech-to-Text)

📊 資料格式

  • CSV / JSON / XML

📦 其他進階格式

  • ZIP(自動解壓並轉換)
  • Outlook 郵件
  • YouTube(自動擷取字幕)
  • EPub 電子書

✨ 不只是轉檔,而是「結構理解」

很多轉檔工具的問題是:

👉 轉出來變成一坨純文字(完全不能用)

但 MarkItDown 不一樣,它會:

  • 保留標題層級(# ## ###)
  • 還原表格結構
  • 保留清單與段落
  • 維持超連結

👉 轉出來就是 AI 可以直接理解的 Markdown 結構

這對以下應用非常關鍵:

  • RAG(檢索增強生成)
  • AI 文件摘要
  • Agent 自動閱讀文件

⚡ 安裝與使用(超簡單)

安裝

pip install "markitdown[all]"

👉 如果只需要特定格式:

pip install "markitdown[pdf,docx,pptx]"

CLI 使用

markitdown 報告.pdf -o 報告.md

Python 使用

from markitdown import MarkItDownmd = MarkItDown()
result = md.convert("文件.docx")print(result.markdown)

👉 幾行程式碼就搞定


🤖 搭配 AI:威力直接翻倍

MarkItDown 真正強的地方,是它「原生為 AI 設計」。

🧠 AI 圖片理解

  • 可串接 OpenAI 視覺模型
  • 自動產生圖片描述
  • 讓 AI 看懂圖片內容

🔍 OCR 文字辨識

  • 整合 Azure Document Intelligence
  • 可讀取掃描 PDF / 圖片文字

🔌 MCP(Model Context Protocol)整合

  • 可直接接入 Claude Desktop
  • 或各種 AI Agent 系統

👉 這點對在做 AI Agent / LangChain / 自動化流程 特別重要


🧩 外掛系統

  • 可自訂格式解析
  • 支援企業客製流程

📌 實際應用場景

1️⃣ 餵 AI 吃文件(超省 Token)

👉 先轉 Markdown,再丟 AI

效果:

  • Token 減少最多可達 80%
  • AI 理解更準確

2️⃣ 建構企業知識庫(RAG)

流程:

文件 → MarkItDown → Markdown → Embedding → Vector DB

👉 完整 AI 知識庫 pipeline


3️⃣ AI Agent 文件閱讀能力

在你的 Agent 流程中加入:

文件 → MarkItDown → LLM 分析

👉 Agent 直接具備「讀文件能力」


4️⃣ 會議紀錄自動化

錄音 → 轉文字 → Markdown → AI整理

👉 自動產出結構化會議紀錄


⚠️ 不是萬能

MarkItDown 雖然強,但有幾個限制:

  • 複雜圖表(Chart / Graph)解析較弱
  • 高度排版文件可能失真
  • 不適合做「高保真排版還原」

👉 如果你要的是「完美排版還原」

建議用:
👉 Pandoc

👉 如果你要的是「讓 AI 看懂」
👉 MarkItDown 完勝


🧠 結論:AI 時代的文件標準工具

MarkItDown 解決了一個非常關鍵但常被忽略的問題:

👉 AI 看不懂文件格式

它的價值在於:

  • ✅ 超廣格式支援
  • ✅ 保留結構(不是純文字)
  • ✅ 原生為 AI 設計
  • ✅ 可整合 Agent / RAG / 自動化流程
  • ✅ 免費開源

👉 如果你正在做:

  • AI Agent
  • 文件分析
  • 自動化流程
  • 知識庫建構

MarkItDown 是 AI Agent 必裝工具。

從助手到同事:Multica 如何讓 AI 成為真正的團隊成員

從助手到同事:Multica 如何讓 AI 成為真正的團隊成員

在過去,AI 只是工具
現在,AI 正在變成你的「員工」

而未來,你的團隊中——
真正工作的,可能不再是人類

🧠 什麼是 Multica?

從助手到同事:Multica 如何讓 AI 成為真正的團隊成員

Multica 是一個開源的 Managed Agents(智能體管理)平台,核心概念非常直接:

把 AI 編碼 Agent,變成真正的「隊友」

不像傳統 AI 工具需要你手動下 prompt、盯著結果,
Multica 讓 AI:

  • 自己接任務
  • 自己執行工作
  • 自己回報進度
  • 自己累積能力

👉 就像你真的聘請了一個工程師。

根據官方說明,它的目標是打造「人類 + AI 的混合團隊」基礎設施。


💥 核心理念:AI 不再是工具,而是「員工」

傳統 AI:

  • 你操作它
  • 你監督它
  • 它只是工具

Multica 的 AI:

  • 你分配任務給它
  • 它自己完成工作
  • 它是團隊成員

👉 這是從「工具」到「組織角色」的巨大轉變。


⚙️ Multica 的核心功能

1️⃣ Agent 即隊友

你可以像在 Jira 或 Linear 一樣:

  • 指派任務給 AI
  • AI 會自動認領
  • 在看板上更新進度
  • 主動回報問題

👉 AI 成為專案管理的一等公民


2️⃣ 全自動任務執行

AI 會:

  • 排隊 → 接任務 → 執行 → 完成 / 失敗
  • 全程自動運作
  • 即時回報進度(WebSocket)

👉 不需要再「盯著 AI 跑」


3️⃣ 技能累積(最關鍵)

每一次任務:

➡️ 都會變成「可重用技能」

例如:

  • 部署流程
  • DB migration
  • Code review

👉 團隊能力會「越用越強」


4️⃣ 多 Agent 協作

你可以同時:

  • 跑 10 個 AI 任務
  • 多個 Agent 協同工作
  • 平行處理專案

👉 等於一個 AI 工程團隊


5️⃣ 統一運行與算力管理

  • 本地 + 雲端 runtime
  • 自動偵測 CLI 工具
  • 統一控制台管理

👉 不用自己拼基礎設施


🧩 為什麼這件事重要?

現在 AI 最大的問題是:

  • 每個人用自己的 Agent
  • 知識無法共享
  • 工作流程碎片化

Multica 解決的是:

👉 AI 協作的「組織問題」

它讓:

  • AI 有記憶
  • AI 有角色
  • AI 有協作能力

👉 這就是「AI 組織化」的開始


🏢 這其實是「AI HR 系統」

如果用一句話形容:

Multica = AI 員工管理系統

它提供:

  • 任務分配(像 HR)
  • 進度追蹤(像 PM)
  • 能力累積(像培訓系統)

👉 AI 不只是會做事,還會「成長」


🔮 未來趨勢:公司將變成「人類 + AI 混合組織」

你可以想像未來公司長這樣:

類型角色
人類決策 / 創意 / 策略
AI Agent開發 / 測試 / 自動化 / 文書

甚至:

  • 一個人帶 10 個 AI 工程師
  • 一個團隊管理 100 個 Agent

👉 生產力直接提升 10 倍(甚至更多)


⚔️ Multica vs 傳統 AI 工具

比較傳統 AIMultica
使用方式Prompt任務分配
工作模式單次互動長時間運行
協作多 Agent
記憶技能累積
管理人盯自動化

👉 本質差異:
工具 → 組織系統


🧠 結論:你該開始思考的事

這不是未來,而是現在正在發生的事。

【Hermes Agent WebUI 正式登場】比 OpenClaw 更強?AI Agent 進入「可視化時代」!

【Hermes Agent WebUI 正式登場】比 OpenClaw 更強?AI Agent 進入「可視化時代」!

🧠 Hermes Agent 是什麼?

Hermes Agent 是由 Nous Research 推出的開源 AI Agent 框架,具備:

  • 🔁 跨對話記憶(Memory)
  • 🧠 技能(Skill)可持續累積
  • 🌐 內建網頁瀏覽與工具調用
  • ⏱️ 任務排程(Cron-like)
  • 🔌 OpenAI 相容 API(可接各種 LLM)

👉 本質上,它不是單純聊天機器人,而是「可執行任務的 AI 系統」


🖥️ Hermes WebUI(Dashboard)帶來什麼改變?

1️⃣ 從 CLI → GUI 的巨大轉變

過去:

  • OpenClaw / Agent 系統 → CLI + config + prompt

現在:

  • Hermes WebUI → 點擊操作 + 視覺化管理

👉 這是 AI Agent 商業化的關鍵一步


2️⃣ 多 Agent 管理(未來 SaaS 核心)

透過 WebUI,可以:

  • 管理多個 Agent
  • 設定不同任務流程
  • 控制記憶與技能

👉 這意味著:
👉 你可以做「多人 AI 平台」


3️⃣ 技能(Skill)可視化

Hermes 最大亮點:

任務會被記錄成「技能」,並可重複使用

例如:

  • 自動寫報告
  • 自動抓資料
  • 自動操作瀏覽器

👉 這其實就是:
👉 AI workflow engine(未來企業標準)


Hermes 實作

先更新到最新版本

hermes update

然後就可以直接啟用 hermes webui

hermes dashboard

之後就可以用瀏覽器使用,預設是 http://localhost:9119/

🔍 Hermes WebUI 深度觀察(關鍵洞察)

💡 與 Open WebUI 深度整合

在社群中有人指出:

Hermes 可以當成「有狀態的 LLM endpoint」

意思是:

  • WebUI(前端)
  • Hermes(Agent)
  • LLM(模型)

👉 三層架構:

User → WebUI → Hermes Agent → LL

「Hermes 開箱就像調教一週的 OpenClaw」

官方資訊

https://docs.openwebui.com/getting-started/quick-start/connect-an-agent/hermes-agent

第三方套件

https://github.com/nesquena/hermes-webui

Hermes Agent 完整實測:自我進化 AI Agent 架構,全面取代 OpenClaw!

Hermes Agent 完整實測:自我進化 AI Agent 架構,全面取代 OpenClaw!

🧠 什麼是 Hermes Agent?

近期在 GitHub 爆紅、甚至登頂排行榜的 AI Agent —— Hermes Agent,被視為可能「完全取代」OpenClaw 的下一代架構。

它不只是 AI 工具,而是一個會學習、會記憶、會進化的 Agent 系統

👉 核心概念只有一句話:

「AI 不只是回答問題,而是累積經驗、變強」


🧬 為什麼 Hermes Agent 是結構性突破?

傳統 AI Agent(包含 OpenClaw):

  • 每次任務 = 重新開始
  • 沒有真正「記憶」
  • 沒有「經驗累積」

而 Hermes Agent:

👉 導入「LLM Wiki + 學習迴圈」


🔁 Hermes Agent 的 4 大進化核心機制

1️⃣ Episodic Memory(任務記憶寫入)

每次任務結束,Agent 會寫入完整紀錄:

{
  "task": "部署 API",
  "steps": [
    {"tool": "docker", "result": "success"},
    {"tool": "gcloud", "result": "fail"}
  ],
  "errors": ["permission denied"],
  "duration": "32s"
}
👉 這不是 log,是「可學習資料」

2️⃣ Retrieval(經驗檢索)

下一次遇到類似任務:

👉 不是重來
👉 而是「先查歷史」

例如:

「上次部署失敗是因為 IAM 權限問題」

👉 直接避開錯誤


3️⃣ Skill 抽象(自動技能生成)

當某個流程成功 ≥ 3 次:

👉 自動轉成 skill(Markdown)

# deploy-cloud-run
steps:
- build image
- push to artifact registry
- deploy cloud run
📌 特點:
  • 遵循 agentskills.io 標準
  • 可共享 / 可版本化
  • 真正「技能庫」

👉 這就是 AI 會「學會做事」的關鍵


4️⃣ Honcho 使用者建模(人格記憶)

跨 session 記住你:

  • 偏好用 CLI 還是 GUI
  • 是否喜歡 Terraform
  • 過去拒絕的方案

因為它會變成:

「懂你 workflow 的 AI」


🔍 FTS5 + LLM 搜尋能力(超關鍵)

Hermes Agent 使用:

  • SQLite FTS5 全文搜尋
  • LLM 摘要

你可以直接問:

「上週我們討論過哪個 API 設計?」

👉 它真的找得到,而且會整理給你

這點遠超過一般 AI memory


⚙️ Provider 無痛切換(超實用)

不用改 code:

hermes model

直接切換:

  • OpenAI
  • Claude
  • Ollama
  • 本地模型

👉 完全符合你多模型架構需求


🛡️ 安全性測試(B+ 評級)

Hermes Agent 在安全測試中達到:

👉 B+ 等級

代表:

  • 基本 prompt injection 防禦
  • 任務隔離能力
  • Tool 使用風險控制

📌 對企業環境安全很重要


⚡ 安裝方式(超快)

Mac / Linux / WSL2

curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash

⚔️ Hermes Agent vs OpenClaw

項目Hermes AgentOpenClaw
記憶✅ 長期記憶✅ 依靠 md 文件
學習能力✅ 自動進化❌ 弱
Skill 系統✅ 自動生成✅ 手動安裝
使用者建模✅ Honcho❌ 無
搜尋能力✅ FTS5 + LLM❌ 弱
模型切換✅ 一行指令⚠️ 需設定
圖形介面❌ 無✅ WEB
外部資源❌ 剛開始✅ 支援豐富,skill超多

👉 結論:

Hermes 是「會成長的 Agent」,OpenClaw 是「會執行的 Agent」,我兩個都要


🧠 為什麼它會「越用越強」?

因為它形成一個閉環:

任務 → 記錄 → 檢索 → 優化 → 抽象 skill → 再使用

👉 這就是真正的:

🔥 自我進化 AI


🧩 實際應用(你可以做什麼)

以你現在的技術背景,可以直接做:

1️⃣ DevOps AI Agent

  • 自動部署 Cloud Run
  • 自動修復錯誤
  • 記住你的 GCP 架構

2️⃣ WordPress 維運 Agent

  • 自動修 DB 問題
  • 自動處理圖片路徑
  • 學習你的 wp-cli 操作

3️⃣ AI 自動化工程師

  • 幫你寫 Terraform
  • 幫你 debug CI/CD
  • 幫你優化效能

🧨 關鍵結論

👉 Hermes Agent 不是工具升級
👉 是 AI 架構世代升級

開始使用

hermes gateway

多人使用

可以使用 hermes profile create + 使用者名稱,詳細指令

hermes profile create agent-name

關鍵資源

Agent Skills

HermesAgent One Wechat bot, two AI brains

【2026最新】OpenClaw 一鍵部署教學:用 Hostinger 打造你的私有 AI Agent($7/月)

【2026最新】OpenClaw 一鍵部署教學:用 Hostinger 打造你的私有 AI Agent($7/月)

在 2026 年,AI 不再只是聊天工具,而是「會幫你做事的代理人(AI Agent)」。

而現在,你可以擁有一個——
👉 完全屬於你自己的 AI 智能體(OpenClaw)

不再依賴 SaaS、不再擔心資料外流
👉 私有化 + 24 小時在線 + 可自動執行任務

更關鍵的是:
👉 用 Hostinger,一鍵部署只要約 $7/月

🤖 什麼是 OpenClaw?

OpenClaw 是一款開源 AI Agent(AI 智能代理)平台,可以讓 AI 不只是聊天,而是「幫你做事情」。

它可以:

  • 自動回覆訊息(Telegram / WhatsApp / Slack)
  • 幫你整理資料、寫報告
  • 控制瀏覽器執行任務
  • 呼叫 API、自動化流程
  • 長期記憶與上下文管理

👉 本質上,它是:

「你的私人 AI 員工」

而且是——
🟢 24 小時不休息
🟢 永遠在線
🟢 完全由你掌控


⚡ 為什麼 OpenClaw 爆紅?

OpenClaw 在 2026 年爆紅的原因只有一個:

👉 它讓 AI 從「聊天」進化成「做事」

傳統 AI(ChatGPT):

  • 只能回答問題

OpenClaw:

  • 能執行任務(真正 Agent)

例如:

  • 幫你每天抓股價 → 傳 Telegram
  • 自動回覆客戶訊息
  • 幫你爬資料 → 整理成報告
  • 自動操作網站(RPA + AI)

👉 這就是「AI Agent 時代」


☁️ 為什麼用 Hostinger 部署 OpenClaw?

如果你自己部署 OpenClaw:

❌ 要裝 Docker
❌ 要設定環境
❌ 要處理網路與安全

但用 Hostinger:

👉 全部幫你做好了

✅ Hostinger + OpenClaw 優勢

  • 一鍵部署(不用 CLI)
  • 預先配置 AI 環境
  • 全球 VPS(穩定 24/7)
  • 免費網域 + SSL
  • 防火牆 + 備份

👉 官方直接提供 OpenClaw 模板


💰 成本有多低?

👉 最低只要約 $7/月

實際成本結構:

項目價格
VPS 主機約 $5~$10/月
AI API(選擇性)視使用量
總成本約 $7/月起

👉 比你請一個員工便宜 1000 倍 😅

甚至有資料指出:

👉 VPS 部署 OpenClaw 最低約 $5/月即可開始

🚀 60 秒部署流程(Hostinger)

超簡單流程:

Step 1️⃣

購買 VPS(選 KVM 2 即可)

Step 2️⃣

選擇 OpenClaw 模板

Step 3️⃣

點「Deploy」

Step 4️⃣

登入 Web UI

Step 5️⃣

接上 AI(OpenAI / Claude / Ollama)

👉 完成 🎉


🔐 私有 AI 的最大價值

為什麼大家開始瘋 OpenClaw?

1️⃣ 資料完全私有

不像 SaaS AI:

  • 不會被拿去訓練
  • 不會外洩

2️⃣ 完全控制

  • 你決定 AI 做什麼
  • 你決定權限

3️⃣ 可自動化一切

  • API
  • 瀏覽器
  • 任務流程

👉 這才是真正的「AI Agent」


⚠️ 但一定要注意

OpenClaw 很強,但也有風險:

  • AI 可以執行指令(高權限)
  • 插件可能有安全問題
  • Token 洩漏 = 全部被控

👉 建議:

  • 使用 VPS(不要跑在本機)
  • 分離權限
  • 使用防火牆 / Cloudflare

🧠 誰適合用?

非常適合你這類型:

  • DevOps / 架構師
  • WordPress / SaaS 維運
  • 想做 AI Agent 商業化
  • 想打造自動化系統

甚至可以做:

👉 「AI SaaS 創業」


🔮 未來趨勢(很重要)

未來會變成:

  • 每個人都有一個 AI Agent
  • 每家公司都有 AI 自動化流程
  • SaaS → AI Agent 化

👉 OpenClaw 就是這個入口

相關資訊

官方網站

https://www.hostinger.com/openclaw