LM Studio简介
LM Studio 在本机跑 GGUF(以及 Apple Silicon 上的 MLX),带聊天、文档问答和 localhost:1234 的 OpenAI 兼容接口。安装包自带 lms:get、load、server start 即可下载、装入内存并对外服务;无界面机器用 llmster。
LM Studio简介
LM Studio 是在个人电脑上发现、下载并运行开源权重的桌面应用。模型文件留在本机,对话和 HTTP 服务默认只听
localhost。命令行工具lms随安装包提供,用来拉模型、装入内存、开关本地服务;不需要图形界面时用无头守护进程 llmster。下文按官方文档整理功能、安装条件和常用命令,版本与参数以 LM Studio 文档 当时说明为准。
参考与延伸阅读:
- 文档首页:https://lmstudio.ai/docs/app
- 系统要求:https://lmstudio.ai/docs/app/system-requirements
- 应用、llmster 与 lms:https://lmstudio.ai/docs/app/basics/lmstudio-vs-llmster-vs-lms
- CLI:https://lmstudio.ai/docs/cli
lms server start:https://lmstudio.ai/docs/cli/serve/server-start- OpenAI 兼容接口:https://lmstudio.ai/docs/developer/openai-compat
- 无头运行:https://lmstudio.ai/docs/developer/core/headless
lms源码(MIT):https://github.com/lmstudio-ai/lms
目录
1. 三件套
官方把产品拆成三块,不要混成「一个二进制」。
| 名称 | 是什么 | 何时用 |
|---|---|---|
| LM Studio 桌面应用 | 图形界面,能力最全 | 本机聊天、挑模型、看日志 |
| llmster | 无 GUI 的后台守护进程 | Linux 服务器、无显示器的 GPU 机器、开机自启 |
lms | 命令行,同时驱动上面两者 | 脚本化下载、加载、起停服务 |
lms 随桌面安装包或 llmster 一起带上,装在 ~/.lmstudio/bin/(Windows 为 %USERPROFILE%\.lmstudio\bin\)。升级应用时 CLI 一并更新。CLI 本身以 MIT 在 lmstudio-ai/lms 开发;桌面应用是独立的安装包,不是把整个 LM Studio 仓库当开源推理引擎来编译。
执行 lms 时若应用或守护进程没在跑,官方说明会自动把它拉起来。
2. 主要功能
桌面端覆盖日常本地推理,而不是集群调度。
| 能力 | 说明 |
|---|---|
| 发现与下载 | Discover 页搜索 Hugging Face;也可把 用户/模型 或完整仓库 URL 贴进搜索框 |
| 对话 | 内置多轮聊天,可调温度、上下文等预设 |
| 文档问答 | 上传本地文档,作为当轮上下文(应用内 RAG,不是独立向量库产品) |
| 推理运行时 | 全平台用 llama.cpp 跑 GGUF;Apple Silicon 另支持 MLX。运行时用 ⌘⇧R(macOS)或 Ctrl⇧R(Windows / Linux)管理,命令行对应 lms runtime |
| 本地服务 | Developer 页打开服务,或 lms server start。默认 http://localhost:1234,提供原生 REST,以及 OpenAI / Anthropic 兼容端点 |
| MCP | 可把 MCP 服务接到本地模型上使用 |
| 进阶加载 | 导入已有权重、并行请求、按模型设默认参数、提示模板、推测解码 |
| 离线 | 权重下到本机后,断网仍可对话;没文件就没有模型可跑 |
量化档常见 Q4_K_M、Q8 等:Q 表示量化,位数越低文件越小、质量损失越大。官方建议机器够用时选 4-bit 及以上。
3. 系统要求与安装
安装包从官网下载页获取,没有统一的 apt install。先看机器是否在支持列表里。
| 系统 | 要求 |
|---|---|
| macOS | Apple Silicon(M1–M4),macOS 14 及以上;建议 16GB 内存。8GB 仍可试小模型和较短上下文。不支持 Intel Mac |
| Windows | x64 与 ARM(如骁龙 X Elite)。x64 需要 AVX2。建议 16GB 内存、独显至少 4GB 显存 |
| Linux | x64 与 ARM64,发行物是 AppImage。文档写明 Ubuntu 20.04 及以上;高于 22 的版本官方标注测试不足。x64 默认带 AVX2 |
内存建议不含「再开一个浏览器占满」的余量。权重、KV 缓存和上下文长度一起吃 RAM / VRAM,7B 级 4-bit 与 30B 级不是同一档机器。
桌面安装
- 按系统下载安装包并完成安装。
- 至少打开一次 LM Studio。未启动过时,
lms还不可用。 - 把 CLI 放进 PATH:
1
2
# macOS / Linux
~/.lmstudio/bin/lms bootstrap
1
2
REM Windows
cmd /c %USERPROFILE%\.lmstudio\bin\lms.exe bootstrap
- 新开一个终端,执行
lms或lms --help。能打出子命令列表即表示 CLI 可用。
无界面
不装桌面、只要后台服务时安装 llmster,再用 lms 操作它。适合没有显示器的 Linux。安装步骤以文档 Headless 为准,装好后:
1
2
lms daemon up
lms daemon status
lms daemon up --json 便于脚本读取 PID。停用与升级分别是 lms daemon down、lms daemon update。
4. 下载与加载模型
图形界面:Discover(macOS ⌘2,Windows / Linux Ctrl2)里选模型,再选量化档,下载完成后在聊天里加载。模型目录可在 My Models 里改;lms ls 列出的就是这一目录。
已经有 .gguf 等文件、不想重新下载时,用导入,而不是再 get 一遍:
1
lms import
命令行一条最小路径(标识以仓库实际名称为准,下面只示范写法):
1
2
3
lms get llama-3.1-8b@q4_k_m
lms load llama-3.1-8b --gpu max --context-length 8192 --identifier my-local
lms ps
--gpu=1.0 或 max 表示尽量把计算放到 GPU;auto 由程序分配;也可给 0.0–1.0 的比例。--identifier 让对外 API 里的 model 字段固定,不跟量化文件名走。
Apple Silicon 上只要 MLX、或只要 GGUF 时:
1
2
lms get --mlx
lms get --gguf
不写模型名时,lms get 给出官方推荐列表。--limit 5 缩短候选。多量化时用 @q4_k_m 这种后缀直接指定档位。
5. 常用 lms 命令
lms 不加参数会打印分组。日常只用前三组。
模型
| 命令 | 作用 |
|---|---|
lms get [名称[@量化]] | 搜索并下载;省略名称则列出推荐 |
lms ls | 列出磁盘上的模型 |
lms ps | 列出已装入内存的模型 |
lms load <模型> | 装入内存,可加 --gpu、--context-length、--identifier |
lms unload | 卸掉当前模型;lms unload --all 全部卸掉 |
lms import | 把本机已有文件登记进模型目录 |
lms chat | 在终端里直接对话 |
ls 与 ps 不要混:前者是文件在不在,后者是占没占内存。API 若只看见已加载模型,多半是还没 load,或没开即时加载。
本地服务
| 命令 | 作用 |
|---|---|
lms server start | 按上次端口启动,默认在本机 |
lms server start --port 3000 | 指定端口 |
lms server start --cors | 打开 CORS,给浏览器页面或某些编辑器插件用 |
lms server start --bind 0.0.0.0 | 监听所有 IPv4 网卡;也可用环境变量 LMS_SERVER_HOST |
lms server status | 看是否在听、端口是多少 |
lms server stop | 停止 |
lms log stream | 流式打印进出请求,用来核对真正送进模型的提示 |
--bind 只要不是 127.0.0.1,局域网里的机器就能访问。官方要求这种情况下打开认证,不要裸奔在办公网上。
守护进程、运行时、其余
| 命令 | 作用 |
|---|---|
lms daemon up / status / down / update | 管理 llmster |
lms runtime | 安装或更新 llama.cpp / MLX 等推理运行时 |
lms link ... | LM Link:设备名、首选设备、启用与关闭 |
lms login、lms clone、lms push、lms dev | 登录 Hub、克隆与发布工件;push / dev 文档标为 Beta,不是推理必用命令 |
6. 本地 API
服务起来后,把现有 OpenAI SDK 的 Base URL 指到本机即可,无需改调用形状。
| 端点 | 方法 | 用途 |
|---|---|---|
/v1/models | GET | 列出模型 |
/v1/chat/completions | POST | 对话 |
/v1/responses | POST | Responses API(官方写明因此可接 Codex 一类客户端) |
/v1/embeddings | POST | 向量 |
/v1/completions | POST | 旧版补全 |
1
2
3
curl http://localhost:1234/v1/chat/completions \
-H "Content-Type: application/json" \
-d "{\"model\":\"my-local\",\"messages\":[{\"role\":\"user\",\"content\":\"用一句话说明你在本机运行\"}]}"
model 填 lms ps 里看到的标识,或 load --identifier 设过的名字。Python 侧把 base_url 设为 http://localhost:1234/v1。
即时加载(JIT)打开时:/v1/models 会列出已下载的模型,推理请求发现未加载会自动装入内存。关闭时:/v1/models 只返回已经在内存里的模型,必须先 lms load。原生 REST 另有 POST /api/v1/models/load 等管理接口,和 OpenAI 兼容路径不是同一组。
7. 适用边界
适合。 在自己的笔记本或工作站上试 GGUF / MLX、给编辑器和脚本一个 localhost:1234、断网时仍用已下载的权重。Windows 桌面用户不必为了「跑一个小模型」先装 WSL 里的推理框架。
不适合替代集群推理。 连续批处理、多卡张量并行、高并发吞吐,仍是 vLLM、SGLang 一类服务端引擎的场景。LM Studio 的默认监听是本机开发,不是多租户 API 网关。
机器要对上格式。 Intel Mac 不在支持列表。Linux 用 AppImage,发行版过新时以官方问题单为准。显存不够就降量化或缩短 --context-length,而不是把 --bind 0.0.0.0 当成性能开关。
8. 小结
| 要点 | 结论 |
|---|---|
| 是什么 | 本机桌面推理应用;llmster 无界面;lms 管两者 |
| 模型 | 全平台 GGUF(llama.cpp);Apple Silicon 另有 MLX |
| 安装 | 官网安装包,打开一次后再 lms bootstrap |
| 日常命令 | lms get → lms load → lms server start;ls 看磁盘,ps 看内存 |
| 对外 | 默认 http://localhost:1234/v1,OpenAI 兼容 |
| 注意 | 非回环绑定时要开认证;CLI 开源不等于整套桌面应用开源 |
先用 Discover 或 lms get 拉一个 4-bit 小模型,lms ps 确认已加载,再把客户端的 Base URL 指到 localhost:1234/v1。
