GLM-4.5 携手 vLLM:专为智能体打造
简介
通用语言模型 (GLM) 是由智谱 AI(现更名为 Z.ai)创建的基础模型系列。GLM 团队与 vLLM 团队有着长期的合作关系,可以追溯到 vLLM 早期阶段以及广受欢迎的 ChatGLM 模型系列。最近,GLM 团队发布了 GLM-4.5 和 GLM-4.5V 模型系列,这些模型专为智能体设计。目前,它们是 Huggingface 模型库中的热门模型。
GLM-4.5 拥有 3550 亿总参数,其中 320 亿为激活参数;而 GLM-4.5-Air 采用更紧凑的设计,拥有 1060 亿总参数和 120 亿激活参数。GLM-4.5 模型统一了推理、编码和智能体能力,以满足智能体应用复杂的需求。
GLM-4.5 和 GLM-4.5-Air 均为混合推理模型,提供两种模式:用于复杂推理和工具使用的“思维模式”,以及用于即时响应的“非思维模式”。
正如我们在 12 项行业标准基准测试中的全面评估所证明的那样,GLM-4.5 取得了 63.2 分的卓越表现,在所有专有和开源模型中位列第三。值得注意的是,GLM-4.5-Air 在保持卓越效率的同时,也提供了 59.8 分的极具竞争力的结果。

GLM-4.5V 基于 GLM-4.5-Air 构建。它延续了 GLM-4.1V-Thinking 的技术路径,在 42 个公开的多模态基准测试中,达到了同规模模型中的 SOTA(业内最佳)性能。

欲了解有关 GLM-4.5 和 GLM-4.5V 的更多信息,请参考 GLM-4.5 和 GLM-V。
本篇博客将指导用户如何使用 vLLM 加速 GLM-4.5V 和 GLM-4.5 模型系列在 NVIDIA Blackwell 和 Hopper GPU 上的推理。
安装
在最新的 vLLM 主分支中,GLM-4.5V 和 GLM-4.5 模型系列均已得到支持。您可以安装 nightly 版本并手动更新 transformers 库以启用模型支持。
pip install -U vllm --pre --extra-index-url https://wheels.vllm.ai/nightly
pip install transformers-v4.55.0-GLM-4.5V-preview用法
GLM-4.5 和 GLM-4.5V 均提供 FP8 和 BF16 精度模型。在 vLLM 中,您可以使用相同的命令运行任一精度的推理。
对于 GLM-4.5 模型,您可以使用以下命令启动服务:
vllm serve zai-org/GLM-4.5-Air \
--tensor-parallel-size 4 \
--tool-call-parser glm45 \
--reasoning-parser glm45 \
--enable-auto-tool-choice对于 GLM-4.5V 模型,您可以使用以下命令启动服务:
vllm serve zai-org/GLM-4.5V \
--tensor-parallel-size 4 \
--tool-call-parser glm45 \
--reasoning-parser glm45 \
--enable-auto-tool-choice \
--allowed-local-media-path / \
--media-io-kwargs '{"video": {"num_frames": -1}}'注意事项
- 模型输出的推理部分将被包含在
reasoning_content中。content仅包含最终答案。如需禁用思维过程,请添加以下参数:extra_body={"chat_template_kwargs": {"enable_thinking": False}} - 如果您正在使用 8x H100 GPU 且在运行 GLM-4.5 模型时遇到内存不足问题,则需要使用
--cpu-offload-gb 16。 - 如果您遇到
flash_infer相关问题,请使用VLLM_ATTENTION_BACKEND=XFORMERS作为临时替代方案。您也可以指定TORCH_CUDA_ARCH_LIST='9.0+PTX'来使用flash_infer;不同的 GPU 具有不同的 TORCH_CUDA_ARCH_LIST 值,请相应查阅。 - vLLM v0 版本不支持我们的模型。
GLM-4.5V 中的定位能力
GLM-4.5V 具备精确的定位能力。当给定要求定位特定对象的 Prompt 时,GLM-4.5V 能够逐步推理并识别目标对象的边界框(bounding boxes)。查询 Prompt 支持对目标对象的复杂描述以及指定的输出格式。示例 Prompt 如下:
- 帮我在图像中定位
<expr>并给出其边界框。 - 请根据给出的描述,在图像中标注边界框
[[x1,y1,x2,y2], …]。
此处,<expr> 是对目标对象的描述。输出的边界框是一个四元组,
在响应中,特殊标记 <|begin_of_box|> 和 <|end_of_box|> 用于标记答案中的图像边界框。括号样式可能会有所不同([]、[[]]、()、<> 等),但含义相同:即包裹框的坐标。
vLLM 与 GLM 团队的合作
在 GLM-4.5 和 GLM-4.5V 模型发布之前,vLLM 团队与 GLM 团队密切合作,在解决模型发布相关问题上提供了大量支持,确保在模型正式发布前,vLLM main 分支已全面支持开源 GLM-4.5 系列。
致谢
我们要感谢 vLLM 方面为此做出贡献的许多人员,包括:Kaichao You、Simon Mo、Zifeng Mo、Lucia Fang、Rui Qiao、Jie Li、Ce Gao、Roger Wang、Lu Fang、Wentao Ye 和 Zixi Qi。