跳至主要內容

LM Studio

https://lmstudio.ai/docs/basics/server

提示

我們支援所有 LM Studio 模型,送出 litellm 請求時只需將 model=lm_studio/<any-model-on-lmstudio> 設為前綴

屬性詳細資訊
說明探索、下載並執行本機 LLM。
LiteLLM 上的提供者路由lm_studio/
提供者文件LM Studio ↗
支援的 OpenAI 端點/chat/completions, /embeddings, /completions

API 金鑰

# env variable
os.environ['LM_STUDIO_API_BASE']
os.environ['LM_STUDIO_API_KEY'] # optional, default is empty

範例用法

from litellm import completion
import os

os.environ['LM_STUDIO_API_BASE'] = ""

response = completion(
model="lm_studio/llama-3-8b-instruct",
messages=[
{
"role": "user",
"content": "What's the weather like in Boston today in Fahrenheit?",
}
]
)
print(response)

範例用法 - 串流

from litellm import completion
import os

os.environ['LM_STUDIO_API_KEY'] = ""
response = completion(
model="lm_studio/llama-3-8b-instruct",
messages=[
{
"role": "user",
"content": "What's the weather like in Boston today in Fahrenheit?",
}
],
stream=True,
)

for chunk in response:
print(chunk)

與 LiteLLM Proxy Server 搭配使用

以下說明如何使用 LiteLLM Proxy Server 呼叫 LM Studio 模型

  1. 修改 config.yaml
model_list:
- model_name: my-model
litellm_params:
model: lm_studio/<your-model-name> # add lm_studio/ prefix to route as LM Studio provider
api_key: api-key # api key to send your model
  1. 啟動 proxy
$ litellm --config /path/to/config.yaml
  1. 向 LiteLLM Proxy Server 送出請求
import openai
client = openai.OpenAI(
api_key="sk-1234", # pass litellm proxy key, if you're using virtual keys
base_url="http://0.0.0.0:4000" # litellm-proxy-base url
)

response = client.chat.completions.create(
model="my-model",
messages = [
{
"role": "user",
"content": "what llm are you"
}
],
)

print(response)

支援的參數

請參閱支援的參數

嵌入

from litellm import embedding
import os

os.environ['LM_STUDIO_API_BASE'] = "http://localhost:8000"
response = embedding(
model="lm_studio/jina-embeddings-v3",
input=["Hello world"],
)
print(response)

結構化輸出

LM Studio 透過 JSON Schema 支援結構化輸出。您可以使用 response_format 傳入 pydantic 模型或原始 schema。 LiteLLM 會將 schema 以 { "type": "json_schema", "json_schema": {"schema": <your schema>} } 送出。

from pydantic import BaseModel
from litellm import completion

class Book(BaseModel):
title: str
author: str
year: int

response = completion(
model="lm_studio/llama-3-8b-instruct",
messages=[{"role": "user", "content": "Tell me about The Hobbit"}],
response_format=Book,
)
print(response.choices[0].message.content)
🚅
LiteLLM Enterprise
為正式環境打造的 SSO/SAML、稽核記錄、支出追蹤、多團隊管理與防護欄。
深入瞭解 →