GLM-4.1V-Thinking Gradio 多模态 Web 界面部署实战指南
2026/9/12 4:15:01 网站建设 项目流程

GLM-4.1V-Thinking Gradio 多模态 Web 界面部署实战指南

【免费下载链接】self-llm《开源大模型食用指南》针对中国宝宝量身打造的基于Linux环境快速微调(全参数/Lora)、部署国内外开源大模型(LLM)/多模态大模型(MLLM)教程项目地址: https://gitcode.com/GitHub_Trending/se/self-llm

GLM-4.1V-Thinking 是智谱 AI 推出的视觉语言模型(VLM),在 GLM-4-9B-0414 基座模型之上引入思考范式,并借助课程采样强化学习(RLCS)提升综合能力。本指南基于本仓库 models/GLM-4.1V-Thinking 目录下的部署文档,围绕 THUDM 官方提供的 Gradio 交互脚本,完整讲解从环境准备、模型下载、服务启动到本地浏览器访问的全流程。读完本文,你将能够在本机或 AutoDL 云端 GPU 机器上,搭建一个支持图片、视频、PDF、PPT 等多模态输入的开箱即用的 Web 对话界面。

方案概览:官方 Gradio 脚本能做什么

THUDM 为 GLM-4.1V-Thinking 提供了一个开箱即用的 Gradio 界面脚本(trans_infer_gradio.py,位于克隆下来的推理仓库的inference/目录下),启动后即可得到一个可直接使用的 Web 界面,核心能力如下:

  • 多模态输入:支持上传图片、视频、PDF、PPT 等多种文件格式,由模型进行理解与回答;
  • 多轮对话:界面内置对话历史区域,可围绕已上传的多媒体内容持续追问;
  • System Prompt 自定义:可在界面右侧设置系统提示词,约束模型的行为与回答风格;
  • 路径可配置:脚本内的模型路径为常量定义,本地已下载好模型时,只需修改对应模型路径即可直接复用,无需改动其余逻辑。

在具体动手之前,先对照同目录下的 01-GLM-4 1V-Thinking vLLM部署调用.md 了解模型的多模态输入规格,这决定了 Web 界面上传区的能力边界:

输入类型最大允许数量支持的格式
图片10 张(Gradio 界面),300(API 方式)JPG, JPEG, PNG, GIF, BMP, TIFF, WEBP
视频1 个MP4, AVI, MKV, MOV, WMV, FLV, WEBM, MPEG, M4V
文档1 个 PDF 或 1 个 PPTPDF, PPT, PPTX(内部转换为图片后理解)

第一步:环境与依赖准备

硬件与软件环境

本文示例(与 vLLM 部署文档 同源)使用如下试验环境,可作为复现参考:

---------------- PyTorch 2.5.1 Python 3.12 (ubuntu22.04) CUDA 12.4 GPU A800-80GB (80GB) * 1 ----------------

由于 Gradio 界面底层仍通过 transformers 加载完整模型权重进行推理,建议显存充足(40GB 以上)的 GPU 环境,或配合量化手段运行。

克隆推理仓库并安装依赖

Gradio 脚本属于 THUDM 官方推理仓库的一部分,需要先将其克隆到本地(示例路径为/root/autodl-tmp/GLM-4.1V-Thinking,请按需调整):

git clone <THUDM/GLM-4.1V-Thinking 官方仓库> cd GLM-4.1V-Thinking

随后安装依赖。国内环境可先完成 pip 换源加速(参见仓库内 01-pip、conda换源.md),再执行:

python -m pip install --upgrade pip pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple pip install modelscope pip install -r GLM-4.1V-Thinking/requirements.txt

requirements.txt中的关键依赖项及其作用如下:

依赖版本要求用途
torch>=2.7.1深度学习框架,模型推理的底层引擎
gradio>=5.35.0Web 界面框架,提供对话与上传交互组件
PyMuPDF>=1.26.1PDF 解析,支撑文档类多模态输入
av>=14.4.0视频解码,支撑视频输入处理
accelerate>=1.6.0设备自动分配与推理加速
transformers / vLLM需为较新版本模型加载与生成,建议从官方源获取最新版

需要说明的是:trans_infer_gradio.py在源码层面通过 transformers 的AutoProcessorGlm4vForConditionalGeneration加载模型(可从脚本截图中的load_model()函数看出),因此安装的 transformers 版本必须支持Glm4vForConditionalGeneration这一模型类。

第二步:下载模型并配置模型路径

方式一:ModelScope 下载

新建.py/.ipynb文件,使用modelscopesnapshot_download函数下载,第一个参数为模型名称,cache_dir指定模型自定义下载路径:

from modelscope import snapshot_download model_dir = snapshot_download('ZhipuAI/GLM-4.1V-9B-Thinking', cache_dir='/root/autodl-tmp', revision='master')

方式二:Hugging Face CLI 下载

huggingface-cli download THUDM/GLM-4.1V-9B-Thinking --local-dir /root/autodl-tmp/GLM-4.1V-9B-Thinking

提示:务必记得将上述cache_dir/local_dir修改为你的模型下载路径;模型也可以在首次运行脚本时自动下载,但显式下载更可控。关于镜像加速等细节可参考仓库内 03-模型下载.md。

修改脚本中的模型路径

脚本中通过常量定义模型路径,从官方脚本的代码结构(见下图)可以看出,需要关注的核心是MODEL_PATH常量,以及load_model()中的加载逻辑:

MODEL_PATH = "ZhipuAI/GLM-4.1V-9B-Thinking" # load_model() 内部通过 transformers 加载 processor = AutoProcessor.from_pretrained(模型路径, use_fast=True) model = Glm4vForConditionalGeneration.from_pretrained( 模型路径, torch_dtype=torch.bfloat16, device_map="auto" )

如果你已经在本地下载好了 GLM-4.1V 模型,只需把MODEL_PATH改成对应的本地模型路径即可,其余部分无需改动。加载时使用torch.bfloat16半精度以节省显存,device_map="auto"让 transformers 自动把模型分配到可用设备上。

另外,从脚本的参数解析器(argparse)可以看到,它还支持若干启动参数,可用于自定义服务行为:

  • --server_name:服务监听地址;
  • --server_port:服务监听端口(默认 7860);
  • --share:是否创建 Gradio 公网分享链接;
  • --mcp_server:可选的 MCP(Model Context Protocol)服务端配置。

第三步:启动 Gradio 服务

在完成依赖安装与模型下载后,切换到克隆的仓库目录,直接运行官方脚本:

python /root/autodl-tmp/GLM-4.1V-Thinking/inference/trans_infer_gradio.py

首次启动会加载模型权重,终端日志大致如下(见下图):

Loading checkpoint shards: 100% 4/4 [00:03:00<00:00, 1.23it/s] Running on local URL: http://127.0.0.1:7860 To create a public link, set share=True in launch()

日志中的关键信息解读:

  • Loading checkpoint shards: 100% 4/4:模型权重共 4 个分片,全部加载完成(约耗时 3 分钟,视机器性能而定);
  • Running on local URL: http://127.0.0.1:7860:服务已在本地 7860 端口就绪,此时在本机浏览器访问http://127.0.0.1:7860即可打开界面;
  • To create a public link, set share=True in launch():如需生成可对外分享的公网链接,可在启动时追加--share参数(对应脚本中的share参数)。

第四步:AutoDL 云端机器的端口映射

如果你使用的是 AutoDL 等云端 GPU 机器,服务运行在远端,需要在本地通过 SSH 隧道把远端端口映射到本机才能访问。使用 AutoDL 的小伙伴根据自己系统的指引连接即可,一个典型的 SSH 端口映射命令如下:

ssh -F /dev/null -CNg -L 7860:127.0.0.1:7860 root@connect.nma1.seetacloud.com -p 36185

该命令各参数的含义:

参数含义
-F /dev/null不使用默认 SSH 配置文件,避免干扰
-C开启压缩传输,降低网络开销
-N不执行远程命令,仅建立隧道
-g允许远程主机连接本地转发端口
-L 7860:127.0.0.1:7860将本地 7860 端口转发到远程的 127.0.0.1:7860
root@connect.nma1.seetacloud.com -p 36185AutoDL 实例的连接地址与端口(每个实例不同,以控制台显示为准)

执行成功后,在本地浏览器访问http://127.0.0.1:7860即可打开部署在云端机器上的 Gradio 界面。如果你希望直接用本地6006端口等自定义端口,可参照仓库内 02-AutoDL开放端口.md 中“端口映射”小节的说明,映射方法完全一致,只需把端口号替换为 7860。

第五步:Web 界面使用指南

界面布局

服务启动后,浏览器中呈现的是标准的 Gradio 对话式界面(标题为GLM-4.1V-9B-Thinking Gradio Space),整体分为左右两大区域:

  • 左侧 Conversation(对话区):展示与模型的多轮对话历史;底部为Message消息输入框,以及Send(发送)、Clear(清空)按钮;
  • 右侧 Upload(上传区):支持将文件拖拽到此处或点击上传,可上传图片、视频、PPT、PDF 等文件;下方提供System Prompt文本框,可输入系统提示词约束模型行为。

图片理解示例

上传一张图片后,界面会自动基于图片生成提问(如What does this picture look like?),模型随即给出结构化的详细分析。从实际交互截图可以看到,模型会按照“主体对象、细节、环境、背景信息”等维度逐点拆解图片内容,回答条理清晰:

多轮对话示例

界面支持围绕同一上下文持续追问。例如中文问候之后,接着上传一张晚餐照片并提问“可以为我简单介绍这个晚餐是由什么组成的吗?”,模型会结合上传的图片内容,分点列出餐食的组成(如沙拉、鸡胸肉、玉米、小番茄等食材),并给出整体说明。多模态输入与对话历史相结合,正是该界面的核心使用场景。

输入限制提醒

在使用 Web 界面时需注意上一节给出的输入上限:图片一次最多上传 10 张;视频一次 1 个;文档一次 1 个 PDF 或 1 个 PPT(PPT/PPTX 会被内部转换为图片后理解)。若单次输入超出限制,可分批上传或改用 vLLM API 方式(图片上限可提升至 300 张)。

进阶:与其他部署方式的选择

Gradio 界面适合快速验证与人工交互,如果你需要将模型能力接入业务系统、做并发调用或批量评测,可以对比选择同目录下的其他部署方案:

  • 01-GLM-4 1V-Thinking vLLM部署调用.md:使用 vLLM 创建兼容 OpenAI API 协议的推理服务器,默认监听http://localhost:8000,支持completionschat completions接口,可通过--served-model-name--max-model-len--limit-mm-per-prompt等参数精细控制服务行为,适合服务化集成;
  • 03-GLM-4 1V-Thinking LoRA 及 SwanLab 可视化记录.md:基于 LLaMA-Factory 对 GLM-4.1V 进行 LoRA 微调并接入 SwanLab 可视化,微调产出后的模型同样可以替换MODEL_PATH接入本 Gradio 脚本进行效果验证。

小结

本文完整覆盖了 GLM-4.1V-Thinking 官方 Gradio 脚本的部署链路:环境与依赖准备(gradio>=5.35.0PyMuPDFav等关键依赖)、模型下载(ModelScope / Hugging Face 两种方式)、模型路径配置(MODEL_PATH常量)、服务启动(trans_infer_gradio.py)、AutoDL 云端 SSH 端口映射(7860 端口隧道),以及 Web 界面的多模态使用要点。整个过程围绕 02-GLM-4 1V-Thinking Gradio部署.md 的实操骨架展开,并结合同目录部署文档补充了输入规格、依赖版本与界面交互细节。按上述步骤操作,你即可拥有一个支持图片、视频、PDF、PPT 的 GLM-4.1V-Thinking 多模态对话 Web 应用。

【免费下载链接】self-llm《开源大模型食用指南》针对中国宝宝量身打造的基于Linux环境快速微调(全参数/Lora)、部署国内外开源大模型(LLM)/多模态大模型(MLLM)教程项目地址: https://gitcode.com/GitHub_Trending/se/self-llm

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询