dsh-llama-model-manager 插件介紹

前言

在本地部署大模型時,開發者常面臨模型切換繁瑣、進程管理混亂的問題。直接將 DeepSeek Harness (DSH) 連接到 llama-server 雖然可行,但在需要動態更換模型時,通常需要手動停止服務、修改配置並重啓,不僅操作繁瑣,還容易導致請求中斷或顯存未正確釋放。dsh-llama-model-manager 插件旨在解決這一痛點,通過一個穩定的 OpenAI 兼容網關,自動管理本地模型的加載與卸載。

插件簡介

該插件是 DeepSeek Harness (DSH) 的一個組件,專門用於在 Windows 環境下運行 llama-server.exe,並將本地 GGUF 模型通過 OpenAI 兼容接口暴露給 DSH。它接管了模型的整個生命週期——包括啓動、停止、切換和故障恢復——使得 DSH 只需連接一個固定的 URL,而無需關心底層模型的變化。

核心功能

  • 生命週期管理:自動處理模型的加載與卸載。在需要切換模型時,插件會先停止舊模型,再加載新模型。
  • 穩定網關:提供一個固定的 OpenAI 兼容網關地址(默認端口 8080),DSH 無需頻繁更改配置。
  • 優雅關閉與顯存釋放:使用 Ctrl+C 信號而非強制終止進程,確保 llama.cpp 能正確清理資源,避免顯存泄漏。
  • 隱蔽控制台:進程啓動時隱藏控制台窗口,避免閃爍干擾。
  • 孤兒進程處理:記錄進程狀態並提供安全機制,防止 DSH 崩潰後遺留的資源泄漏。
  • 可視化設置:提供設置頁面,實時顯示狀態、日誌和模型列表,支持直接在界面上操作。

安裝與啓用

確保環境滿足以下要求:
* 操作系統:Windows 10/11。
* 運行環境:Node.js >= 20.10。
* 依賴項:DSH Web UI,以及 llama-server.exe(來自 llama.cpp)。

安裝命令如下:

dsh plugin --profile web add github:DoctorxPriestess/dsh-llama-model-manager

安裝後需重啓 DSH 以加載插件。

配置與使用

在 DSH 的設置頁面中,填寫 llama-server.exe 的路徑及模型信息。隨後在 DSH 的 settings.yaml 中配置 Provider,指向插件的網關地址:

llm-pi-ai:
  providers:
    llamacpp:
      displayName: llama.cpp local
      api: openai-completions
      apiKeyEnv: LLAMACPP_API_KEY
      baseURL: http://127.0.0.1:8080/v1
      models:
        - id: qwen38-iq3s
          name: Qwen3.8-27B IQ3_S
          contextWindow: 131072

端口說明:
* 網關端口:8080(DSH 連接地址)。
* 內部端口:18080(llama-server 監聽地址)。

停止方法:
插件支持通過設置 stopMethod 控制停止行爲:
* auto(默認):優先發送 Ctrl+C,超時後強制終止。
* ctrl-c:僅發送 Ctrl+C,不強制終止。
* taskkill:跳過 Ctrl+C,直接強制終止。

注意事項

  • 平臺限制:插件僅支持 Windows 10/11。
  • 權限與安全:插件以 DSH 進程的權限運行,安裝前建議查閱源碼。
  • 配置隔離:插件本身不讀取或寫入 DSH 的 settings.yaml,但在配置 Provider 時需正確填寫 baseURL。

總結

dsh-llama-model-manager 通過自動化生命週期管理,解決了本地模型切換時的資源泄漏和操作繁瑣問題,爲開發者提供了一個穩定且易於管理的本地推理解決方案。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜