news 2026/9/15 17:02:42

InternVL CLIP Benchmark使用指南:一键跑通20+基准测试

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
InternVL CLIP Benchmark使用指南:一键跑通20+基准测试

InternVL CLIP Benchmark使用指南:一键跑通20+基准测试

【免费下载链接】InternVL[CVPR 2024 Oral] InternVL Family: A Pioneering Open-Source Alternative to GPT-4o. 接近GPT-4o表现的开源多模态对话模型项目地址: https://gitcode.com/GitHub_Trending/in/InternVL

InternVL CLIP Benchmark 是 InternVL 开源多模态模型内置的标准化评测套件,基于 clip_benchmark/ 目录实现,可一键完成 20+ 个数据集的零样本图像分类与零样本文本-图像检索测试,支持中、英、日、阿、意多语言评测。它对应 InternVL 1.0 论文 4.3 节的官方评测流程,是衡量"接近 GPT-4o"的开源视觉编码器性能的核心工具。本文带你从零环境到出分数,全程只需几条命令。

🧭 评测套件能测什么?

CLIP Benchmark 围绕两大核心任务构建:

任务参数值说明典型数据集
零样本图像分类zeroshot_classification不给模型任何标注,直接对类别名打模板打分ImageNet 系列、CIFAR、Flowers、Cars
零样本文本-图像检索zeroshot_retrieval计算图文匹配 Recall@1/5/10Flickr30K、COCO、多语言 XTD

覆盖的数据集超过 20 个:ImageNet-1K/A/R/V2/Sketch、ObjectNet 6 大鲁棒性变体,加上 CIFAR-10/100、MNIST、STL-10、Caltech-101、SUN397、Food-101、Pets、DTD、EuroSAT、Country-211、VOC2007、VTAB(Flowers、Resisc45)等,全部测试命令都已封装在 test_internvl_c_classification.sh 脚本里,21 个数据集一次性异步跑完。

下图是 CLIP Benchmark 官方的各模型平均排名表(数字越小排名越好),评测结果就是汇入这张总表的:

⚙️ 三步完成环境安装

第 1 步:克隆仓库

git clone https://gitcode.com/GitHub_Trending/in/InternVL cd InternVL

第 2 步:按照根目录的 INSTALLATION.md 完成 Python、PyTorch 等基础环境安装。

第 3 步:安装 CLIP Benchmark 专属依赖并注册包

cd clip_benchmark pip install -r requirements.txt python setup.py develop # 或者手动把当前目录加入 PYTHONPATH # export PYTHONPATH="${PYTHONPATH}:$(pwd)"

依赖清单见 requirements.txt,其中tensorflowtask_adaptationwebdataset分别对应 TensorFlow 数据集、VTAB 数据集和 WebDataset 格式的支持,缺一不可。

📦 模型权重准备

评测需要 13B 视觉编码器权重,二选一下载到clip_benchmark/pretrained/目录:

权重文件格式大小适用模型名
internvl_c_13b_224px.pthPyTorch25.4 GBinternvl_c_classification/internvl_c_retrieval
InternVL-14B-224px/HuggingFace27.7 GBinternvl_g_retrieval_hf等 HF 系列

目录结构如下:

pretrained ├── internvl_c_13b_224px.pth └── InternVL-14B-224px/

模型加载逻辑集中在 clip_benchmark/models/internvl.py,按--model参数自动路由到 PyTorch 或 HuggingFace 版本,无需任何额外配置。

🚀 一键跑通 20+ 分类基准测试

单数据集评测只需一条命令,以 ImageNet-1K 零样本分类为例(入口为 clip_benchmark/clip_benchmark/cli.py):

CUDA_VISIBLE_DEVICES=0 python3 clip_benchmark/cli.py eval --model_type internvl --language "en" \ --task "zeroshot_classification" --dataset "imagenet1k" --dataset_root ./data/imagenet-1k/ \ --model internvl_c_classification --pretrained ./pretrained/internvl_c_13b_224px.pth --output result.json

关键参数解读:

  • --task:选zeroshot_classificationzeroshot_retrieval
  • --dataset:数据集名,20+ 个可选,如cifar10sun397vtab/flowers
  • --languageen/cn/jp/ar/it,直接切换多语言评测
  • --output:结果 JSON 文件,包含 acc1、acc5 等指标

想全部跑完?执行封装脚本即可,它会自动把 21 个数据集异步分发到 GPU 上(集群用户可修改PARTITION环境变量):

bash test_internvl_c_classification.sh

评测所用的真实图像就是下面这种自然场景照片,模型仅凭类别名文本模板即可给出预测:

🔍 零样本图文检索与多语言 XTD 测试

检索评测的命令结构与分类完全一致,只改--task--model

CUDA_VISIBLE_DEVICES=0 python3 clip_benchmark/cli.py eval --model_type internvl --language "en" \ --task "zeroshot_retrieval" --dataset "flickr30k" --dataset_root ./data/flickr30k \ --model internvl_c_retrieval --pretrained ./pretrained/internvl_c_13b_224px.pth --output result.json

一键脚本覆盖了四组场景:

脚本内容
test_internvl_c_retrieval.shFlickr30K、COCO 中英双语检索,共 4 项
test_internvl_c_xtd.shXTD 多语言检索:EN/ES/FR/ZH/IT/KO/RU/JP 八种语言
test_internvl_g_imagenet.shInternVL-G 权重的 ImageNet 系列评测
test_internvl_g_retrieval.shInternVL-G 的 Flickr30K / COCO 检索

数据集会自动下载到--dataset_root指定目录;若下载失败,可参考 clip_benchmark/datasets/builder.py 手动放置。

📊 官方评测成绩一览

跑完测试后,你的结果可以对照 clip_benchmark/README.md 中记录的官方分数验证正确性:

ImageNet 系列零样本分类(平均 82.4):

IN-1KIN-AIN-RIN-V2IN-SketchObjectNet
83.283.895.577.373.980.6

Flickr30K / COCO 检索(平均 86.6 / 89.0):

模型Flickr30K 平均COCO 平均
InternVL-C86.689.0
InternVL-G88.890.9

XTD 八语言检索平均:InternVL-C 95.1,InternVL-G 96.6——其中英文高达 97.3~98.6,中文表现也非常接近。

📈 进阶:probe_benchmark 与结果可视化

除了跑测试,仓库还内置了科研向的 probe_benchmark/ 子目录,用于复现论文中的 scaling 实验图表:

  1. 运行python probe_benchmark/scaling_experiments.py收集数据
  2. 运行python probe_benchmark/generate_table.py生成论文表格
  3. 各实验原始数据见 scaling_experiment_data2.json

完整流程说明在 probe_benchmark/PROBES.md。所有历史评测结果汇总在 benchmark/README.md,可用 benchmark/results.ipynb 交互式查看各模型的完整排名表。

✅ 常见问题速查

  • 测试中断后如何续跑?批量评测支持--skip_existing参数,自动跳过已完成的数据集。
  • 想同时评多个模型?把模型列表写入benchmark/models.txt(每行model,pretrained格式),配合--pretrained_model文件参数即可批量评测,输出命名模板化:"{dataset}_{pretrained}_{model}_{language}_{task}.json"
  • 显存不够怎么办?13B 权重推理建议单卡显存 ≥ 24GB,用CUDA_VISIBLE_DEVICES指定空闲 GPU;批量脚本本身已按数据集拆分为多进程,可分时段执行。

照着以上流程走,从克隆仓库到拿到 20+ 基准测试的完整分数表,整个过程就是"装依赖 → 放权重 → 跑脚本"三步,InternVL CLIP Benchmark 把论文级评测压缩成了几行命令的事。

【免费下载链接】InternVL[CVPR 2024 Oral] InternVL Family: A Pioneering Open-Source Alternative to GPT-4o. 接近GPT-4o表现的开源多模态对话模型项目地址: https://gitcode.com/GitHub_Trending/in/InternVL

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/15 16:58:21

ImageMagick PS安全策略报错原理与安全解决方案

1. 问题本质:这不是Bug,而是ImageMagick的主动防御机制你看到的这行报错——import-im6.q16: attempt to perform an operation not allowed by the security policy PS error/constitute.c——根本不是程序崩溃,也不是配置写错,…

作者头像 李华