跳转到主要内容
LM Studio 是最易用的本地模型运行方式 —— 下载模型,点击 Load,即可开始对话。它的底层封装了 llama.cpp(在 Apple Silicon 上还有 MLX),并暴露了控制硬件使用方式的配置选项。默认设置能满足日常使用,但会浪费大量性能。本指南涵盖所有重要配置项以及如何根据你的工作负载进行设置。
最后验证:2026-10-14 — LM Studio v0.3.26 / Bionic 1.1.8。
Apple Silicon 使用 MLX。 在 Apple Silicon Mac 上,LM Studio 自动使用 Apple 的 MLX 框架而非 llama.cpp。MLX 在 M 系列芯片上提供显著更快的推理速度(参见 Apple Silicon 和 MLX 优化)。本指南中的大多数配置选项同时适用于两个后端;行为不同的地方会明确说明。

上下文窗口调优

上下文窗口控制模型在单个请求中能处理的 token 数量 —— 包括提示词和生成的响应。它是模型权重之后影响内存占用的最大因素。

如何在 LM Studio 中增加上下文窗口

LM Studio 默认使用 2048 token 的上下文窗口以保证兼容性。大多数现代模型支持 8K、32K 甚至 128K token,但 LM Studio 不会默认使用模型的最大值 —— 它使用 2048 来保持内存使用可预测。 通过 3 种方式设置: 在 UI 中(模型加载面板): 加载模型时,加载面板显示 Context Length 滑块。在点击 Load Model 之前将其拖动到所需值(例如 8192、16384、32768)。 按模型设置(持久默认值): 为特定模型设置默认上下文长度,这样每次加载时都会生效。在库中找到模型,点击齿轮图标,在 Per-model Defaults 下设置 Context Length。详见 Per-model Defaults。 通过 API(按请求):
通过 CLI:

上下文窗口内存开销

KV 缓存随上下文长度线性增长。公式如下:
对于一个 7B 模型(32 层,4096 隐藏维度),f16 精度:
上下文长度只需设置为工作负载实际所需的高度。一个发送 2K 提示词的编码代理不会从 128K 上下文窗口中获益 —— 它只是浪费了 64 GB 的 KV 缓存空间,这些空间本可用于服务其他请求或容纳更大的模型。

闪存注意力

闪存注意力是 LM Studio 提供的最接近免费性能提升的功能。它改变了模型计算 token 之间注意力的方式 —— 不再在内存中实例化完整的注意力矩阵,而是以适合快速 SRAM 的分块方式计算注意力。结果是:
  • KV 缓存内存降低 30-50% —— 在长上下文长度时收益最大。
  • 更快的推理 —— 特别是在 GPU 上,分块计算能很好地映射到张量核心。
  • 相同的输出质量 —— 闪存注意力在数学上等价于标准注意力,不是近似计算。

如何在 LM Studio 中启用闪存注意力

在 UI 中: 加载模型时,加载面板显示 Flash Attention 开关。在点击 Load Model 之前启用它。 按模型设置(持久默认值): 为特定模型设置默认值,这样每次加载时都会生效。在库中找到模型,点击齿轮图标,在 Per-model Defaults 下启用 Flash Attention。 通过 API:
始终启用闪存注意力。 除非遇到特定模型或平台的兼容性问题,否则没有理由关闭它。这是本指南中影响最大的设置。
在使用 MLX 后端的 Apple Silicon 上,闪存注意力默认启用,该设置不生效 —— MLX 始终使用优化的注意力内核。

GPU 卸载策略

LM Studio 自动将模型层卸载到 GPU。当完整模型能放入 VRAM 时,所有层都在 GPU 上运行以获得最快速度。当 VRAM 紧张时,LM Studio 在 GPU 和 CPU 之间分配层 —— GPU 运行它能处理的部分,其余回退到系统内存。

LM Studio 如何决定 GPU 层数

LM Studio 的 GPU 调度按以下顺序工作:
  1. 完全卸载 —— 如果模型权重 + KV 缓存能放入 VRAM,所有层都分配到 GPU。这是最快的配置。
  2. 部分卸载 —— 如果模型不能完全放入,LM Studio 将尽可能多的层放在 GPU 上,其余在 CPU 上运行。性能会下降,因为每次前向传播都必须通过 PCIe 总线访问 CPU 侧的层。
  3. 仅 CPU —— 如果没有可用 GPU 或 VRAM 太小连几层都放不下,整个模型在 CPU 上运行。

控制 GPU 卸载

该 GPU Offload 设置控制要卸载到 GPU 的层数。可在 UI、按模型默认值或通过 API 设置: 在 UI 中: 加载模型时,加载面板显示 GPU Offload 滑块。可以设置为:
  • Auto(默认)—— LM Studio 自动检测可用 VRAM 并卸载尽可能多的层。
  • Max —— 强制所有层到 GPU。当你知道模型能放下时使用。
  • Off —— 完全禁用 GPU 卸载(仅 CPU 推理)。
  • Manual —— 拖动滑块设置特定的层数。
按模型设置(持久默认值): 为特定模型设置默认值。在库中找到模型,点击齿轮图标,在 Per-model Defaults 下设置 GPU Offload。 通过 API:
大多数情况下保持 GPU 卸载为 Auto,让 LM Studio 自行决定。只在需要强制特定分配时才手动设置 —— 例如,为更大的上下文窗口预留 VRAM,或为刚好能放下的模型保留一些层在 CPU 上。

VRAM 预算

每个卸载的层同时为权重和 KV 缓存消耗 VRAM。粗略估算:
对于一个 7B 模型,Q4_K_M(每权重约 4.5 位,约 32 层): 预留 1-2 GB VRAM 余量用于 CUDA 上下文和开销。
当你增加上下文长度时,KV 缓存增长可能会将层挤出 VRAM。如果你设置了 32K 上下文窗口而 LM Studio 突然将一半层卸载到 CPU,说明 KV 缓存吃掉了你的 VRAM 预算。要么减少上下文长度,使用更小的量化,要么启用闪存注意力来缩小 KV 缓存。

KV 缓存精度

KV 缓存为每个活跃序列中的每个 token 存储键和值张量。默认情况下,LM Studio 使用 f16(16 位浮点)。你可以切换到量化精度以较小的质量代价降低内存使用。 在加载面板中或通过 API 设置缓存类型: 在 UI 中: 加载模型时,展开 Advanced Settings 并找到 KV Cache Quantization。可以设置为:
  • f16(默认)—— 完整精度
  • q8_0 —— 8 位量化
  • q4_0 —— 4 位量化
通过 API:
将 q8_0 KV 缓存与闪存注意力结合使用以获得最大的内存收益。闪存注意力将 KV 缓存占用减少 30-50%,q8_0 再减半 —— 两者结合可将 KV 缓存内存降低 60-75%(与默认值相比)。
q4_0 KV 缓存在依赖长上下文精确注意力的任务上会带来可测量的质量损失 —— 大海捞针检索、多文档摘要和长对话。在承诺使用 q4_0 之前,先测试你的具体工作负载。

批次大小调优

该 Eval Batch Size 参数控制 LM Studio 在预填充阶段(提示词摄入)一次处理多少 token。默认值为 512。 在加载面板的 Advanced Settings 下或通过 API 设置:
对于短提示词(1K token 以下)的交互式聊天,默认值 512 即可。只有在你经常摄入长文档并希望更快的首 token 时间时才增加。
更大的批次大小在提示词摄入期间消耗更多 VRAM。如果你增加批次大小并遇到内存不足错误,请减少它或降低上下文长度。

模型内存管理

使用 TTL 保持模型加载

默认情况下,LM Studio 在一段时间不活动后从内存中卸载模型。下一个请求必须从磁盘重新加载模型,根据模型大小和磁盘速度需要数秒到数分钟。 设置 TTL(Time To Live) 来控制模型保持加载的时间: 在 UI 中: 加载模型时,加载面板显示 TTL 下拉菜单。可以设置为:
  • Until you close the app —— 模型无限期保持加载。
  • Until you unload it —— 模型保持加载直到你手动卸载。
  • Custom duration —— 模型在指定时间后卸载(例如 5 分钟、1 小时)。
通过 API:
通过 CLI:
对于全天运行同一模型的专用推理服务器,将 TTL 设置为 Until you close the app 或 -1。模型保持在内存中,每个请求都能即时响应,无冷启动开销。

多模型服务

LM Studio 可以同时加载多个模型。当你加载第二个模型时,LM Studio 检查是否有足够的内存。如果没有,它会卸载最近最少使用的模型来腾出空间。 管理已加载模型: 在 UI 中: 该 Models 面板显示所有已加载的模型。点击模型旁的卸载按钮释放内存。 通过 CLI:
通过 API:

本地服务器配置

LM Studio 暴露一个 OpenAI 兼容的 API 服务器。默认情况下,它监听 http://localhost:1234。

服务器设置

在 UI 中: 转到 Server 标签页,点击 Server Settings 进行配置:
  • Host —— 绑定地址(默认:127.0.0.1)。改为 0.0.0.0 可在本地网络上提供服务。
  • Port —— 监听端口(默认:1234)。
  • CORS —— 为 Web 客户端启用跨域请求。
  • Require API Key —— 要求 bearer token 进行身份验证。
通过 CLI:
将主机设置为 0.0.0.0 会将 LM Studio 暴露到本地网络。仅在你信任网络中的所有设备时才这样做,或使用防火墙限制访问。对于通过互联网的远程访问,请使用 Tokios —— 它提供经过身份验证的远程访问而无需开放端口。

API 端点

LM Studio 支持以下 OpenAI 兼容端点: 示例:列出已加载的模型
示例:聊天补全

支持的模型格式

LM Studio 支持 2 种主要模型格式:

GGUF(跨平台)

GGUF 是支持最广泛的格式。它可在 Windows、Linux 和 macOS 上运行 —— 无论有没有 GPU。GGUF 模型经过量化以减小文件大小(例如 Q4_K_M、Q5_K_M、Q8_0)。 何时使用 GGUF:
  • 你需要跨平台可移植性(Windows、Linux、Mac)。
  • 你想在 NVIDIA GPU 和 Apple Silicon 上运行同一模型。
  • 你希望有最多的量化选项选择。

MLX(Apple Silicon 优化)

MLX 是 Apple 的机器学习框架,针对 M 系列芯片优化。在 Apple Silicon 上,LM Studio 自动使用 MLX 获得更快的推理。 何时使用 MLX:
  • 你在使用 Apple Silicon(M1、M2、M3、M4)。
  • 你需要 Mac 上的最大性能。
  • 你不需要在非 Apple 硬件上运行同一模型。
在 Apple Silicon 上,LM Studio 自动为你的硬件选择最佳运行时(MLX 或 llama.cpp)。你无需手动配置。

Apple Silicon 和 MLX 优化

在 Apple Silicon Mac 上,LM Studio 默认使用 Apple 的 MLX 框架。MLX 针对 Apple 的统一内存架构进行了优化,在 M 系列芯片上提供比 llama.cpp 显著更快的推理。

性能提升

来自社区测试的基准: MLX 还在 Apple Silicon 上支持高级量化,提供接近 BF16 的质量,仅占用 4 位内存 —— 质量损失仅为 Q4 量化的一半。

Apple Silicon 优化技巧

  1. 使用 MLX 优化的模型。 在 Apple Silicon 上下载模型时,LM Studio 自动使用 MLX 后端。无需配置。
  2. 闪存注意力始终开启。 MLX 默认使用优化的注意力内核。闪存注意力设置不生效。
  3. 统一内存意味着完全 GPU 卸载。 Apple Silicon 的 GPU 可以访问全部 RAM 池,因此只要模型和 KV 缓存能放入统一内存,完全 GPU 卸载就能工作。
  4. 使用 q8_0 KV 缓存 来扩展你的内存预算。KV 缓存减半让你能运行更大的模型或更长的上下文。
  5. 将 TTL 设置为 “Until you close the app” 以实现常驻推理。模型保持在统一内存中,无重新加载开销。
如果你需要跨平台可移植性,或想在 NVIDIA GPU 和 Mac 上运行相同配置,可以强制 LM Studio 在 Apple Silicon 上使用 llama.cpp 后端。请联系 LM Studio 支持或查阅其文档了解覆盖后端选择的设置。

示例配置

Mac Studio M2 Ultra —— 128 GB 统一内存

UI 设置:
  • GPU Offload: Max
  • Context Length: 32768
  • Flash Attention: 已启用(MLX 上自动)
  • KV Cache Quantization: q8_0
  • TTL: Until you close the app
此配置运行 70B Q4 模型,32K 上下文窗口。128 GB 统一内存池可处理约 40 GB 模型权重、约 16 GB KV 缓存(q8_0),并为多个模型预留空间。MLX 在 Apple Silicon 上提供最大吞吐量。

NVIDIA RTX 4090 —— 24 GB VRAM

UI 设置:
  • GPU Offload: Max
  • Context Length: 16384
  • Flash Attention: 已启用
  • KV Cache Quantization: q8_0
  • Eval Batch Size: 1024
  • TTL: Until you close the app
此配置运行 8B Q4 模型,16K 上下文窗口。24 GB VRAM 可处理约 5 GB 模型权重、约 4 GB KV 缓存(q8_0 配合闪存注意力)。更大的批次大小加速提示词摄入。

多 GPU 服务器 —— 2× RTX 4090(48 GB 总 VRAM)

UI 设置:
  • GPU Offload: Max
  • Context Length: 32768
  • Flash Attention: 已启用
  • KV Cache Quantization: q8_0
  • Eval Batch Size: 2048
  • TTL: Until you close the app
此配置运行 70B Q4 模型,使用 2 个 GPU。48 GB 总 VRAM 可处理约 40 GB 模型权重、约 16 GB KV 缓存。大批次大小最大化批量工作负载的吞吐量。

仅 CPU 服务器 —— 64 GB RAM,无 GPU

UI 设置:
  • GPU Offload: Off
  • Context Length: 8192
  • Flash Attention: 已禁用
  • KV Cache Quantization: q8_0
  • Eval Batch Size: 512
  • TTL: Until you close the app
8B Q4 模型完全在 CPU 上运行,较小的批次大小和单并行请求保持内存使用可控,预计 5-10 tok/s —— 可用于交互式聊天但不适合批量工作负载。

常见错误及如何避免

错误 1:上下文长度设置过高

问题: 你将上下文长度设置为 128K”以防万一”,但你的提示词不到 2K token。你刚浪费了 64 GB 的 KV 缓存内存。 修复: 将上下文长度设置为匹配你的实际工作负载。如果你的提示词不到 4K token,使用 4096 或 8192。你以后随时可以通过 API 为特定请求增加。

错误 2:忘记闪存注意力

问题: 你多使用了 30-50% 的 VRAM,因为闪存注意力没有启用。 修复: 始终启用闪存注意力。在支持的硬件上没有缺点。

错误 3:未控制模型卸载

问题: 你在 10 分钟休息后重新发送请求,第一个请求花了 30 秒,因为 LM Studio 从磁盘重新加载了模型。 修复: 将 TTL 设置为 Until you close the app 或 -1 以实现常驻推理。模型保持在内存中,每个请求都能即时响应。

错误 4:忽略 KV 缓存精度

问题: 你的 VRAM 不足,LM Studio 将层卸载到 CPU,但你从未考虑过 KV 缓存使用了比必要多 2× 的内存。 修复: 将 KV 缓存量化设置为 q8_0 以将 KV 缓存内存减半。这是质量和内存节省的最佳平衡。

错误 5:在放不下的模型上使用 GPU 卸载

问题: 你将 GPU 卸载设置为 Max,但模型放不进 VRAM。LM Studio 内存不足或崩溃。 修复: 将 GPU 卸载设置为 Auto,让 LM Studio 自行决定。如果必须手动设置,从较低值开始,逐渐增加直到达到上限。

故障排除

LM Studio 启动后很慢

原因: 模型被卸载,必须从磁盘重新加载。 修复: 将 TTL 设置为 Until you close the app 或 -1 以无限期保持模型加载。

内存不足错误

原因: 模型 + KV 缓存超过可用 VRAM 或 RAM。 修复: 减少上下文长度,启用闪存注意力,将 KV 缓存量化设置为 q8_0,或使用更小的量化。

GPU 未被使用

原因: LM Studio 未检测到 GPU,或 VRAM 太小连几层都放不下。 修复: 检查加载面板查看层是否在 GPU 上。对于 NVIDIA GPU,确保安装了 NVIDIA 驱动和 CUDA 工具包。对于 AMD GPU,确保安装了 ROCm。

CPU 推理慢

原因: 层分布在 GPU 和 CPU 之间,或没有 GPU 卸载。 修复: 如果可能,将更多层卸载到 GPU。使用更小的量化(Q4_K_M 或 Q5_K_M)以在 GPU 上放入更多层。

模型加载失败

原因: 模型 + KV 缓存没有足够内存。 修复: 减少上下文长度,减少 GPU 卸载,或使用更小的量化。如果模型对你的硬件来说太大,下载一个更小的模型。

后续步骤

LM Studio 远程访问

通过 Tokios 将你的 LM Studio 模型暴露给团队成员和代理 —— 无需开放端口或在本地网络上提供服务。

硬件参考

比较本地 LLM 推理的硬件平台 —— 规格、模型容量和建议。

模型适配查找器

查找哪些模型可以在你的硬件上运行,或哪些硬件可以运行你的目标模型。

测试你的部署

在调优后测量延迟和吞吐量以确认改进效果。

常见问题

最佳 GPU 卸载设置是什么?

大多数情况下使用 Auto。LM Studio 检测可用 VRAM 并卸载尽可能多的层。只有当你知道完整模型能放入 VRAM 时才设置为 Max。对于仅 CPU 推理设置为 Off。

如何增加上下文窗口?

在加载面板中,将 Context Length 滑块拖动到所需值(例如 8192、16384、32768)。你也可以在模型设置中设置按模型默认值,或在 API 请求中传递 context_length。

LM Studio 支持闪存注意力吗?

支持。在加载面板或按模型默认值中启用它。闪存注意力将 KV 缓存内存减少 30-50% 并加速推理。在使用 MLX 的 Apple Silicon 上,闪存注意力始终开启。

如何保持模型加载?

将 TTL 设置为 Until you close the app 或通过 API 设置为 -1。模型保持在内存中,每个请求都能即时响应,无重新加载开销。

可以同时运行多个模型吗?

可以。LM Studio 可以同时加载多个模型。当内存紧张时,它会卸载最近最少使用的模型来腾出空间。使用 lms status 查看已加载模型,使用 lms unload 释放内存。

应该使用什么模型格式?

使用 GGUF 获得跨平台兼容性(Windows、Linux、Mac)。在 Apple Silicon 上,LM Studio 自动使用 MLX 获得更快的推理。你无需手动选择。

如何在本地网络上提供 LM Studio 服务?

在 Server 标签页中,点击 Server Settings 并将 Host 改为 0.0.0.0。这会将 LM Studio 暴露到本地网络。对于通过互联网的远程访问,请使用 Tokios。

最佳 KV 缓存量化是什么?

使用 q8_0 获得质量和内存节省的最佳平衡。它将 KV 缓存内存减半,质量损失可忽略。只有在内存极其紧张且你接受一些质量下降时才使用 q4_0。

来源

更改 LM Studio 配置后,重新注册你的 Tokios 部署,以便连接器获取新的上游端点。参见 Register Model。