这篇适合谁
适合想在自己电脑上运行大模型、又更喜欢图形界面的用户和开发者。读完你应该能在 LM Studio 中下载并对话 gpt-oss-20b,用 Python 调用它的本地 API,并了解如何为它接入 MCP 工具。
LM Studio 是什么
LM Studio 是一款在本地运行大语言模型的应用。它有比 Ollama 更丰富的图形界面,适合希望通过界面完成操作的用户[1]。它非常适合在无网络环境下部署和使用大模型[1]。本地运行的好处是隐私性好、可以定制,还能离线使用[1]。对只想先试一试的人,下载和对话都能在一个窗口里完成,不必记命令;对要写程序的人,它提供的是 OpenAI 风格的接口,客户端代码几乎不用改[1]。LM Studio 支持 Windows、macOS 和 Linux,下载页面是 lmstudio.ai/download[2]。
准备工作
先在 lmstudio.ai 下载并安装对应系统的版本[2]。gpt-oss-20b 是本文用到的模型,LM Studio 的模型搜索会根据硬件给出推荐[1]。如果只想下载 20B 版本,可以用命令行,另有 120B 版本可选[1]。
上手步骤
- 安装 LM Studio,并在界面里搜索 gpt-oss-20b 下载。如果网络不好,可以改为离线安装:从魔搭社区等来源下载模型文件,放到 LM Studio 的模型库目录里[1]。
- 用命令行下载模型(可选)。命令如下[1]:
# For 20B
lms get openai/gpt-oss-20b
# or for 120B
lms get openai/gpt-oss-120blms chat openai/gpt-oss-20b #注意第一次运行之后才能使用lmx命令这条命令要在 LM Studio 至少运行过一次之后才能使用[1]。
- 启动本地服务器,用 API 调用模型。在 LM Studio 中开启本地服务后,Python 的 OpenAI 客户端把
base_url设为http://localhost:1234/v1即可;LM Studio 不要求 API Key,api_key填任意值,示例里写的是not-needed[1]:
from openai import OpenAI
client = OpenAI(
base_url="http://localhost:1234/v1",
api_key="not-needed" # LM Studio does not require an API key
)
result = client.chat.completions.create(
model="openai/gpt-oss-20b",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Explain what MXFP4 quantization is."}
]
)
print(result.choices[0].message.content)请求中的 model 字段要写成 openai/gpt-oss-20b,与 LM Studio 中显示的模型名一致[1]。模型的回答在 result.choices[0].message.content 里,直接打印即可[1]。端口和模型名要与 LM Studio 里的服务设置对应,这两处对不上,请求就发不到模型上。
让模型用上 MCP 工具
LM Studio 是一个 MCP 客户端,可以连接 MCP 服务器,为 gpt-oss 模型提供外部工具[1][3]。MCP 的配置文件路径是 ~/.lmstudio/mcp.json[1]。
如果想在 Python 里直接给模型定义工具,可以安装 LM Studio 的 Python SDK,命令是 uv pip install lmstudio 或 pip install lmstudio[1][4]:
uv pip install lmstudio示例中的工具是一个普通的 Python 函数 create_file(name, content),它会在本地创建文件[1][5]。函数不会覆盖已有文件,遇到同名文件时返回错误信息[1]:
def create_file(name: str, content: str):
"""创建指定名称和内容的文件。
Args:
name: 文件名(支持相对路径和绝对路径)
content: 文件内容
Returns:
操作结果的描述信息
"""
dest_path = Path(name)
if dest_path.exists():
return "错误:文件已存在,无法覆盖。"
try:
dest_path.write_text(content, encoding="utf-8")
except Exception as exc:
return f"错误:文件创建失败 - {exc!r}"
return f"文件 '{name}' 创建成功。"然后用 lms.llm 加载模型,并用 lms.Chat 建立带系统提示的对话[1]:
model = lms.llm("openai/gpt-oss-20b") # 加载OpenAI GPT-OSS 20B模型
chat = lms.Chat("你是一个运行在用户计算机上的智能助手,可以帮助用户完成各种任务。")model.act() 把聊天、工具列表和回调函数一起交给模型。它会在调用工具和推理之间切换,直到完成任务[1]:
model.act(
chat, # 聊天上下文
[create_file], # 可用的工具函数列表
on_message=chat.append, # 将完整响应添加到聊天历史
on_prediction_fragment=print_fragment, # 流式输出回调
)回调函数 print_fragment 会在模型生成内容时逐段打印,形成流式输出[1]。示例程序在用户直接回车时退出[1]。工具定义的更多写法见官方文档[5]。
常见问题与下一步
本文的步骤集中在下载、加载、调用和 MCP 接入四个环节。如果在命令行里找不到 lms 命令,先启动一次 LM Studio 再试[1]。离线使用时,模型文件必须放在 LM Studio 的模型库目录里,界面才能识别到它[1]。关于 MCP 的配置和更多 SDK 功能,请以 LM Studio 官方文档为准,入口是 lmstudio.ai/docs[3][4]。
本文改编自 Datawhale 开源项目 self-llm 中的教程《03-gpt-oss-20b lmstudio 本地部署调用》[1],原文以 Apache-2.0 许可证发布。
来源
- 103-gpt-oss-20b lmstudio 本地部署调用Datawhale self-llm (Apache-2.0)
- 2Download LM StudioLM Studio
- 3LM Studio MCP documentationLM Studio
- 4lmstudio-pythonLM Studio (GitHub)
- 5LM Studio Python SDK: toolsLM Studio
引用本页: gpt-oss-20b 用 LM Studio 本地跑. TellWorld, https://www.tellworld.net/zh/practice/practice-gpt-oss-lmstudio. 更新于 2026-11-14