文档
本地运行 LLM
用户界面
高级
命令行界面 - lms
API
空闲 TTL 和自动驱逐
ℹ️ 需要 LM Studio 0.3.9 (b1),目前为 beta 版本。请从此处下载
LM Studio 0.3.9 (b1) 引入了为 API 模型设置生存时间 (TTL) 的功能,并可以选择在加载新模型之前自动驱逐先前加载的模型。
这些功能补充了 LM Studio 的按需模型加载 (JIT),以自动化高效的内存管理,并减少手动干预的需求。
JIT 加载
使您可以在其他应用程序中轻松使用 LM Studio 模型:您无需先手动加载模型即可使用它。然而,这也意味着模型即使在不使用时也可能保持加载在内存中。[默认:启用]
(新)空闲 TTL
(技术上:生存时间)定义了模型在没有收到任何请求的情况下可以在内存中保持加载的时间。当 TTL 过期时,模型将自动从内存中卸载。您可以使用请求负载中的 ttl
字段设置 TTL。[默认:60 分钟]
(新)自动驱逐
是一项功能,可在加载新模型之前卸载先前 JIT 加载的模型。这使得可以轻松地从客户端应用程序切换模型,而无需先手动卸载它们。您可以在开发者选项卡 > 服务器设置中启用或禁用此功能。[默认:启用]
用例:假设您正在使用像 Zed、Cline 或 Continue.dev 这样的应用程序与 LM Studio 提供的 LLM 进行交互。这些应用程序利用 JIT 在您首次使用模型时按需加载模型。
问题:当您不积极使用模型时,您可能不希望它仍然加载在内存中。
解决方案:为通过 API 请求加载的模型设置 TTL。空闲计时器在模型每次收到请求时都会重置,因此在您使用模型时它不会消失。如果模型没有执行任何工作,则认为它是空闲的。当空闲 TTL 过期时,模型将自动从内存中卸载。
默认情况下,JIT 加载的模型的 TTL 为 60 分钟。您可以为通过 JIT 加载的任何模型配置默认 TTL 值,如下所示
设置默认 TTL 值。将用于所有 JIT 加载的模型,除非在请求负载中另有指定
当启用 JIT 加载时,对模型的第一个请求将模型加载到内存中。您可以在请求负载中为此模型指定 TTL。
这适用于针对 OpenAI 兼容性 API 和 LM Studio 的 REST API 的请求
lms
加载的模型设置 TTL默认情况下,使用 lms load
加载的模型没有 TTL,并且将保持加载在内存中,直到您手动卸载它们。
您可以为使用 lms
加载的模型设置 TTL,如下所示
<模型>
,TTL 为 1 小时(3600 秒)您还可以在服务器选项卡中加载模型时设置 TTL,如下所示
在服务器选项卡中加载模型时设置 TTL 值
通过此设置,您可以确保通过 JIT 加载的新模型自动首先卸载先前加载的模型。
当您想要从另一个应用程序切换模型而无需担心内存被未使用的模型堆积时,这非常有用。
在开发者选项卡 > 服务器设置中启用或禁用 JIT 加载模型的自动驱逐
当自动驱逐为开启时(默认)
1
个模型保持加载在内存中(当通过 JIT 加载时)当自动驱逐为关闭时:
此功能与 TTL 协同工作,为您的工作流程提供更好的内存管理。
TTL
:生存时间,是一个借用自网络协议和缓存系统的术语。它定义了资源在被视为过时并被驱逐之前可以保持分配的时间。