~/tools / 在自己的伺服器上執行本機 LLM / Ollama Model Info Reader
Ollama Model Info Reader — 讀取 ollama show:上下文、層數、能力、授權、KV cache
貼上 Ollama 模型的 /api/show 回應,或是 ollama show 或 ollama show --verbose 的輸出,就能一眼看懂這個模型:大小、量化、支援的最長上下文、層數與注意力頭、能做什麼(tools、vision、thinking、embeddings 等)、預設參數、系統提示詞與授權。工具也會依各種上下文長度計算 KV cache,也就是隨 num_ctx 增加的記憶體。資料不會離開你的瀏覽器。
如何取得
請把 qwen2.5:7b 換成你的模型。Ollama 執行時,兩種方式都能用。
curl http://localhost:11434/api/show -d '{"model": "qwen2.5:7b"}'
ollama show qwen2.5:7b --verbose已視為/api/show 回應讀取。
- 中繼資料中沒有 head 大小,因此以 embedding_length ÷ head_count = 128 計算。
模型
- 名稱
- Qwen2.5 7B Instruct
- 架構
- qwen2
- 參數
- 7.62B
- 量化
- Q4_K_M
- 最長上下文
- 32768
- 層數
- 28
- 注意力頭
- 28(KV:4)
- head 大小
- 128
- 嵌入長度
- 3584
- 範本來源
- go_template
能力
- completion透過 /api/generate 與 /api/chat 產生文字。
- tools接受 tools,因此可以呼叫函式。
各上下文長度的 KV cache
以預設類型 f16 計算。這些記憶體是在權重之外額外需要的。
| 上下文(token) | KV cache |
|---|---|
| 2048 | 112 MiB |
| 4096Ollama FAQ 中的預設值 | 224 MiB |
| 8192 | 448 MiB |
| 16384 | 896 MiB |
| 32768支援的最長長度 | 1792 MiB |
系統提示詞
You are Qwen, created by Alibaba Cloud. You are a helpful assistant.
授權
- general.license
- apache-2.0
- general.license.link
- https://huggingface.co/Qwen/Qwen2.5-7B-Instruct/blob/main/LICENSE
Apache License ...
KV cache = 2 × 層數 × KV heads × head 大小 × 2 位元組 (f16) × 上下文長度。在我們的測試中,這些數值與 Ollama 的記錄相符。Ollama 的 FAQ 指出,q8_0 約使用 f16 的一半,q4_0 約使用四分之一(以 OLLAMA_KV_CACHE_TYPE 設定,並搭配 Flash Attention)。
最長上下文是模型所支援的長度,而不是 Ollama 實際使用的長度。Ollama 的 FAQ 給出的預設值是 4096 個 token;請求或模型中的 num_ctx,或伺服器上的 OLLAMA_CONTEXT_LENGTH,都能改變它。
欄位依據 Ollama 的 API 參考文件與原始碼(v0.40.15),並於 2026-11-07 以 Ollama 0.40.11 驗證。 Ollama: Show model details
一切都在你的瀏覽器中完成。本工具不會連線到任何地方。
ollama show 與 /api/show 端點會描述已安裝的模型,但最有用的資訊散落在一長串 GGUF 中繼資料裡:層數是 <architecture>.block_count,最長上下文是 <architecture>.context_length,決定 KV cache 大小的注意力頭則是 attention.head_count 與 attention.head_count_kv。本工具會讀取 /api/show 的 JSON,或 ollama show 的文字(簡短版或 --verbose),並把這些資訊集中在一處。它會列出各項能力及其意義,名稱採用 Ollama 原始碼(v0.40.15)中的寫法:completion、tools、insert、vision、embedding、thinking、image、audio、decision 與 speech。對於 thinking 模型,它會顯示 think 接受的值與預設值。它也會顯示模型中設定的參數(例如 stop、temperature 或 num_ctx)、系統提示詞與授權。根據層數、KV heads 與 head 大小,它會以預設類型 f16 計算 KV cache:2(鍵與值)× 層數 × KV heads × head 大小 × 2 位元組 × 上下文長度。我們已用 Ollama 自己的記錄驗證這個公式:qwen2.5:7b 在 4096 個 token 時為 224 MiB,在 8192 時為 448 MiB;qwen2.5:0.5b 在 4096 時為 48 MiB,在 32768 時為 384 MiB。head 大小在模型有 attention.key_length 時取自該欄位,否則取 embedding_length 除以 head_count。使用滑動視窗的模型,或各層共用 KV cache 的模型,實際用量會比表格所示更少;工具會明確說明,而不是猜測。我們用 Ollama 0.40.11 上 qwen2.5:7b 的 /api/show、ollama show 與 ollama show --verbose 實際輸出,以及 Ollama API 參考文件中的範例來檢驗本工具。
這個工具的核心邏輯以 MIT 授權開放原始碼。 github.com/seigo5555/toolkitbox-lib/src/ollama-show.ts
使用情境
- 在以模型為基礎開發之前,先確認它是否支援 tools、圖片或 thinking
- 查看模型支援的最長上下文,以及各種長度下 KV cache 需要多少記憶體
- 查看模型隨附的授權、預設參數與系統提示詞
使用方法
- 以模型名稱執行 curl http://localhost:11434/api/show,或執行加上 --verbose 的 ollama show。
- 貼上輸出。工具會自動判斷是三種格式中的哪一種。
- 閱讀模型摘要、能力與 KV cache 表格。若要加上權重,請開啟記憶體估算工具。
FAQ
為什麼我貼上的內容沒有顯示 KV cache?
ollama show 的簡短輸出不包含層數與注意力頭。請貼上 /api/show 的回應,或 ollama show --verbose 的輸出。
模型支援 32768 個 token,為什麼 Ollama 用得比較少?
中繼資料中的上下文長度是模型訓練時支援的最長長度。Ollama 的 FAQ 指出預設的上下文視窗為 4096 個 token;Ollama 的原始碼與伺服器記錄顯示,伺服器會依 GPU 記憶體選擇預設值。請求可以設定 num_ctx,模型可以在其參數中設定,伺服器也可以設定 OLLAMA_CONTEXT_LENGTH。
KV cache 的大小有多準確?
對於沒有滑動視窗、也沒有共用 KV 層的模型,在我們的測試中,這個公式算出的大小與 Ollama 記錄中的完全一致(qwen2.5:7b 在 4096 個 token 時為 224 MiB)。這是針對預設類型 f16;Ollama 的 FAQ 指出,啟用 Flash Attention 時,q8_0 約使用一半,q4_0 約使用四分之一。
參數與上下文長度有什麼差別?
上下文長度來自模型檔案,是最大值。num_ctx、temperature 或 stop 等參數是在模型的 Modelfile 中設定的預設值,請求可以覆寫它們。
範本來源是什麼意思?
它說明聊天提示詞來自何處,例如 go_template 表示模型內的 Go 範本,renderer 表示 Ollama 內建的 renderer。這些值列在 Ollama 的 API 參考文件中。
我的資料會被傳到任何地方嗎?
不會。輸出內容是在你的瀏覽器中讀取的。