ollama pull 很慢時,不要先找某個模型的 blob 直鏈。模型 manifest、分層檔案和物件儲存地址會變化,複製舊連結既不穩定,也可能繞過 Ollama 自己的完整性檢查。
更可靠的做法是先判斷慢在哪一層:Ollama 服務、DNS、HTTPS 代理、證書、物件儲存鏈路、磁碟,還是已經損壞的未完成下載。
先記錄版本和錯誤
|
|
不要只記錄“很慢”。至少保留錯誤原文、發生時間、模型名、系統和 Ollama 版本。常見現象對應的方向不同:
| 現象 | 優先檢查 |
|---|---|
TLS handshake timeout |
DNS、代理、證書、網路丟包 |
unexpected EOF |
連線中斷、代理重置、磁碟或快取 |
context deadline exceeded |
服務端連線、代理超時、網路質量 |
no space left on device |
模型目錄所在磁碟 |
| 一直停在 resolving manifest | DNS、registry 訪問或代理 |
| 下載完成後重新拉取 | 快取目錄許可權、檔案損壞、模型目錄變化 |
確認 Ollama 服務正常
先測試本地 API,而不是直接把所有問題歸因於公網:
|
|
如果本地 API 都無法訪問,應先重啟 Ollama 並檢視服務日誌。Windows 日誌目錄:
|
|
模型和配置通常位於:
|
|
Linux 標準安裝檢視日誌:
|
|
Docker:
|
|
開啟除錯日誌
Windows 先從托盤完全退出 Ollama,再從 PowerShell 啟動除錯模式:
|
|
若當前安裝路徑無法直接找到 ollama app.exe,在 %LOCALAPPDATA%\Programs\Ollama 中確認實際檔名和位置。復現一次下載後,檢視 server.log 中的目標主機、狀態碼和重試資訊。
Linux systemd 可新增臨時 override:
|
|
寫入:
|
|
然後執行:
|
|
檢查 DNS 與 HTTPS
Windows:
|
|
Linux:
|
|
返回 401 Unauthorized 不一定是故障,它至少說明 DNS、TCP 和 TLS 已經走通;真正需要關注的是解析失敗、連線超時、證書驗證失敗或被代理返回 HTML 錯誤頁。
如果只有某一網路環境失敗,可以用手機熱點做一次對照。熱點成功、原網路失敗,說明問題更可能位於本地閘道器、DNS、代理或運營商鏈路,而不是模型本身。
正確配置代理
Ollama 官方建議模型下載使用 HTTPS_PROXY。不要隨意設定 HTTP_PROXY,因為 Ollama 本地 API 本身使用 HTTP,錯誤設定可能干擾客戶端連線。
當前 PowerShell 會話測試:
|
|
確認有效後,再把 HTTPS_PROXY 寫入 Windows 使用者環境變數,並完全退出、重新啟動 Ollama。桌面程式不會自動繼承啟動後才修改的環境變數。
Linux systemd:
|
|
Docker:
|
|
TLS 證書錯誤怎麼處理
公司代理可能重新簽發 HTTPS 證書。看到 certificate signed by unknown authority 時,應把公司 CA 安裝進系統或容器信任庫,而不是關閉證書驗證。
容器示例:
|
|
不要從不可信網站下載所謂“通用證書”,也不要把 API Key、代理密碼或完整日誌公開上傳。
檢查模型目錄和磁碟
官方預設模型位置:
- Windows:
%USERPROFILE%\.ollama\models - macOS:
~/.ollama/models - Linux 標準服務:
/usr/share/ollama/.ollama/models
Windows 檢查空間:
|
|
Linux:
|
|
若用 OLLAMA_MODELS 改過位置,要確認執行 Ollama 的賬號有讀寫許可權。Linux 標準服務通常由 ollama 使用者執行:
|
|
中斷後如何恢復
先直接重試同一個模型:
|
|
Ollama 會根據已有內容繼續處理。不要在服務執行時批次刪除 blobs,也不要把網上找到的 blob 檔案直接塞進快取。
如果同一層反覆校驗失敗:
- 停止 Ollama。
- 備份模型目錄清單。
- 從日誌確定失敗的是哪一個 digest。
- 只移走對應的未完成或損壞檔案。
- 重新啟動並再次執行
ollama pull。
不確定目標時,寧可把可疑檔案移動到臨時目錄,也不要直接刪除整個模型庫。
驗收下載結果
|
|
同時檢查日誌中不再迴圈出現重試、校驗失敗或寫盤錯誤。下載速度瞬時變快不代表問題解決;能完成拉取、重啟後仍能載入,才算透過。
仍然很慢時應收集什麼
- Ollama 版本與作業系統。
- 模型名和大致大小。
- 錯誤發生時間與完整錯誤文字。
- 是否使用代理、VPN、Docker 或公司證書。
registry.ollama.ai:443的連通結果。- 脫敏後的服務日誌片段。
- 模型目錄剩餘空間。
這些資訊足以區分客戶端問題、網路鏈路問題和上游服務問題,也比分享會過期的下載直鏈更容易復現。
參考資料: