文档
管理模型
在内存中管理模型
用于从内存加载、访问和卸载模型的 API
AI 模型非常庞大。将它们加载到内存中可能需要一些时间。LM Studio 的 SDK 允许您精确控制此过程。
模型命名空间
client.llm
命名空间访问client.embedding
命名空间访问lmstudio.llm
等同于默认客户端上的 client.llm.model
lmstudio.embedding_model
等同于默认客户端上的 client.embedding.model
最常见用法
.model()
获取当前加载的任何模型.model("model-key")
使用特定模型高级用法(手动模型管理)
.load_new_instance("model-key")
加载模型的新实例.unload("model-key")
或 model_handle.unload()
从内存中卸载模型.model()
获取当前模型如果您已在 LM Studio 中加载了模型(通过 GUI 或 lms load
),您可以通过调用不带任何参数的 .model()
来使用它。
import lmstudio as lms
model = lms.llm()
.model("model-key")
获取特定模型如果您想使用特定模型,您可以将模型键作为参数提供给 .model()
。
调用 .model("model-key")
会在模型未加载时加载模型,如果已加载则返回现有实例。
import lmstudio as lms
model = lms.llm("llama-3.2-1b-instruct")
.load_new_instance()
加载模型的新实例使用 load_new_instance()
加载模型的新实例,即使已存在一个。这允许您同时加载相同或不同模型的多个实例。
import lmstudio as lms
client = lms.get_default_client()
llama = client.llm.load_new_instance("llama-3.2-1b-instruct")
another_llama = client.llm.load_new_instance("llama-3.2-1b-instruct", "second-llama")
如果您提供的实例标识符已存在,服务器将抛出错误。因此,如果您不关心,最好不要提供标识符,在这种情况下,服务器将为您生成一个。您也可以随时在 LM Studio 的服务器选项卡中查看!
.unload()
从内存中卸载模型一旦您不再需要某个模型,您可以通过简单地在其句柄上调用 unload()
来卸载它。
import lmstudio as lms
model = lms.llm()
model.unload()
您还可以在加载模型时指定相同的加载时配置选项,例如上下文长度和 GPU 卸载。
有关更多信息,请参阅加载时配置。
您可以为您加载的模型指定一个“存活时间(TTL)”,即模型在上次请求后空闲(以秒为单位)到卸载的时间。有关此内容的更多信息,请参阅空闲 TTL。
如果您为 model()
指定了 TTL,则仅当 model()
加载新实例时才适用,并且不会追溯更改现有实例的 TTL。
import lmstudio as lms
llama = lms.llm("llama-3.2-1b-instruct", ttl=3600)
本页的源代码可在 GitHub 上获取
本页内容
使用 .model() 获取当前模型
使用 .model("model-key") 获取特定模型
- 如果已加载则获取,否则加载
使用 .load_new_instance() 加载模型的新实例
关于实例标识符的注意事项
使用 .unload() 从内存中卸载模型
设置自定义加载配置参数
设置自动卸载计时器(TTL)