For the complete documentation index, see llms.txt. This page is also available as Markdown.

GLM-5.2 - 如何在本地运行

在本地硬件上运行 Z.ai 的新 GLM-5.2 模型!

GLM-5.2 是 Z.ai 的新开源模型,在长周期编码、推理和智能体任务上提供 SOTA 性能。配合 744B 参数、40B 激活参数,以及 100万上下文 窗口,它现在可以使用本地运行 Unsloth Dynamic GGUF。GLM-5.2 是 迄今最强的开源模型 ,在 Artificial Analysis 以及许多其他基准上,其表现可与 Claude 4.8 Opus、GPT-5.5 和 Gemini 3.1 Pro 相媲美。

Dynamic 1-bit 可达到 ~76.2% 最高 1 名准确率,同时仅为 小 86%。Dynamic 2-bit 可达到 ~82% 准确率,同时仅为 小 84%。这意味着模型并不是因为小 84% 就差了 82%——相反,它只比完整的 1.5TB 模型低约 18% 的准确率。感谢 Z.ai 提供 Unsloth 的首发日访问权限。 GLM-5.2-GGUF

运行 GLM-5.2 教程量化结果

⚙️ 使用指南

2-bit 动态量化 UD-IQ2_M 占用 239GB 磁盘空间——这可以直接放进一台 256GB 统一内存的 Mac 中,并且在 1x24GB GPU 256GB RAM 配合 MoE offloading 时表现良好。

这个 1-bit 量化可放入 223GB RAM,而 8-bit 需要 810GB RAM。右侧可查看 1-bit GGUF 的实际效果:

表:推理硬件需求 (单位 = 总内存:RAM + VRAM,或统一内存)

1-bit
2-bit
3-bit
4-bit
5-bit
8-bit

223 GB

245 GB

290-360 GB

372-475 GB

570 GB

810 GB

推荐设置

GLM-5.2 有 3 种思考模式。两种模式:非思考和思考: + 最大。复杂任务请使用最大思考。在 Unsloth Studio 中,你可以通过 UI 轻松切换高 + 最大思考以及非思考。

大多数用例可使用以下设置:

默认设置(大多数任务)
SWE-Bench Pro

温度 = 1.0

温度 = 1.0

top_p = 0.95

top_p = 1.0

  • 最大上下文窗口: 1,048,576.

禁用思考,修改推理强度

GLM 5.2 默认使用推理。它还支持推理强度,其中 reasoning_effort 可以是“high”、“max”或禁用。

要禁用思考,请使用 --chat-template-kwargs '{"enable_thinking":false}'。如果你使用的是 Windows PowerShell,请使用: --chat-template-kwargs "{\"enable_thinking\":false}"

你也可以在 llama.cpp 中使用 --reasoning 开启--reasoning 关闭 了!

如需自定义推理强度或禁用推理,请使用以下示例:

📈 量化分析

我们还运行了 KLD(KL 散度)基准,以评估我们对 GLM-5.2-GGUF 的量化准确度。动态 4-bit 的 UD-Q4_K_XL 和动态 5-bit 的 UD-Q5_K_XL 基本无损,而更小的量化也能通过动态地将重要层保留在更高精度、将不重要层降到低比特而表现出色。

在纯 1-top% 准确率上, 动态 1-bit 的准确率约为 76.2%,但体积小 86%!动态 2-bit 的准确率约为 82%,同时体积小 84%。这表明将部分层动态量化到更高精度,并不会因为体积小 86% 就让模型差 86%——它只是比完整的 1.5TB 模型能力低约 24%。

但“76% 准确率”究竟描述的是什么?

76% 的 top-1% 并不意味着“法国的首都是”会变成 76% 选巴黎、24% 选悉尼。模型并不会因此“更笨” 24%。在这里,巴黎始终是 100%,悉尼是 0%。76% 这个数字包括了整个语料库中的填充词和停用词,例如提问:

“创建一部小说”会由于 LLM 采样而得到:

  • 我现在将创作一部小说……

  • 小说如下:

  • 你希望它是什么类型?

每个例子都是正确的,但 [I, The, What] 的分布会发生变化——基线可能 100% 的时间都用 [I],但现在 [I] 是 76%,[The] 是 24%。

这并不 意味着 你会有 24% 的时间得到乱码或错误输出。

99.9% 的 KLD 通常也不错——不过从 4bit 开始会有更明显的提升,所以对于大规模分布外任务,动态 4-bit 可能是最佳选择。

Top-1% 是 KLD 本身的一个“强制”二项分布。KLD 是基线(BF16 或 Q8_0)与量化版本之间概率的“距离”。量化的目标是最小化下面的目标函数:

minimize 1nDKL[ f(q(W))  f(W)) ]\text{minimize } \frac{1}{n} \sum{\text{D}_{\text{KL}}[\text{ }f(q(W))\text{ }||\text{ } f(W))\text{ }]}

其中 f 是语言模型的前向传播,而 q 是量化操作,而 W 是模型的参数或权重。目标是让基线的 logits 输出 f(W) 与量化模型输出之间的“距离”尽可能小。如果你能使 KLD 为 0,那你就完美重建了这个模型!

我们使用 平均 KLD ,如下所示,因为在整个训练语料库上运行 KLD 很昂贵(例如 15T tokens)——所以我们改为进行 采样, 并获得训练语料库的一个小型代表性子集 / 下游任务,并对其进行优化。 平均 KLD 通常与磁盘空间呈单调趋势,而且即使在 1-bit 下,GLM 5.2 也表现良好!

Top-1% 准确率本质上就是一个贪婪解码算子,我们假设会选择 argmax 项;而对于 1bit,76% 的情况它选择与基线的 argmax 相同。

运行 GLM-5.2 教程:

现在你可以在 llama.cppUnsloth Studio中运行 GLM-5.2。 UD-IQ2_M 我们将使用 239GB

🦥 在 Unsloth Studio 中运行 GLM-5.2

GLM-5.2 可以运行在 Unsloth Studio,这是一款用于本地 AI 的开源网页 UI。 Unsloth Studio 会自动卸载到 RAM 并检测多 GPU 配置。使用 Unsloth Studio,你可以在 MacOS、Windows、Linux 以及:

2-bit GLM-5.2 GGUF 输出
1

安装并启动 Unsloth

安装时,请在终端中运行:

MacOS、Linux、WSL:

Windows PowerShell:

启动 Unsloth

MacOS、Linux、WSL 和 Windows:

然后打开 http://127.0.0.1:8888 (或你的特定 URL)在浏览器中。

通过 HTTPS 和 Cloudflare 安全启动 Unsloth

新! Unsloth 现在提供了一种通过免费的 Cloudflare 隧道,以 HTTPS 安全启动 Studio 的方式。使用以下命令(适用于 Windows、Mac 和 Linux):

2

搜索并下载 GLM-5.2

Unsloth Studio 会自动卸载到 RAM 并检测多 GPU 配置。首次启动时,你需要创建密码来保护你的账户,并在之后重新登录。

然后进入 Studio Chat 选项卡并搜索 GLM-5.2 在搜索栏中下载你想要的模型和量化版本。确保你有足够的算力来运行该模型。

3

运行 GLM-5.2

使用 Unsloth Studio 时,推理参数应会自动设置,不过你仍然可以手动更改。你还可以编辑上下文长度、聊天模板和其他设置。

更多信息可查看我们的 Unsloth Studio 推理指南.

在 Canvas 中运行 1-bit GLM-5.2 的示例

🦙 在 llama.cpp 中运行 GLM-5.2

在本指南中,我们将运行 UD-IQ2_M 量化版本,它至少需要 245GB RAM。你可以随意更改量化类型。对于这些教程,我们将使用 llama.cpp 用于快速本地推理。GGUF: GLM-5.2-GGUF

1

获取最新的 llama.cpp GitHub 这里。你也可以按照下面的构建说明进行操作。将 -DGGML_CUDA=ON 改为 -DGGML_CUDA=OFF 如果你没有 GPU,或者只想进行 CPU 推理。 对于 Apple Mac / Metal 设备,设置 -DGGML_CUDA=OFF 然后照常继续——Metal 支持默认开启。

2

你现在可以使用 llama.cpp 直接加载和下载模型,就像 ollama run一样。首先,选择你想要的量化类型,例如 UD-IQ2_M。同时使用 export LLAMA_CACHE="unsloth/GLM-5.2-GGUF" 来强制 llama.cpp 保存到特定位置。 注意,此下载过程可能会非常慢,所以最好使用下一节中的手动下载流程。

3

如果你想手动下载模型 (快得多!),我们可以通过下面的代码下载模型(在安装 pip install huggingface_hub之后)。如果下载卡住,请查看: Hugging Face Hub、XET 调试

如果你想使用动态 1bit,请这样做:

4

然后以对话模式运行模型。使用 unsloth/GLM-5.2-GGUF/UD-IQ2_M/GLM-5.2-UD-IQ2_M-00001-of-00006.gguf 用于 2bit 或 unsloth/GLM-5.2-GGUF/UD-IQ1_S/GLM-5.2-UD-IQ1_S-00001-of-00006.gguf 用于 1bit。

5

启动 llama-cli 时,你会看到:

然后在提示它制作一个简短的 Flappy Bird 游戏后,我们得到:

完整对话和下面的游戏:

完整 HTML 游戏
完整对话

而且游戏有声音,运行得非常棒!提醒一下,这可是 1 位量化,而且效果很好!

📐通过 KV Cache 量化实现长上下文

要在 llama.cpp 中利用长上下文,我们需要采用 KV cache 量化来减少内存占用。最近 llama.cpp 为 KV cache 量化加入了更高精度的技巧—— 以及其他 PR!

目前支持以下 KV cache 数据类型:

默认情况下 f16 会被使用。如果你使用 q4_0 它大约每个权重 4.5 位,你可以将上下文长度扩展到约 16 / 4.5 = 3.5 倍更长的上下文长度!因此,如果你的模型原本支持 10K,那么 35K 也有望实现! q4_1 可能更好,因为你还能获得一个位移参数,而且每个权重是 5 位——因此上下文长度可延长 3.2 倍。

可如下使用:

📊 基准测试

你可以在下方查看 GLM-5.2 的表格形式基准测试:

基准
GLM-5.2
Claude Opus 4.8
GPT-5.5
Gemini 3.1 Pro
GLM-5.1
Qwen3.7-Max
MiniMax M3
DeepSeek-V4-Pro

推理

HLE

40.5

49.8*

41.4*

45

31

41.4

37

37.7

HLE(含工具)

54.7

57.9*

52.2*

51.4*

52.3

53.5

-

48.2

CritPt

20.9

20.9

27.1

17.7

4.6

13.4

3.7

12.9

AIME 2026

99.2

95.7

98.3

98.2

95.3

97

-

94.6

HMMT 2025 年 11 月

94.4

96.5

96.5

94.8

94

95

84.4

94.4

HMMT 2026 年 2 月

92.5

96.7

96.7

87.3

82.6

97.1

84.4

95.2

IMOAnswerBench

91.0

83.5

-

81

83.8

90

-

89.8

GPQA-Diamond

91.2

93.6

93.6

94.3

86.2

90

93

90.1

编程

SWE-bench Pro

62.1

69.2

58.6

54.2

58.4

60.6

59

55.4

NL2Repo

48.9

69.7

50.7

33.4

42.7

47.2

42.1

35.5

DeepSWE

46.2

58

70

10

18

18

20

8

ProgramBench

63.7

71.9

70.8

39.5

50.9

-

-

47.8

Terminal Bench 2.1(Terminus-2)

81.0

85

84

74

63.5

75

65

64

Terminal Bench 2.1(最佳报告 Harness)

82.7

78.9

83.4

70.7

69

-

-

-

FrontierSWE(优势)

74.4

75.1

72.6

39.6

30.5

-

-

29.0

PostTrainBench

34.3

37.2

28.4

21.6

20.1

-

-

-

SWE-Marathon

13.0

26.0

12.0

4.0

1.0

-

-

-

代理式

MCP-Atlas(公开集)

76.8

77.8

75.3

69.2

71.8

76.4

74.2

73.6

工具十项全能

48.2

59.9

55.6

48.8

40.7

-

-

52.8

最后更新于

这有帮助吗?