CogVLM 是什么?视觉专家、CogVLM2 版本与本地部署指南

AI教程 发布于 2026-04-17 更新于 2026-07-16

一句话答案:CogVLM 是一种把“视觉专家”加入语言模型各层的开源视觉语言模型(VLM);官方没有发布名为“CogVLM-2026”的模型。当前理解这条技术线,应区分 2023 年的 CogVLM-17B、2024 年的 CogVLM2 图像模型、CogVLM2-Video 和面向 GUI 的 CogAgent。若是 2026 年新项目,还要把它们与官方已单列维护的 GLM-V 新路线比较,而不是默认旧权重仍是首选。

重要更正(复核日期:2026 年 7 月 16 日):本站旧稿曾把“CogVLM-2026”描述为已发布产品,并声称存在双路并行注意力、稀疏激活、4K 输入、20 页长文档、OCR 提升 40%和医疗诊断等能力。这些说法在官方仓库、论文和模型卡中找不到对应依据,现已删除。本文只陈述可追溯到一手资料的版本、架构和使用边界。
CogVLM 图像特征经过视觉编码器和适配器后,在语言模型各层使用视觉专家 QKV 与 FFN
CogVLM 的“视觉专家”位于语言模型层内:图像特征使用新增的 QKV 与 FFN,文本特征仍走原语言模型参数。示意图由本站依据论文绘制。

CogVLM、CogVLM2、CogAgent 有什么区别?

搜索“CogVLM”时最容易出错的是把家族名、权重名和语言模型参数量当成同一个数字。CogVLM 官方仓库记录:CogVLM-17B 于 2023 年 10 月发布,包含约 100 亿视觉参数和 70 亿语言参数,原始版本处理 490×490 图像。CogVLM 论文解释了视觉专家设计,而不是所谓“2026 双路稀疏模型”。

2024 年发布的 CogVLM2 官方仓库延续视觉专家路线。官方 CogVLM2 技术报告将家族分为图像理解、视频理解和 GLM-4V 等分支。若需要先理解 VLM 的共同结构,可阅读站内的视觉语言模型词典;CogVLM 页只回答这个具体家族,不重复通用定义。

名称 官方定位 需要记住的边界
CogVLM-17B 图像理解、对话与视觉定位;10B 视觉参数 + 7B 语言参数 原始仓库口径为 490×490;不能套用 CogVLM2 的 1344×1344 和 8K
CogVLM2-Llama3-Chat-19B 基于 Llama 3 8B 的图像理解和对话权重 “19B”是模型卡的总模型口径,“8B”指基础语言模型,不矛盾
CogVLM2 Chinese 官方提供的中英双语图像对话版本 应使用对应中文权重与模板,不应仅凭家族名推断中文质量
CogVLM2-Video 多帧加时间戳的视频问答与时间定位 不是图像版自动获得的视频能力;官方模型卡称聊天权重为单轮对话
CogAgent 在 CogVLM 基础上面向 GUI 理解和导航 GUI Agent 是独立权重和任务路线,不能当作普通 CogVLM 的默认功能

2026 年新项目还应该选择 CogVLM2 吗?

CogVLM2 仍适合复现论文、维护既有权重、研究视觉专家架构,或在已经验证的 Llama 3 兼容链路中继续运行;但它不再代表该团队当前唯一的视觉模型入口。截至复核日,官方 GLM-V 仓库已把 GLM-4.1V、GLM-4.5V 与 GLM-4.6V 单列为后续路线,并明确称 GLM-4.1V 相对 CogVLM2/GLM-4V 增加推理、64K 上下文、任意宽高比和最高 4K 图像支持。这里的“4K”属于 GLM-4.1V 及后续说明,不能倒填到 CogVLM2。

官方当前把 GLM-4.6V描述为面向云端和高性能集群的 106B 版本,把 GLM-4.6V-Flash描述为面向本地与低延迟的 9B 版本;仓库还记录 2026 年 4 月发布 GLM-5V-Turbo 服务。它们的架构、依赖、许可证、上下文和推理模板都应按各自模型卡复核,不能因为同属一个组织就称为“CogVLM3”或“CogVLM-2026”。

你的目标 优先评估 选择理由与边界
复现视觉专家论文或维护旧系统 CogVLM/CogVLM2 技术谱系和旧接口明确;先冻结 revision,不用新模型宣传替代回归测试
单机部署新的中英视觉推理 CogVLM2 INT4 与 GLM-4.6V-Flash 分别做基线 不要只比参数量;要比目标 GPU、显存、首 token、字段正确率、许可证和服务框架
长文档、GUI、视频或工具调用 GLM-V 当前模型与对应官方示例 能力属于具体权重和模板;PDF/PPT“可输入”不等于业务字段可以无复核自动执行
只调用云 API 当前开放平台模型目录 API 名称、计费、数据处理和保留政策可能变化,不能从开源模型卡外推

视觉专家到底是什么?

CogVLM 不是简单把图片说明文字拼进提示词。论文给出的结构包含视觉编码器(ViT)、MLP 适配器、预训练语言模型和逐层视觉专家。图像先被编码并映射到与文本嵌入兼容的空间;进入语言模型后,图像位置使用新增的视觉 QKV 矩阵和视觉 FFN,文本位置继续使用原语言模型的 QKV 与 FFN。两类特征仍在同一个因果注意力序列中交互。

因此,“视觉专家”可以概括为按 token 类型选择不同的层内变换参数,而不是只在输入端做一次投影,也不是旧稿所称“两个模型并行运行”或“仅在视觉任务时稀疏激活部分参数”。想进一步理解 QKV,可衔接站内的注意力机制说明;视觉编码阶段可参考图像编码器介绍

该选择哪个 CogVLM2 权重?

官方 CogVLM2 模型集合列出了英文、中文、INT4 和视频权重。选择时先看任务与许可证,再看显存。官方 19B 图像模型卡标注 8K 文本长度和最高 1344×1344 图像输入;这些是该权重的规格,不能扩写成“支持任意 4K 原图”或“可一次理解 20 页文档”。多页文档仍需分页、缩放、OCR/版面解析和逐页验收。

需求 优先查看 发布前必须验证
英文图像问答 cogvlm2-llama3-chat-19B BF16 显存、依赖版本、自己的图片尺寸与提示模板
中文图像问答 cogvlm2-llama3-chinese-chat-19B 中文 OCR、专名、表格和拒答样本,不以英文榜单代替
单卡显存受限 官方 INT4 权重 模型卡口径为 Linux + NVIDIA GPU,约需 16GB;量化前后质量需自测
视频时间定位 CogVLM2-Video 采帧、时长、时间戳、单轮会话限制和数据隐私
GUI 操作 CogAgent 坐标、页面状态、权限、误操作回滚,不用图像问答分数代替

INT4 官方模型卡同时给出 INT4 约 16GB、BF16 约 42GB 的显存参考。这是官方页面的环境口径,不是本站实测保证;驱动、CUDA、PyTorch、缓存、生成长度和并发都会改变峰值。不了解量化取舍时,可先看站内的模型量化词典

CogVLM2 部署前依次检查模型、许可证、环境、输入、输出和上线监控六道闸门
部署不是“显存够就能上线”:模型标识、双重许可证、远程代码、输入预处理、任务评测和运行监控缺一不可。

CogVLM2 本地部署的最小可复现流程

以下流程用于建立可审计的试跑环境,不代表本站已经在你的硬件上完成性能测试。官方仓库与模型卡使用自定义模型代码,因此在生产环境启用 trust_remote_code=True 前,应固定仓库提交或模型 revision,并审阅下载的 Python 文件。模型与依赖可通过Hugging Face 平台说明进一步了解。

  1. 记录模型身份:保存完整仓库名、revision、文件哈希、模型卡访问日期和许可证文本。
  2. 建立隔离环境:按官方仓库当前 requirements 安装,不把未知远程代码直接放进有业务密钥的主机。
  3. 先单图单轮:使用公开、无隐私的测试图验证图像读取、模板、dtype 和输出终止符。
  4. 再测自己的任务:分别准备清晰图、低分辨率图、密集文字、表格、遮挡、反例和拒答样本。
  5. 最后测资源:记录预热后显存、首 token、完整延迟、吞吐、崩溃恢复和并发退化。
from PIL import Image
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

model_id = "zai-org/cogvlm2-llama3-chat-19B"
tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    torch_dtype=torch.bfloat16,
    trust_remote_code=True
).to("cuda").eval()

image = Image.open("sample.png").convert("RGB")
query = "只描述图中可见事实;不确定处明确写不确定。"
inputs = model.build_conversation_input_ids(
    tokenizer, query=query, history=[], images=[image], template_version="chat"
)

示例只展示加载和输入构造,完整生成参数与返回值处理应以模型卡当前代码为准。不要把模型 ID、模板或依赖写死后多年不复核;也不要从不明镜像下载同名权重。需要更通用的本地模型管理方案时,可阅读Ollama 本地部署教程,但应先确认它是否真正支持目标 CogVLM2 权重和视觉接口。

这段代码有意不伪装成本站已运行的完整性能样例:BF16 权重和推理环境成本较高,而且模型卡的远程代码会随 revision 改变。真正的“跑通证据”至少应同时保存下面五类值,否则半年后很难判断结果变化来自权重、代码还是环境。

证据对象 必须保存的字段 为什么不能省
权重 仓库 ID、revision、safetensors 文件名与 SHA-256 同名 main 分支可以变化,缓存目录也可能混入不同版本
远程代码 下载到本地的 Python 文件清单、哈希和人工审阅结论 trust_remote_code=True 会执行仓库自定义实现
软件环境 Python、PyTorch、Transformers、CUDA、驱动和 GPU 型号 启动失败、dtype 回退和算子差异常由环境组合造成
输入与模板 原图哈希、预处理尺寸、template_version、提示词与生成参数 缩放、裁切或模板不匹配足以改变答案
输出与资源 原始输出、字段评分、显存峰值、TTFT、总延迟和错误日志 只有回答截图无法支持质量、容量或成本判断
# 下载后先做身份 canary;把结果连同模型卡和许可证归档
python - <<'PY'
import hashlib, importlib.metadata as m, pathlib, torch

root = pathlib.Path("/models/cogvlm2-llama3-chat-19B")
print("torch", torch.__version__, "cuda", torch.version.cuda)
print("transformers", m.version("transformers"))
for p in sorted(root.glob("*.py")):
    print(p.name, hashlib.sha256(p.read_bytes()).hexdigest())
PY

许可证为什么需要单独检查?

“代码开源”不等于“模型权重可无条件商用”。CogVLM 仓库代码页面显示 Apache-2.0,但仓库同时提供独立模型许可文件;CogVLM2 模型卡明确要求遵守 CogVLM2 License,基于 Meta Llama 3 的权重还需同时遵守 Llama 3 License。部署者应保存当时的许可版本,核对用途、分发、衍生权重、归因和品牌要求;本文不是法律意见。

怎样评测,而不是相信演示图?

官方论文和模型卡给出的 TextVQA、DocVQA、ChartQA、MMMU 等结果用于说明研究设置下的相对表现,不等于你的扫描件、工业相机或中文财报会达到同样分数。模型卡还说明其榜单结果不借助外部 OCR;如果你的系统额外接入 OCR,就必须把整条流水线重新测量,不能继续引用纯模型榜单。

闸门 最小证据 失败时怎么处理
输入可读 分辨率、旋转、裁切、页码和压缩记录 先修预处理,不把空白或错误裁切归因给模型
事实正确 逐字段标注答案;区分可见、推断和未知 高风险字段使用规则/OCR复核并允许拒答
定位可靠 框或引用区域与标注 IoU/人工抽检 错误定位不得驱动自动点击、质检剔除或诊断
资源可控 固定硬件下的显存、延迟、吞吐、失败率 降低并发、缩小输入、量化或更换模型,并重测质量
安全合规 远程代码审计、许可证、隐私和日志保留规则 未通过前只在隔离沙箱使用
可回滚 模型 revision、配置、样本集和上一版本镜像 监控越界时自动降级到人工或已验证版本

哪些场景不能直接相信 CogVLM 输出?

  • 医疗影像:通用 VLM 模型卡没有提供临床器械批准、适应症或患者结局证据,不应生成“第二诊疗意见”后自动执行。
  • 自动驾驶与工业控制:图片问答榜单不能证明实时感知、距离估计、功能安全或失效冗余。
  • 精确 OCR 和财务取数:模型可能补全文字或数字;应保留原图区域、字段置信与人工复核。
  • 多页文档:8K 文本上下文和 1344×1344 图像上限不等于原生理解任意页数,需要分块、页码和跨页证据链。
  • 视频:CogVLM2-Video 官方项目页使用多帧与时间戳;图像权重不能仅靠上传视频文件获得同等能力。其官方模型卡还列出单轮聊天边界。

从 CogVLM-17B 迁移到 CogVLM2 时怎样排错?

迁移不应直接替换模型目录后复用旧进程。CogVLM2 更换了基础语言模型、图像分辨率、对话模板和自定义代码;旧版 tokenizer、缓存、量化参数或停止符可能让程序能够启动,却产生乱码、重复输出、图像未生效等隐蔽错误。安全做法是新建隔离环境,以官方模型卡的当前示例建立单图基线,再逐项迁移业务参数。

  • 加载即显存不足:先确认下载的是 BF16 还是 INT4 权重,记录空载和加载后的峰值;不要只减少 max_new_tokens 就宣称问题解决。
  • 提示有图、回答却像纯文本:检查图片是否实际传入 images、是否转为 RGB、对话模板是否与权重匹配,并用一张内容明确的公开图片做正反对照。
  • OCR 或表格错误:保存原图、缩放后图像和模型回答,分别测试旋转、压缩与裁切;若必须依赖外部 OCR,应在结果中标明来源并测整条组合链路。
  • 升级后答案风格变化:固定同一批提示、图像、随机种子和生成参数,比较字段级正确率、拒答与延迟;不能用几张“看起来更详细”的演示图替代回归集。
  • 远程代码报错:核对模型 revision 与 Transformers/PyTorch 版本,审阅差异后再升级;生产服务要保留上一份可运行镜像和权重哈希。

只有当旧版与新版在同一评测集上完成并行验证,且资源、质量、许可证和回滚均通过,才应切换流量。若新版只改善部分 OCR 样本,却增加幻觉或显存成本,可以保留任务路由,而不是追求“全量升级”。

常见问题

CogVLM-17B 和 CogVLM2-19B 是同一个模型吗?

不是。前者是 2023 年首代权重,后者是 2024 年基于 Llama 3 8B 的新一代家族权重。“17B”“19B”“8B”还可能分别表示总参数或基础语言模型参数,引用时必须写清口径。

CogVLM2 支持 4K 图片吗?

官方图像模型卡写的是最高 1344×1344 输入,不应改写成原生 4K。高分辨率图片进入模型前通常会缩放或裁切,细小文字是否保留必须用目标样本验证。

16GB 显卡一定能稳定运行吗?

官方 INT4 模型卡给出约 16GB GPU 显存要求,并限定 Linux + NVIDIA GPU;这是参考条件,不包含所有缓存、并发和环境差异。上线前必须在自己的驱动、CUDA 和生成长度下记录峰值。

CogVLM2 能否商用?

不能只看“开源”二字判断。应同时阅读具体权重的 CogVLM2 License 与基础 Llama 3 License,并根据分发方式和用途进行合规审查。

GLM-4.6V 是 CogVLM2 的同名升级版吗?

不是同名升级包。官方把 GLM-4.1V/4.5V/4.6V 放在独立 GLM-V 仓库中,模型实现、规模、上下文、模板和服务方式均需重新验收。可以把它视为团队后续视觉模型路线进行候选比较,但不能直接覆盖旧 CogVLM2 目录。

编辑复核记录:本文于 2026 年 7 月 16 日依据官方 CogVLM/CogVLM2/GLM-V 仓库、论文和模型卡重写,并补充当前继任路线与选择边界。版本、权重位置、依赖、许可证和在线服务均可能变化;部署前请重新打开一手来源,不以本文日期替代实时核验。