dsh-local-model-manager
Verifieddsh-local-model-manager · v0.1.8 · MIT · Web UI
Local model manager plugin for DeepSeek Harness: discover models, one-click configure, start/stop oMLX and llama.cpp, monitor memory and throughput, register into DSH.
Install
dsh plugin add dsh-local-model-manager Confirm the layer applied with dsh --profile default --dump-config — see the install guide.
Source
Published to npm without a public repository. Inspect the package contents before installing.
Tags
Creators
Readme
dsh-local-model-manager
本地模型管理插件,为 DeepSeek Harness 的左侧栏增加一个「模型管理」页面:
- 自动扫描本机模型目录,生成模型信息(参数量、量化、格式、加载器);
- 一键配置实例(选端口、建目录、写启动参数、生成上下文设置);
- 启动 / 卸载 / 重启模型服务;
- 实时监控内存(统一内存 / 显存)、吞吐、缓存、MTP;
- 查看服务日志、清理 SSD 缓存、复制连接信息;
- 把已加载的本地模型一键注册进 DSH 的模型选择器。
支持 macOS + oMLX 与 Windows / Linux + llama.cpp,同一套 UI 与交互。
功能
| 分类 | 能力 |
|---|---|
| 发现 | 默认目录扫描、注册目录、注册单个模型(目录或 .gguf)、非 LLM 预检测 |
| 配置 | 一键创建 oMLX / llama.cpp 实例,自动选端口、建实例目录与缓存目录、写 model_settings.json |
| 生命周期 | 启动、卸载并停止、重启;llama.cpp 输出重定向到日志文件 |
| 监控 | 模型占用 / 上限、实时 tok/s、预填 / 解码、缓存盘、命中率、MTP 接受率、会话累计 token |
| 系统 | 统一内存(Metal)或系统内存 + NVIDIA 显存(nvidia-smi)、swap、磁盘余量 |
| 运维 | 日志查看(按模型独立目录)、清空缓存、复制 API 地址 / Key / 模型 ID |
| 集成 | 写入 llm-pi-ai 的 volatile providers,运行时加入 DSH 模型列表,无需重启 |
界面
- 两种布局:缩略表格与大卡片,右上角切换,选择保存在
localStorage; - 三档主题:浅色 / 深色 / 跟随;跟随模式使用 DSH 的
--dsw-alias-*语义 Token; - 每个模型一张卡,数据每 5 秒刷新。
安装
# npm(发布后)
dsh plugin add dsh-local-model-manager
# 本地 tarball
dsh plugin add ./dsh-local-model-manager-0.1.0.tgz
# 源码目录
dsh plugin add /path/to/dsh-local-model-manager
安装后重启 DeepSeek Harness,左侧出现「模型管理」。
快速开始
- 准备推理引擎
- macOS:安装 oMLX(0.7.x);
- Windows / Linux:安装
llama-server,加入PATH,或在配置中写llamaBin。
- 添加模型目录:页面右上角「+目录」,选择模型根目录(默认
~/models、/Volumes/AI/models)。 - 一键配置:在「未配置的本地模型」里点击目标模型的「一键配置」。
- 启动:回到卡片点击「启动并加载」。
- 接入 DSH:点击「加入 DSH 模型列表」,即可在会话的模型选择器中使用。
配置
配置文件:~/.dsh/model-manager.json(首次运行自动生成)。
{
"autoDiscover": false,
"modelDirs": ["/Users/me/models"],
"cacheRoot": "/Volumes/AI/caches",
"defaultCacheGb": 80,
"maxContext": 262144,
"llamaContext": 32768,
"llamaBin": "/usr/local/bin/llama-server",
"llamaVerbosity": 4,
"gpuBin": "nvidia-smi",
"instances": [
{
"key": "qwen150",
"name": "Qwen3.8-Flash-Next",
"port": 8000,
"modelId": "Qwen3.8-Flash-Next-Uncensored-oQ6e-mtp",
"modelPath": "/Volumes/AI/models/Qwen3.8-Flash-Next-Uncensored-oQ6e-mtp",
"runner": "omlx",
"start": ["/Users/me/venvs/omlx/bin/omlx", "serve", "..."],
"cacheDir": "/Volumes/AI/caches/qwen150",
"cacheMaxGb": 300,
"logPath": "/Users/me/omlx-instances/qwen150/state/logs/server.log"
}
]
}
| 字段 | 说明 |
|---|---|
modelDirs |
扫描根目录列表 |
autoDiscover |
是否自动扫描 ~/omlx-instances/*.json(默认 true) |
cacheRoot |
新实例的缓存根目录 |
defaultCacheGb |
oMLX SSD 缓存上限 |
maxContext |
oMLX 实例上下文上限 |
llamaContext |
llama.cpp 实例上下文长度 |
llamaBin / llamaVerbosity |
llama-server 路径与日志级别(-lv) |
gpuBin |
nvidia-smi 路径 |
registeredModels |
通过「+模型」注册的单个模型路径 |
Host API
插件在 DSH Host 内启动一个仅本机/内网使用的 HTTP 服务(默认 8098,需 key):
GET /discover 模型注册表与扫描结果
GET /sysinfo 内存 / Metal 上限
GET /gpu NVIDIA 显存信息
GET /cacheinfo 按模型统计缓存目录(30s TTL)
POST /clearcache 清空某模型缓存
GET /logs 读取服务日志
GET /mtp oMLX MTP 接受率
GET /llamastats llama.cpp 日志解析出的预填/解码速率与 token 数
POST /configure 一键创建实例
POST /start /stop 启停实例
POST /register 写入 DSH 模型列表
POST /addDir /addModel 注册目录 / 单个模型
安全说明
- 本插件是 DSH Host 侧的受信任代码,会执行启停进程、读写模型与缓存目录;
- Host API 使用静态 key,仅绑定本机与内网,请勿暴露到公网;
- 不做全盘扫描,只读取显式注册的目录;
- 启动命令来自配置文件,不执行模型输出或远程内容;
- 一键配置只接受含
config.json的模型目录或.gguf文件,并做非 LLM 预检测。
免责声明
本工具仅为大语言模型加载器,不提供、不修改、不审查任何模型的生成能力与内容。实际生成的内容完全取决于用户自行选择并加载的大语言模型。
使用者应自行选择模型、配置安全围栏(系统提示词、内容过滤、访问控制等),并确保使用方式符合当地法律法规。本工具不对用户使用任何模型后输出的任何结果承担责任。
兼容性
| 平台 | 推理引擎 | 显存/内存监控 |
|---|---|---|
| macOS (Apple Silicon) | oMLX | 统一内存 + Metal 上限 |
| Windows | llama.cpp | 系统内存 + nvidia-smi |
| Linux | llama.cpp | 系统内存 + nvidia-smi |
要求 DSH >= 0.2.1-rc.3,Node.js >= 20(使用 DSH 自带运行时)。
开发
# 本地安装到某个 profile
dsh plugin add /path/to/dsh-local-model-manager
# 修改 client.js / index.js 后重启 DSH 生效
index.js:Host 半,注册表、扫描、生命周期、缓存、日志、DSH 注册;client.js:浏览器半,侧栏入口与页面(手写模块加载器包,无需构建);cordis.patch.yml:安装时插入sidebar.panellist与main两个 slot。
Roadmap
- vLLM / LM Studio runner
- 多卡绑定(
CUDA_VISIBLE_DEVICES) - llama.cpp 每模型显存占用(
nvidia-smi --query-compute-apps) - 插件索引与一键安装
License
MIT