在 Windows 上部署本地 Agent,最省心的結構通常不是把模型服務、Docker、終端和代碼工具散落在 Windows、WSL 與多個虛擬環境裏,而是把它們放進同一個 WSL2 Ubuntu 發行版:
|
|
這樣 Ollama 和 Agent 直接通過 WSL 內的 localhost 通信,路徑、權限和日誌都在 Linux 環境內。Windows 端可以繼續用 Windows Terminal、VS Code Remote WSL 或資源管理器訪問項目。
先說結論
最小可用路線是:
|
|
不要一開始就讓本地 Agent 獲得全盤權限,也不要先追求最大的模型。先用能穩定運行的模型驗證流程,比先折騰複雜代理、遠程端口和多 Agent 編排更重要。
第一步:安裝 WSL2 和 Ubuntu
在 Windows 的管理員 PowerShell 中執行:
|
|
重啓後,默認會安裝 Ubuntu。首次打開 Ubuntu 時,按提示創建 Linux 用戶名和密碼。
確認發行版使用 WSL2:
|
|
如果舊發行版仍是版本 1,可轉換:
|
|
進入 Ubuntu:
|
|
後續大部分命令都在 Ubuntu 終端裏執行,而不是 PowerShell。
第二步:準備 Ubuntu 基礎環境
進入 WSL 後先更新系統:
|
|
確認環境:
|
|
項目建議放在 Linux 文件系統內,例如:
|
|
不要把高頻 Git、Node.js、Python 虛擬環境和大規模依賴都放在 /mnt/c/... 下運行。跨文件系統訪問在某些開發任務裏會更慢,也更容易遇到權限和文件監聽差異。需要從 Windows 打開項目時,可使用 VS Code 的 Remote WSL 功能。
第三步:在 WSL 內安裝並驗證 Ollama
按 Ollama Linux 安裝方式執行:
|
|
先在當前終端啓動服務:
|
|
另開一個 WSL 終端,下載並測試一個模型:
|
|
模型選擇必須按你的 GPU 顯存或 CPU/內存決定。沒有可用 GPU 時,先用更小模型驗證流程;不要把“大模型文件能下載”誤認爲“本機能流暢推理”。
確認服務和模型狀態:
|
|
如果 ollama run 本身不能穩定輸出,先解決模型、顯存、驅動或內存問題,再接 Agent。
第四步:檢查 WSL GPU 是否真的可用
有 NVIDIA GPU 時,在 WSL 內執行:
|
|
能顯示顯卡不等於 Ollama 已經使用 GPU,但它至少證明 WSL 看到了驅動。啓動模型後,再執行:
|
|
觀察模型是否使用 GPU、顯存是否增長。
如果 nvidia-smi 不存在或報錯,先檢查 Windows 的 NVIDIA 驅動、WSL 版本和 GPU 支持,不要急着在 Ubuntu 內反覆安裝桌面 Linux 驅動。WSL 的 GPU 支持有自己的驅動鏈路。
第五步:讓 Codex 使用本地 Ollama
Codex 提供 OSS 模式,可選擇 Ollama 或 LM Studio 作爲本地提供方。在 WSL 內安裝並可運行 Codex 後,進入你的項目目錄:
|
|
首次建議使用只讀權限啓動:
|
|
先給一個不修改文件的任務:
|
|
確認本地模型能讀懂倉庫、回答穩定後,再按需使用 workspace 寫入權限。不要因爲它是本地模型,就跳過 Git、測試和權限控制。
如果想把 Ollama 作爲默認本地提供方,在用戶級 Codex 配置 ~/.codex/config.toml 加入:
|
|
之後用下面命令即可:
|
|
注意,提供方相關配置應放在用戶級配置中,而不是項目裏的 .codex/config.toml。項目配置不應偷偷改變你機器的模型提供方。
第六步:需要常駐服務時啓用 systemd
新安裝的 WSL Ubuntu 通常已默認使用 systemd。先檢查:
|
|
若當前發行版沒有啓用 systemd,編輯:
|
|
加入:
|
|
然後回到 Windows PowerShell:
|
|
重新進入 Ubuntu 後再檢查 systemctl status。
是否把 Ollama 做成常駐服務,要看安裝方式和你是否需要後臺 API。剛開始學習時,保持一個 ollama serve 終端最容易看到日誌;確認穩定後,再用 systemd 管理服務。
WSL 內的路徑、端口和 API
默認情況下,Ollama 服務使用:
|
|
如果 Agent、腳本和 Ollama 都在同一個 WSL 發行版中,優先使用這個本地地址,不需要先開放局域網端口。
測試 API:
|
|
需要在 Windows 程序、手機或局域網其他設備中調用時,再單獨設計網絡暴露方式、反向代理和鑑權。不要把裸露的本地模型端口直接映射到公網。
推薦的資源分級
| 硬件情況 | 建議的起步方式 |
|---|---|
| 無獨顯、8GB–16GB 內存 | 小模型、只讀分析、摘要和簡單腳本 |
| 8GB 顯存 | 7B/8B 量化模型,單用戶短到中等上下文 |
| 12GB–16GB 顯存 | 8B 更舒適,可謹慎嘗試更大量化模型 |
| 24GB+ 顯存 | 可考慮更大模型、長上下文或更復雜的本地 Agent 任務 |
模型越大不代表 Agent 越可靠。對本地 Agent 來說,命令執行穩定性、上下文、工具調用能力和任務拆分方式,同樣影響結果。
最容易踩的坑
1. Windows 和 WSL 各跑了一套 Ollama
這會讓你分不清 Agent 實際連到哪一個服務。初次部署建議只在 WSL 內運行一套 Ollama,所有測試都在同一個 WSL 終端完成。
2. 在 /mnt/c 裏跑所有開發任務
可以訪問,但依賴安裝、文件監聽、Git 性能和 Linux 權限行爲未必理想。優先把活躍項目放到 ~/projects。
3. 本地模型一開始就允許寫文件
先用 --sandbox read-only 驗證模型是否理解任務。進入修改階段後,也應先讓它說明計劃,再檢查 diff、運行測試並用 Git 保留回退點。
4. 端口開放後沒有鑑權
本地 API 一旦允許局域網訪問,就不再只是“自己電腦上的服務”。至少限制防火牆來源,必要時在反向代理層增加鑑權和 HTTPS。
5. 以爲安裝成功就會自動後臺運行
WSL 關閉或發行版被停止後,前臺進程會退出。需要長期 API 時,先確認 systemd、服務狀態和 Windows/WSL 的運行策略。
總結
Windows WSL 部署本地 Agent,最可靠的第一版是:
|
|
讓模型、Agent 和代碼都在同一個 WSL 環境裏,能減少一半以上的路徑、端口和權限問題。等最小流程穩定後,再考慮 Docker、多模型路由、RAG 或遠程訪問。
參考: