本機 API
開發者頁左上角打開 Local Server(或 lms server start)後,預設聽 http://localhost:1234。之後任何走 OpenAI SDK 的程式,把 base_url 指過來就能打本機模型。
官方:API 總覽、Quickstart、OpenAI Compatibility
三套端點怎麼選
| 路徑 | 用途 |
|---|---|
/api/v1/chat 等原生 v1 |
0.4.0 起建議的官方 API:有狀態對話、MCP、載入/下載模型 |
/v1/chat/completions、/v1/responses |
接現成 OpenAI 客戶端、Codex、許多外掛 |
/v1/messages |
Anthropic 相容,例如把本機模型接到 Claude Code |
預設不需要 API 金鑰。若在 Developer 設定開啟驗證,請求要帶 Authorization: Bearer $LM_API_TOKEN。本機 MCP 經 API 呼叫時,官方也要求 token。
Just-In-Time 載入開啟時,打推論端點會自動把指定模型載進記憶體。閒置可設 TTL 自動卸載,見 Idle TTL。
最小 Python 範例
把 model 換成 Developer 頁顯示的識別名稱:
from openai import OpenAI
client = OpenAI(
base_url="http://localhost:1234/v1",
api_key="lm-studio", # 未開驗證時可任意字串
)
resp = client.chat.completions.create(
model="目前載入的模型識別名稱",
messages=[{"role": "user", "content": "用三句話說明什麼是量化。"}],
temperature=0.7,
)
print(resp.choices[0].message.content)
curl 等價:
curl http://localhost:1234/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "目前載入的模型識別名稱",
"messages": [{"role": "user", "content": "Say this is a test!"}]
}'
原生有狀態聊天用 POST /api/v1/chat,下一次帶 previous_response_id 即可延續,不必每次重送整段歷史。官方:Stateful Chats。
SDK
官方另有 lmstudio-python 與 TypeScript SDK,適合要管載入/卸載、而不只是 Chat Completions 的程式。
推薦影音
Stef from Samayas 依官方開發者功能走一遍:API、MCP、Auth、Headless。介面以 0.4 附近為準,細節仍以官方 REST 文件為準。