开源 GLM-4-0414 系列模型解读:32B 对话/推理/沉思模型、长上下文外推与微调实战
发布时间:2026/10/9 2:10:27 锦皓数字建站

人工智能大模型基础模型模型推理服务微调本地部署多模态【免费下载链接】GLM-4GLM-4 series: Open Multilingual Multimodal Chat LMs | 开源多语言多模态对话模型项目地址https://gitcode.com/zai-org/GLM-4点击查看免费下载导读本文以智谱 AI 开源仓库 zai-org/GLM-4 的官方中文文档README_zh.md为主线系统讲解 GLM-4-0414 系列开源模型的家族构成、能力定位、评测表现以及本地部署中的三大关键工程实践YaRN 长上下文外推、LoRA/全参微调、基于 transformers 与 vLLM 的推理部署与提示词构造。读完本文你将能准确区分 Base/Chat/Reasoning/Rumination 四类模型的适用场景掌握从模型清单选型、config.json修改、微调脚本运行到apply_chat_template提示词约束的完整落地路径。GLM-4-0414 系列一次发布四类能力的开源模型矩阵根据仓库 README_zh.md 的官方介绍GLM 家族于 2025/04/14 发布的GLM-4-0414 系列将开源模型规模提升至 320 亿参数并覆盖对话、推理、沉思三类能力具体包含四个成员模型类型定位要点GLM-4-32B-Base-0414Base 基座经 15T 高质量数据预训练含大量推理类合成数据GLM-4-32B-0414Chat 对话在后训练中通过人类偏好对齐 拒绝采样 强化学习强化指令遵循、工程代码、函数调用GLM-Z1-32B-0414Reasoning 深度思考在 0414 基座之上经冷启动 扩展强化学习训练强化数学、代码、逻辑能力GLM-Z1-Rumination-32B-0414Rumination 沉思对标 OpenAI Deep Research长时间深度思考 结合搜索工具处理开放复杂问题GLM-Z1-9B-0414Reasoning 轻量推理沿用前述技术栈训练的小尺寸模型在资源受限场景兼顾效率与效果几个需要精确理解的技术细节15T 预训练数据是 GLM-4-32B-Base-0414 的能力底座文档明确说明其中包含大量推理类合成数据为后续强化学习扩展打下基础见 README_zh.md 模型介绍小节。Chat 模型的智能体强化除对话场景的人类偏好对齐外GLM-4-32B-0414 通过拒绝采样rejection sampling与强化学习强化了指令遵循、工程代码、函数调用三方面的效果文档称其为加强智能体任务所需的原子能力。GLM-Z1-Rumination-32B-0414 的特殊性它在深度思考过程中结合搜索工具处理复杂任务并通过多种规则型奖励来指导和扩展端到端强化学习训练在研究型写作和复杂检索任务上能力显著提升。这一点直接对应下文提示词实现中它只支持固定四个搜索类工具的约束。GLM-4-9B-0414 的差异化定位文档特别说明由于较小模型容量GLM-4-9B-0414 未做类似 32B 的智能体能力强化而是主要针对翻译等需要大批量调用的场景进行优化。效果展示代码、Artifacts 与检索写作的代表性场景README_zh.md 用一组示例 Prompt 展示了 0414 系列的能力边界覆盖四类典型任务可作为功能验收的参考 Prompt动画绘制用 Python 编写小球在旋转六边形内弹跳的物理模拟程序或用 HTML 模拟小球在旋转六边形中心释放后的弹性碰撞场景。网页设计设计支持自定义函数绘制、增删函数并指定颜色的绘图板用 Tailwind CSS 设计移动端机器学习平台 UI含训练任务、存储管理、个人统计图表。SVG 生成用 SVG 创作烟雨江南意象画用 SVG 可视化 LLM 训练流程。分析调研撰写撰写中国城市 AI 发展分析北京与杭州的对比研究并调研国外城市 AI 治理案例对应 Z1-Rumination 的搜索 深度思考链路。这些案例与文档宣称的工程代码、Artifacts 生成、函数调用、搜索问答及报告方向一一对应其中分析调研类任务正是 Rumination 模型的典型用法。模型列表与上下文长度32K 原生上下文与 128K 外推GLM-4-0414 系列2025/04/14 发布模型类型上下文长度GLM-4-9B-0414Chat32K - 128KGLM-Z1-9B-0414Reasoning32K - 128KGLM-4-32B-Base-0414Base32K - 128KGLM-4-32B-0414Chat32K - 128KGLM-Z1-32B-0414Reasoning32K - 128KGLM-Z1-Rumination-32B-0414Reasoning128K表格中32K - 128K的含义模型原生按 32K 上下文训练对于输入 输出总长度可能超过 32K 的请求官方建议激活 YaRN获得较好的外推性能具体做法见下文长上下文处理YaRN一节。各模型在 Hugging Face、ModelScope、Modelers、WiseModel 等平台均提供官方权重下载其中 GLM-Z1-9B-0414 还提供了在线体验入口ModelScope Studio。2024 年 6 月 5 日发布的 GLM-4 系列仓库保留了历史版本 README_zh_240605.md 记载的 2024 年 6 月 5 日发布的第一代 GLM-4 开源模型用于对照演进模型类型上下文长度GLM-4-9BBase8KGLM-4-9B-ChatChat128KGLM-4-9B-Chat-HFChat128KGLM-4-9B-Chat-1MChat1MGLM-4-9B-Chat-1M-HFChat1MGLM-4V-9BChat多模态8K两代模型的差别是理解该系列的关键2024 系列以 9B 为主、GLM-4V-9B 提供视觉能力而 2025 的 0414 系列将规模升至 32B 并补齐了推理Z1与沉思Rumination能力上下文也从 8K/128K/1M 的多样形态收敛为统一的 32K 原生 YaRN 外推 128K。评测结果指令遵循、智能体工具调用与代码工程对话与智能体基准GLM-4-32B-0414README_zh.md 给出 GLM-4-32B-0414 与多款主流闭源/开源模型在 7 个基准上的对比模型IFEvalBFCL-v3 (Overall)BFCL-v3 (MultiTurn)TAU-Bench (Retail)TAU-Bench (Airline)SimpleQAHotpotQAQwen2.5-Max85.650.930.558.322.079.052.8GPT-4o-112081.969.641.062.846.082.863.9DeepSeek-V3-032483.466.235.860.732.482.654.6DeepSeek-R184.357.512.433.037.383.963.1GLM-4-32B-041487.669.641.568.751.288.163.8其中 IFEval 衡量指令遵循BFCL-v3 衡量函数调用含多轮TAU-Bench 衡量真实业务场景Retail 零售 / Airline 航空下的工具使用能力SimpleQA 与 HotpotQA 为检索问答类基准。README_zh.md 对评测方法给出了透明说明对于 SimpleQA 和 HotpotQA官方从测试集中各采样近 500 条样例为所有模型提供基础的search和click工具其余设置保持一致3 次评测取平均值。代码工程基准SWE-bench Verified在真实软件工程修复基准上README_zh.md 给出了 GLM-4-32B-0414 在三种 Agent 框架下的成绩框架SWE-bench VerifiedSWE-bench Verified miniMoatlessv0.0.333.838.0Agentlessv1.5.030.734.0OpenHandsv0.29.127.228.0官方同时说明了各框架的评测配置这些配置细节对复现实验极有价值Moatlessresponse_formatreact、thoughts_in_actionFalse、max_interations30未对失败轨迹重试其余默认配置。AgentlessEmbedding 使用 BGE 模型基于 FAISS 做相似性检索为加快 patch 验证速度将单实例超时从默认 300s 改为 180s。OpenHands未采用 YaRN 上下文扩展而是限制最大 60 个 iterations 并对 history 做 summarization 以规避 32K 上下文上限summarization 配置为llm_configcondenser、keep_first1、max_size32同样不对失败轨迹重试。该节的完整图表另见仓库 resources/Bench-32B.png、resources/Bench-Z1-9B.png 与 resources/Bench-Z1-32B.png。模型实现三大推理框架中的 GLM-4 落地README_zh.md 指出GLM-4 的模型实现已合入三个主流生态的官方仓库开发者无需自行移植vLLM模型实现位于vllm/model_executor/models/glm4.py用于高吞吐推理与 OpenAI 兼容服务transformers模型实现位于src/transformers/models/glm4/modeling_glm4.py用于通用加载、评估与微调llama.cpp通过对应 Pull Request 合入用于 CPU / 轻量部署。注意README_zh.md 中这些实现均以外部 Pull Request 链接形式给出vLLM 的 glm4.py、transformers 的 modeling_glm4.py、llama.cpp 的 PR #12867克隆本仓库只能获取文档引用具体实现代码需在上述框架仓库中查看。在本仓库内模型加载与生成的具体用法可从 inference 目录的示例脚本中看到例如 inference/trans_cli_demo.py 使用AutoModelForCausalLM.from_pretrained(MODEL_PATH, torch_dtypetorch.bfloat16, device_mapauto)加载模型并以max_new_tokens8192、top_p0.8、temperature0.6、repetition_penalty1.2作为默认生成参数该脚本的默认模型路径为THUDM/GLM-4-9B-0414。长上下文处理YaRN32K 之外的 128K 外推这是 README_zh.md 中最重要的部署参数之一。判断是否需要开启 YaRN 的唯一标准是输入 输出 token 总数如果请求的输入 输出 token 数不会超过模型原生上下文长度0414 系列多数为 32K无需任何修改一旦可能超出建议开启 YaRN 获得更好的长上下文建模能力。对于 GLM-Z1 系列模型官方建议当输入长度超过 8,192 tokens 时考虑启用 YaRNRope Scaling。开启方式在模型config.json中修改rope_scaling字段rope_scaling: { factor: 4.0, original_max_position_embeddings: 32768, type: yarn }参数说明type: yarn启用 YaRNYet another RoPE extensioN外推这是当前 GLM-4-0414 系列推荐的外推方式factor: 4.0外推倍率对应将 32K 原生长度放大至 128K32K × 4original_max_position_embeddings: 32768必须与模型原生最大位置编码一致即 32K。补充说明GLM-Z1-Rumination-32B-0414 原生即支持 128K 上下文见模型列表而其余 0414 模型均按上述配置外推2024 年的 GLM-4-9B-Chat-1M 系列则原生具备 1M 上下文不在此配置范围内。模型微调实战LoRA 与全参 SFT 的一站式脚本README_zh.md 将微调指引指向仓库的 finetune 目录。该目录包含完整微调工程finetune.py对话模型、finetune_vision.py视觉模型、configs/lora.yaml/configs/sft.yaml训练配置、configs/ds_zero_2.json/configs/ds_zero_3.jsonDeepSpeed 配置以及中英文说明文档 finetune/README_zh.md。算力需求参考finetune/README_zh.md 给出了官方在 Ubuntu 22.04 / Python 3.12.3 / CUDA 12.4 / NVIDIA H100 80GB 环境下实测的显存占用来源本仓库代码微调微调模型方案显存占用GLM-4-9B-0414LoRA (PEFT)22G / GPU1 张 GPUGLM-4-9B-ChatLoRA (PEFT)22G / GPU1 张 GPUGLM-4-9B-ChatSFTZero380G / GPU8 张 GPUGLM-4V-9BLoRA含 EVA2CLIP 视觉塔75G / GPU1 张 GPU对照基于 Llama-Factory 的方案GLM-4-9B-0414 的 LoRA 同样约 22G/GPU而 GLM-4-32B-0414 的全参 SFTZero3需要 16 张 80G GPU。可见LoRA 是单卡 / 小显存环境的首选路径。起步命令官方推荐cd finetune pip install -r ../inference/requirements.txt pip install -r requirements.txt # 单卡对话模型微调 python finetune.py data/AdvertiseGen/ THUDM/GLM-4-9B-0414 configs/lora.yaml命令解析data/AdvertiseGen/训练数据目录需自备官方用例如广告文案生成数据目录内需按配置指向train.jsonl/dev.jsonlTHUDM/GLM-4-9B-0414基座模型名或本地模型路径configs/lora.yamlLoRA 微调配置视觉模型对应命令为python finetune_vision.py data/CogVLM-311K/ THUDM/glm-4v-9b configs/lora.yaml。若要单机多卡 / 多机多卡运行则改用torchrun需安装 deepspeedOMP_NUM_THREADS1 torchrun --standalone --nnodes1 --nproc_per_node8 \ finetune.py data/AdvertiseGen/ THUDM/GLM-4-9B-0414 configs/lora.yaml多轮对话数据格式与 loss_maskfinetune/README_zh.md 详细约定了微调数据格式数据为 JSON 数组每条包含messages列表按 GLM-4 对话格式约定对不同角色添加不同loss_mask从而在一遍计算中为多轮回复计算 loss。角色规则如下system角色可选若存在必须位于user之前且整个对话无论单轮/多轮只能出现一次tools字段可选若存在必须在system之后、整个对话只能出现一次当tools存在时system角色必须存在且content为空工具调用轮次使用observation角色承载工具返回结果GLM-4V-9B不支持tools与system字段image必须放在第一条消息中且使用图片的绝对路径。一个不带工具的示例{ messages: [ {role: user, content: 类型#裤*材质#牛仔布*风格#性感}, {role: assistant, content: 3x1的这款牛仔裤采用浅白的牛仔面料为裤身材质……} ] }一个带工具调用的示例assistant 输出 JSON 形式的函数调用observation返回工具结果{ messages: [ {role: system, content: , tools: [ {type: function, function: { name: get_recommended_books, description: Get recommended books based on users interests, parameters: { type: object, properties: {interests: {type: array, items: {type: string}, description: The interests to recommend books for}}, required: [interests] } }} ]}, {role: user, content: Hi, I am looking for some book recommendations. I am interested in history and science fiction.}, {role: assistant, content: {\name\: \get_recommended_books\, \arguments\: {\interests\: [\history\, \science fiction\]}}}, {role: observation, content: {\books\: [\Sapiens...\, \A Brief History of Time...\, ...]}}, {role: assistant, content: Based on your interests in history and science fiction, I would recommend the following books: ...} ] }loss_mask 的底层实现可以在 finetune/finetune.py 的process_batch函数中验证脚本通过特殊 token ID151331/151333对话开头与151336EOS、151337assistant 起始定位回复区间仅对 assistant 回复 token 置loss_maskTrue其余system/user/observation置False并在 labels 中填-100从而实现多轮回复一次计算 loss。其中combine: True模式先对整个对话做apply_chat_template再定位最后一个 assistant 起始位置来构建 maskcombine: False则逐条消息独立处理。训练结束后评估指标为 ROUGE-1/2/l 与 BLEU-4compute_metrics中文侧使用 jieba 分词。配置参数详解finetune/configs/lora.yaml 是官方默认的 LoRA 配置finetune/configs/sft.yaml 为全参 SFT 配置二者结构一致关键参数如下data_config数据参数含义train_file / val_file / test_file训练 / 验证 / 测试数据文件名num_proc加载数据时使用的进程数训练与序列参数参数含义max_input_length / max_output_length输入 / 输出序列最大长度默认 512combine是否对整个对话一次构建输入与 loss_maskfreezeV视觉模型微调时是否冻结视觉塔视觉任务相关training_args训练参数默认值含义output_dir./output模型与产物保存目录max_steps3000最大训练步数learning_rate5e-4LoRA/ 5e-5SFT学习率per_device_train_batch_size1每卡训练 batch sizedataloader_num_workers16数据加载线程数remove_unused_columnsfalse是否移除未用列save_strategy / save_stepssteps / 500保存策略与间隔log_level / logging_stepsinfo / 10日志级别与记录间隔per_device_eval_batch_size4LoRA/ 16SFT每卡评估 batch sizeeval_strategy / eval_stepssteps / 500评估策略与间隔predict_with_generatetrue是否以生成模式预测generation_config.max_new_tokens512生成最大新 token 数deepspeedconfigs/ds_zero_2.json / ds_zero_3.jsonDeepSpeed 配置路径peft_configLoRA 参数参数默认值含义peft_typeLORA参数高效微调类型支持 LORA 与 PREFIX_TUNINGtask_typeCAUSAL_LM因果语言模型任务不要改动r8LoRA 秩lora_alpha32LoRA 缩放因子lora_dropout0.1LoRA 层 dropout 概率target_modules[q_proj,k_proj,v_proj]注入 LoRA 的注意力投影层DeepSpeed 配置ds_zero_2.json使用 ZeRO-2 并开启overlap_comm、reduce_scatter、contiguous_gradientsds_zero_3.json使用 ZeRO-3开启stage3_gather_16bit_weights_on_model_save保存模型时聚合 16bit 权重并用 AdamW 优化器。单卡 LoRA 微调建议保留deepspeed: configs/ds_zero_2.json配置。从 Checkpoint 断点续训finetune/finetune.py 的main函数支持第四个位置参数auto_resume_from_checkpointyes自动从output_dir下编号最大的checkpoint-*继续训练数字如600从checkpoint-600继续训练空 /no从头训练。python finetune.py data/AdvertiseGen/ THUDM/GLM-4-9B-0414 configs/lora.yaml yes使用微调后的模型对于 LoRA / P-TuningV2官方不合并权重而是通过adapter_config.json记录基座模型路径base_model_name_or_path若原始模型位置变更需同步修改该字段。加载微调模型时优先检查adapter_config.json是否存在存在则用AutoPeftModelForCausalLM.from_pretrained否则用AutoModelForCausalLM完整参考代码见 finetune/README_zh.md 的load_model_and_tokenizer示例。在任意 demo 中替换读入模型的方式即可使用微调产物。日志可视化README_zh.md 提到微调脚本支持SwanLab可视化跟踪。配置方式为安装swanlab后在配置文件中设置swanlab: local走本地看板swanlab watch启动或使用云端模式finetune/finetune.py 中FinetuningConfig.__post_init__会依据swanlab字段设置SWANLAB_MODE/SWANLAB_PROJ_NAME环境变量。提示词实现apply_chat_template 与系统提示词约束README_zh.md 对 0414 系列系统提示词system prompt的限制给出了明确约定这直接决定你如何正确构造请求GLM-4-32B-Base-0414基座模型无对话模板只能做补全式调用GLM-4-*-0414 / GLM-Z1-*-0414若传入toolsapply_chat_template会把工具填充到chat_template的固定模板中单独作为一条带tools绑定的system字段拼接于messages[0]原传入的所有 messages 自动往后移动一个位置GLM-Z1-Rumination-32B-0414特殊约束不支持自定义系统提示词、不支持自定义工具你的tools与system字段会被apply_chat_template忽略使用该模型必须外接搜索引擎或自定义 retrieval API一共只支持四个工具1. search 描述: 执行搜索查询并返回搜索结果。当您需要查找有关特定主题的信息时使用此功能。 参数: query (字符串) - 搜索查询字符串除非是中文专有名词否则使用英文单词 2. click 描述: 点击搜索结果中的链接并导航到相应页面。当您需要查看特定搜索结果的详细内容时使用此功能。 参数: link_id (整数) - 要点击的链接ID来自搜索结果中的序号 3. open 描述: 打开特定网站。通过URL获取任何网站的内容。 参数: url (字符串) - 目标网站URL或域名 4. finish 描述: 完成任务。当您已找到所需信息时使用此功能。 参数: 无chat_template固定模板中的思考过程默认使用英文如需更换语言目前支持中文与英文需修改模板中的以下部分重要配置 - 采用语言 * 搜索关键词英文 - 在这里换成中文或者其他语言 * 思考英文 - 在这里换成中文或者其他语言官方建议要查看 0414 系列各模型的具体对话模板可直接在对应模型仓库中查看chat_template.jinja文件。在本仓库中apply_chat_template的实际用法可见 inference/trans_cli_demo.py其通过tokenizer.apply_chat_template(messages, add_generation_promptTrue, tokenizeTrue, return_dictTrue)构造input_ids与attention_mask后调用model.generate。推理部署快速上手transformers 与 vLLM 两套后端README_zh.md 将推理指引指向 inference 目录仓库 inference/README_zh.md 给出了完整命令。安装依赖后transformers 后端python trans_cli_demo.py # CLI 对话如 GLM-4-9B-0414 python trans_cli_vision_demo.py # GLM-4V-9B 视觉对话 python trans_web_demo.py # Gradio 网页对话 python trans_web_vision_demo.py # GLM-4V-9B 网页对话 python trans_batch_demo.py # Batch 推理 python trans_stress_test.py # 生成速度压力测试vLLM 后端python vllm_cli_demo.py # CLI 对话 vllm serve THUDM/GLM-4-9B-0414 --tensor_parallel_size 2 # OpenAI 兼容 APIGLM-4V OpenAI 服务python glm4v_server.py THUDM/glm-4v-9b # 启动服务端 python glm4v_api_request.py # 发起客户端请求inference/README_zh.md 还给出了官方压力测试数据BF16、H100 80GB 环境多卡时显存为最大单卡占用可作为选型参考GLM-4-32B-0414单卡 BF16 输入 1000 token 时显存约 68GB、首 Token 延迟 0.16s、输出 24.4 tokens/s输入 32000 token 需 2 卡输入 100000 token 需 4 卡。GLM-4-9B-0414单卡 BF16 输入 1000 token 时显存约 19GB、输出 44.4 tokens/s输入 100000 token 时单卡 55GB、14.1 tokens/s。GLM-4V-9BBF16 单卡输入 1000 token 约 28GBINT4 量化后降至约 10GB输入 1000 token/ 15GB输入 8000 token。此外该文档说明可基于昇腾 NPU 运行将from transformers import ...替换为from openmind import ...并将设备从cuda改为npu。引用若你的工作基于 GLM 系列模型官方建议引用其论文BibTeX 条目可在 README_zh.md 末尾查看misc{glm2024chatglm, title{ChatGLM: A Family of Large Language Models from GLM-130B to GLM-4 All Tools}, author{Team GLM and Aohan Zeng and Bin Xu and ...}, year{2024}, eprint{2406.12793}, archivePrefix{arXiv}, primaryClass{cs.CL} }总结本文沿 README_zh.md 的主线完整梳理了 GLM-4-0414 系列的选型、评测与工程落地路径四类模型Base/Chat/Reasoning/Rumination能力定位各异Rumination 专为搜索增强的深度研究场景设计32K 原生上下文可通过 YaRN 外推至 128K微调方面LoRA 单卡 22G 显存即可启动全参 SFT 适合 8/16 卡集群配合 DeepSpeed ZeRO-2/3 与断点续训可灵活调度提示词层面需牢记 Base 无模板、Rumination 忽略自定义 system/tools 并内置四个固定搜索工具。结合仓库内 finetune 与 inference 的可运行脚本读者可以在本地快速复现从微调到部署的完整链路。赞分享人工智能大模型基础模型模型推理服务微调本地部署多模态【免费下载链接】GLM-4GLM-4 series: Open Multilingual Multimodal Chat LMs | 开源多语言多模态对话模型项目地址https://gitcode.com/zai-org/GLM-4点击查看免费下载相关推荐SmartDNS终极配置指南5步打造极速网络体验SmartDNS终极配置指南5步打造极速网络体验 还在为网络卡顿、视频缓冲而烦恼吗想要彻底解决DNS解析慢的问题让网络访问如丝般顺滑SmartDNS正是后端网络Cosmos3-Super-Image2Video-4Step vs 传统视频生成模型为什么4步蒸馏技术能实现质量与速度双赢Cosmos3 Super Image2Video 4Step vs 传统视频生成模型为什么4步蒸馏技术能实现质量与速度双赢 Cosmos3 Super I大模型媒体生成视频基础模型人工智能具身智能戴森球计划终极蓝图库3000工厂设计方案让你3倍效率建太空帝国戴森球计划终极蓝图库3000工厂设计方案让你3倍效率建太空帝国 还在为戴森球计划中复杂的工厂设计而头疼吗FactoryBluePrints蓝图库为你提供了游戏开发上一篇如何在5分钟内安装MarkDownload终极网页转Markdown指南下一篇Video2X终极指南如何免费实现4K视频超分辨率升级创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
锦
锦皓数字建站
深耕本土企业品牌数字化升级,专注原创端正雅致商务官网,从视觉设计到稳定运维全程保驾护航。