模型简介
模型特点
模型能力
使用案例
🚀 Qwen2.5-VL-3B-Instruct GGUF模型
Qwen2.5-VL-3B-Instruct GGUF模型文件是使用imatrix文件和最新的llama.cpp版本构建而成。若要使用该模型的视觉功能,你必须使用llama.cpp的一个分支版本。
🚀 快速开始
如何使用llama.cpp运行Qwen 2.5 VL Instruct模型
要在llama.cpp
中使用对Qwen 2.5 VL的实验性支持,请按照以下步骤操作:
注意:此方法使用的是llama.cpp的一个分支版本。目前,主分支尚不支持该模型的视觉功能。
-
克隆最新的llama.cpp分支:
git clone https://github.com/HimariO/llama.cpp.qwen2vl.git cd llama.cpp.qwen2vl git checkout qwen25-vl-20250404
-
编译Llama.cpp: 按照常规方式编译llama.cpp:https://github.com/ggml-org/llama.cpp#building-the-project 。 编译完成后,将
./llama.cpp.qwen2vl/build/bin/llama-qwen2-vl-cli
复制到你选择的文件夹中。 -
下载Qwen 2.5 VL gguf文件: 访问:https://huggingface.co/Mungert/Qwen2.5-VL-3B-Instruct-GGUF/tree/main ,选择名称中不包含
mmproj
的gguf文件。 例如:https://huggingface.co/Mungert/Mungert/Qwen2.5-VL-3B-Instruct-GGUF/resolve/main/Qwen2.5-VL-3B-Instruct-q8_0.gguf ,将该文件复制到你选择的文件夹中。 -
下载Qwen 2.5 VL mmproj文件: 访问:https://huggingface.co/Mungert/Qwen2.5-VL-3B-Instruct-GGUF/tree/main ,选择名称中包含
mmproj
的文件。 例如:https://huggingface.co/Mungert/Qwen2.5-VL-3B-Instruct-GGUF/resolve/main/Qwen2.5-VL-3B-Instruct-mmproj-f16.gguf ,将该文件复制到你选择的文件夹中。 -
复制图像文件: 将图像文件复制到与gguf文件相同的文件夹中,或者根据需要调整路径。 示例图像:https://huggingface.co/Mungert/Qwen2.5-VL-3B-Instruct-GGUF/resolve/main/car-1.jpg ,将该文件复制到你选择的文件夹中。
-
运行CLI工具: 在你选择的文件夹中运行以下命令:
llama-qwen2vl-cli -m Qwen2.5-VL-3B-Instruct-q8_0.gguf --mmproj Qwen2.5-VL-3B-Instruct-mmproj-f16.gguf -p "Describe this image." --image ./car-1.jpg
✨ 主要特性
超低比特量化(IQ-DynamicGate,1 - 2比特)
我们最新的量化方法为超低比特模型(1 - 2比特)引入了精度自适应量化,并在Llama - 3 - 8B上通过基准测试证明了其有效性。该方法采用特定层策略,在保持极高内存效率的同时确保了模型的准确性。
基准测试环境
所有测试均在Llama - 3 - 8B - Instruct上进行,使用以下设置:
- 标准困惑度评估流程
- 2048令牌上下文窗口
- 所有量化方法使用相同的提示集
量化方法
- 动态精度分配:
- 前/后25%的层 → IQ4_XS(选定层)
- 中间50% → IQ2_XXS/IQ3_S(提高效率)
- 关键组件保护:
- 嵌入层/输出层使用Q5_K
- 与标准1 - 2比特量化相比,误差传播降低38%
Llama - 3 - 8B量化性能对比
量化方式 | 标准困惑度 | DynamicGate困惑度 | 困惑度变化 | 标准大小 | DG大小 | 大小变化 | 标准速度 | DG速度 |
---|---|---|---|---|---|---|---|---|
IQ2_XXS | 11.30 | 9.84 | -12.9% | 2.5G | 2.6G | +0.1G | 234s | 246s |
IQ2_XS | 11.72 | 11.63 | -0.8% | 2.7G | 2.8G | +0.1G | 242s | 246s |
IQ2_S | 14.31 | 9.02 | -36.9% | 2.7G | 2.9G | +0.2G | 238s | 244s |
IQ1_M | 27.46 | 15.41 | -43.9% | 2.2G | 2.5G | +0.3G | 206s | 212s |
IQ1_S | 53.07 | 32.00 | -39.7% | 2.1G | 2.4G | +0.3G | 184s | 209s |
关键指标说明:
- PPL = 困惑度(越低越好)
- Δ PPL = 从标准量化到DynamicGate量化的困惑度变化百分比
- 速度 = 推理时间(CPU avx2,2048令牌上下文)
- 大小差异反映了混合量化的开销
主要改进:
- 🔥 IQ1_M困惑度大幅降低43.9%(从27.46降至15.41)
- 🚀 IQ2_S困惑度降低36.9%,仅增加0.2GB大小
- ⚡ IQ1_S在1比特量化下仍保持39.7%的精度提升
权衡因素:
- 所有变体的大小增加适中(0.1 - 0.3GB)
- 推理速度相近(差异小于5%)
适用场景
📌 将模型适配到GPU显存 ✔ 内存受限的部署环境 ✔ CPU和边缘设备,可容忍1 - 2比特量化误差 ✔ 超低比特量化研究
快速测试
使用最高级的DynamicGate量化方法IQ2_M对Qwen 2.5 VL 3B进行快速测试:
llama.cpp.qwen2vl/build/bin/llama-qwen2vl-cli -m Qwen2.5-VL-3B-Instruct-iq2_m.gguf --mmproj qwen.qwen2.5-vl-3b-instruct-vision.f16.gguf -p "Describe this image in a lot of detail." --image ./car-1.jpg
输出结果: 图像展示了一辆时尚的黑色保时捷Panamera Turbo,它在赛道或高速道路上飞驰。拍摄角度为后侧方,凸显了车辆的空气动力学设计和独特特征。车辆尾灯亮起,与深色车身形成鲜明对比。车尾显著位置展示着保时捷标志,以及“Panamera Turbo”字样和车牌号“CVC - 911”。车牌旁有加州“COOPER”贴纸,表明车辆可能在加州注册。由于车速较快,道路模糊,突出了车辆的高性能和先进工程技术。背景中有树木和路灯,暗示这是傍晚或黄昏时分。
对于一个高度压缩的3B模型来说,这表现相当出色!
较低的量化级别会降低模型质量,尤其是xs量化。因此,如果你需要将模型压缩到内存中,可以尝试iq2_m量化。
📦 安装指南
Qwen2.5-VL的代码已集成到最新的Hugging Face Transformers库中,建议使用以下命令从源代码进行安装:
pip install git+https://github.com/huggingface/transformers accelerate
否则,你可能会遇到以下错误:
KeyError: 'qwen2_5_vl'
此外,我们提供了一个工具包,可帮助你更方便地处理各种视觉输入,就像使用API一样。你可以使用以下命令进行安装:
# 强烈建议使用 `[decord]` 特性以加快视频加载速度
pip install qwen-vl-utils[decord]==0.0.8
如果你不使用Linux系统,可能无法从PyPI安装decord
。在这种情况下,你可以使用pip install qwen-vl-utils
,它将回退到使用torchvision进行视频处理。不过,你仍然可以从源代码安装decord,以便在加载视频时使用decord。
💻 使用示例
基础用法
使用🤗 Transformers进行聊天的示例代码:
from transformers import Qwen2_5_VLForConditionalGeneration, AutoTokenizer, AutoProcessor
from qwen_vl_utils import process_vision_info
# 默认:将模型加载到可用设备上
model = Qwen2_5_VLForConditionalGeneration.from_pretrained(
"Qwen/Qwen2.5-VL-3B-Instruct", torch_dtype="auto", device_map="auto"
)
# 建议启用flash_attention_2以获得更好的加速和内存节省效果,特别是在多图像和视频场景中
# model = Qwen2_5_VLForConditionalGeneration.from_pretrained(
# "Qwen/Qwen2.5-VL-3B-Instruct",
# torch_dtype=torch.bfloat16,
# attn_implementation="flash_attention_2",
# device_map="auto",
# )
# 默认处理器
processor = AutoProcessor.from_pretrained("Qwen/Qwen2.5-VL-3B-Instruct")
# 模型中每张图像的视觉令牌数量默认范围为4 - 16384
# 你可以根据需要设置min_pixels和max_pixels,例如令牌范围为256 - 1280,以平衡性能和成本
# min_pixels = 256*28*28
# max_pixels = 1280*28*28
# processor = AutoProcessor.from_pretrained("Qwen/Qwen2.5-VL-3B-Instruct", min_pixels=min_pixels, max_pixels=max_pixels)
messages = [
{
"role": "user",
"content": [
{
"type": "image",
"image": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-VL/assets/demo.jpeg",
},
{"type": "text", "text": "Describe this image."},
],
}
]
# 推理准备
text = processor.apply_chat_template(
messages, tokenize=False, add_generation_prompt=True
)
image_inputs, video_inputs = process_vision_info(messages)
inputs = processor(
text=[text],
images=image_inputs,
videos=video_inputs,
padding=True,
return_tensors="pt",
)
inputs = inputs.to("cuda")
# 推理:生成输出
generated_ids = model.generate(**inputs, max_new_tokens=128)
generated_ids_trimmed = [
out_ids[len(in_ids) :] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]
output_text = processor.batch_decode(
generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False
)
print(output_text)
高级用法
多图像推理
# 包含多个图像和文本查询的消息
messages = [
{
"role": "user",
"content": [
{"type": "image", "image": "file:///path/to/image1.jpg"},
{"type": "image", "image": "file:///path/to/image2.jpg"},
{"type": "text", "text": "Identify the similarities between these images."},
],
}
]
# 推理准备
text = processor.apply_chat_template(
messages, tokenize=False, add_generation_prompt=True
)
image_inputs, video_inputs = process_vision_info(messages)
inputs = processor(
text=[text],
images=image_inputs,
videos=video_inputs,
padding=True,
return_tensors="pt",
)
inputs = inputs.to("cuda")
# 推理
generated_ids = model.generate(**inputs, max_new_tokens=128)
generated_ids_trimmed = [
out_ids[len(in_ids) :] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]
output_text = processor.batch_decode(
generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False
)
print(output_text)
视频推理
# 包含图像列表作为视频和文本查询的消息
messages = [
{
"role": "user",
"content": [
{
"type": "video",
"video": [
"file:///path/to/frame1.jpg",
"file:///path/to/frame2.jpg",
"file:///path/to/frame3.jpg",
"file:///path/to/frame4.jpg",
],
},
{"type": "text", "text": "Describe this video."},
],
}
]
# 包含本地视频路径和文本查询的消息
messages = [
{
"role": "user",
"content": [
{
"type": "video",
"video": "file:///path/to/video1.mp4",
"max_pixels": 360 * 420,
"fps": 1.0,
},
{"type": "text", "text": "Describe this video."},
],
}
]
# 包含视频URL和文本查询的消息
messages = [
{
"role": "user",
"content": [
{
"type": "video",
"video": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2-VL/space_woaudio.mp4",
},
{"type": "text", "text": "Describe this video."},
],
}
]
# 在Qwen 2.5 VL中,帧率信息也会输入到模型中以与绝对时间对齐
# 推理准备
text = processor.apply_chat_template(
messages, tokenize=False, add_generation_prompt=True
)
image_inputs, video_inputs, video_kwargs = process_vision_info(messages, return_video_kwargs=True)
inputs = processor(
text=[text],
images=image_inputs,
videos=video_inputs,
fps=fps,
padding=True,
return_tensors="pt",
**video_kwargs,
)
inputs = inputs.to("cuda")
# 推理
generated_ids = model.generate(**inputs, max_new_tokens=128)
generated_ids_trimmed = [
out_ids[len(in_ids) :] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]
output_text = processor.batch_decode(
generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False
)
print(output_text)
视频URL兼容性在很大程度上取决于第三方库的版本。具体细节如下表所示。如果你不想使用默认的后端,可以通过FORCE_QWENVL_VIDEO_READER=torchvision
或FORCE_QWENVL_VIDEO_READER=decord
来更改后端。
后端 | HTTP | HTTPS |
---|---|---|
torchvision >= 0.19.0 | ✅ | ✅ |
torchvision < 0.19.0 | ❌ | ❌ |
decord | ✅ | ❌ |
批量推理
# 批量推理的示例消息
messages1 = [
{
"role": "user",
"content": [
{"type": "image", "image": "file:///path/to/image1.jpg"},
{"type": "image", "image": "file:///path/to/image2.jpg"},
{"type": "text", "text": "What are the common elements in these pictures?"},
],
}
]
messages2 = [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Who are you?"},
]
# 合并消息进行批量处理
messages = [messages1, messages2]
# 批量推理准备
texts = [
processor.apply_chat_template(msg, tokenize=False, add_generation_prompt=True)
for msg in messages
]
image_inputs, video_inputs = process_vision_info(messages)
inputs = processor(
text=texts,
images=image_inputs,
videos=video_inputs,
padding=True,
return_tensors="pt",
)
inputs = inputs.to("cuda")
# 批量推理
generated_ids = model.generate(**inputs, max_new_tokens=128)
generated_ids_trimmed = [
out_ids[len(in_ids) :] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]
output_texts = processor.batch_decode(
generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False
)
print(output_texts)
更多使用提示
输入图像格式
支持本地文件、Base64编码和URL格式的图像输入。对于视频,目前仅支持本地文件。
# 本地文件路径
messages = [
{
"role": "user",
"content": [
{"type": "image", "image": "file:///path/to/your/image.jpg"},
{"type": "text", "text": "Describe this image."},
],
}
]
# 图像URL
messages = [
{
"role": "user",
"content": [
{"type": "image", "image": "http://path/to/your/image.jpg"},
{"type": "text", "text": "Describe this image."},
],
}
]
# Base64编码图像
messages = [
{
"role": "user",
"content": [
{"type": "image", "image": "data:image;base64,/9j/..."},
{"type": "text", "text": "Describe this image."},
],
}
]
图像分辨率优化
模型支持广泛的分辨率输入。默认情况下,使用原始分辨率输入,但更高的分辨率可以提升性能,但会增加计算量。用户可以设置最小和最大像素数,以实现最佳配置,例如令牌数量范围为256 - 1280,以平衡速度和内存使用。
min_pixels = 256 * 28 * 28
max_pixels = 1280 * 28 * 28
processor = AutoProcessor.from_pretrained(
"Qwen/Qwen2.5-VL-3B-Instruct", min_pixels=min_pixels, max_pixels=max_pixels
)
此外,我们提供了两种方法来精细控制输入到模型的图像大小:
- 定义min_pixels和max_pixels:图像将调整大小以保持其宽高比在min_pixels和max_pixels范围内。
- 指定确切尺寸:直接设置
resized_height
和resized_width
。这些值将四舍五入到最接近的28的倍数。
# min_pixels和max_pixels
messages = [
{
"role": "user",
"content": [
{
"type": "image",
"image": "file:///path/to/your/image.jpg",
"resized_height": 280,
"resized_width": 420,
},
{"type": "text", "text": "Describe this image."},
],
}
]
# resized_height和resized_width
messages = [
{
"role": "user",
"content": [
{
"type": "image",
"image": "file:///path/to/your/image.jpg",
"min_pixels": 50176,
"max_pixels": 50176,
},
{"type": "text", "text": "Describe this image."},
],
}
]
长文本处理
当前的config.json
设置上下文长度最大为32,768令牌。为了处理超过32,768令牌的大量输入,我们使用了YaRN技术,以增强模型的长度外推能力,确保在长文本上的最佳性能。
对于支持的框架,你可以在config.json
中添加以下内容以启用YaRN:
{
...,
"type": "yarn",
"mrope_section": [
16,
24,
24
],
"factor": 4,
"original_max_position_embeddings": 32768
}
需要注意的是,这种方法对时间和空间定位任务的性能有显著影响,因此不建议使用。同时,对于长视频输入,由于MRoPE本身在ids使用上更经济,可以直接将max_position_embeddings修改为更大的值,例如64k。
📚 详细文档
选择合适的模型格式
选择正确的模型格式取决于你的硬件能力和内存限制。
BF16(Brain Float 16) – 适用于支持BF16加速的情况
- 一种16位浮点格式,专为更快的计算而设计,同时保留了良好的精度。
- 与FP32具有相似的动态范围,但内存使用更低。
- 如果你的硬件支持BF16加速(请检查设备规格),建议使用。
- 适用于高性能推理,与FP32相比,内存占用更小。
📌 适用场景: ✔ 硬件具有原生BF16支持(如较新的GPU、TPU) ✔ 希望在节省内存的同时获得更高的精度 ✔ 计划将模型重新量化为其他格式
📌 避免场景: ❌ 硬件不支持BF16(可能会回退到FP32,运行速度变慢) ❌ 需要与缺乏BF16优化的旧设备兼容
F16(Float 16) – 比BF16更广泛支持
- 一种16位浮点格式,精度较高,但取值范围比BF16小。
- 适用于大多数支持FP16加速的设备(包括许多GPU和一些CPU)。
- 数值精度略低于BF16,但通常足以满足推理需求。
📌 适用场景: ✔ 硬件支持FP16但不支持BF16 ✔ 需要在速度、内存使用和精度之间取得平衡 ✔ 在GPU或其他针对FP16计算优化的设备上运行
📌 避免场景: ❌ 设备缺乏原生FP16支持(运行速度可能比预期慢) ❌ 存在内存限制
量化模型(Q4_K、Q6_K、Q8等) – 适用于CPU和低显存推理
量化可以在尽可能保持准确性的同时减小模型大小和内存使用。
- 低比特模型(Q4_K) → 内存使用最少,但精度可能较低
- 高比特模型(Q6_K、Q8_0) → 精度更高,但需要更多内存
📌 适用场景: ✔ 在CPU上运行推理,需要优化模型 ✔ 设备显存较低,无法加载全精度模型 ✔ 希望在保持合理精度的同时减小内存占用
📌 避免场景: ❌ 需要最高精度(全精度模型更适合) ❌ 硬件有足够的显存支持更高精度的格式(BF16/F16)
极低比特量化(IQ3_XS、IQ3_S、IQ3_M、Q4_K、Q4_0)
这些模型针对极端内存效率进行了优化,非常适合低功耗设备或大规模部署,其中内存是关键限制因素。
- IQ3_XS:超低比特量化(3比特),具有极高的内存效率。
- 适用场景:最适合超低内存设备,即使Q4_K也太大的情况。
- 权衡:与高比特量化相比,精度较低。
- IQ3_S:小块大小,实现最大内存效率。
- 适用场景:最适合低内存设备,当IQ3_XS过于激进时。
- IQ3_M:中等块大小,比IQ3_S精度更高。
- 适用场景:适用于低内存设备,当IQ3_S限制过多时。
- Q4_K:4比特量化,具有逐块优化,以提高精度。
- 适用场景:最适合低内存设备,当Q6_K太大时。
- Q4_0:纯4比特量化,针对ARM设备进行了优化。
- 适用场景:最适合基于ARM的设备或低内存环境。
模型格式选择总结表
模型格式 | 精度 | 内存使用 | 设备要求 | 最佳使用场景 |
---|---|---|---|---|
BF16 | 最高 | 高 | 支持BF16的GPU/CPU | 高速推理,内存占用小 |
F16 | 高 | 高 | 支持FP16的设备 | BF16不可用时的GPU推理 |
Q4_K | 中低 | 低 | CPU或低显存设备 | 内存受限环境 |
Q6_K | 中等 | 适中 | 内存较多的CPU | 量化模型中精度较好 |
Q8_0 | 高 | 适中 | 有足够显存的CPU或GPU | 量化模型中精度最高 |
IQ3_XS | 极低 | 极低 | 超低内存设备 | 极端内存效率,精度低 |
Q4_0 | 低 | 低 | ARM或低内存设备 | llama.cpp可针对ARM设备优化 |
包含的文件及详情
Qwen2.5-VL-3B-Instruct-bf16.gguf
- 模型权重以BF16格式保存。
- 如果你想将模型重新量化为其他格式,可以使用此文件。
- 若你的设备支持BF16加速,此文件为最佳选择。
Qwen2.5-VL-3B-Instruct-f16.gguf
- 模型权重以F16格式存储。
- 若你的设备支持FP16,尤其是在BF16不可用时,可使用此文件。
Qwen2.5-VL-3B-Instruct-bf16-q8_0.gguf
- 输出层和嵌入层保持为BF16。
- 其他层量化为Q8_0。
- 若你的设备支持BF16,且需要量化版本,可使用此文件。
Qwen2.5-VL-3B-Instruct-f16-q8_0.gguf
- 输出层和嵌入层保持为F16。
- 其他层量化为Q8_0。
Qwen2.5-VL-3B-Instruct-q4_k.gguf
- 输出层和嵌入层量化为Q8_0。
- 其他层量化为Q4_K。
- 适合内存有限的CPU推理。
Qwen2.5-VL-3B-Instruct-q4_k_s.gguf
- 最小的Q4_K变体,以牺牲精度为代价减少内存使用。
- 最适合极低内存设置。
Qwen2.5-VL-3B-Instruct-q6_k.gguf
- 输出层和嵌入层量化为Q8_0。
- 其他层量化为Q6_K。
Qwen2.5-VL-3B-Instruct-q8_0.gguf
- 完全Q8量化的模型,精度更高。
- 需要更多内存,但提供更高的精度。
Qwen2.5-VL-3B-Instruct-iq3_xs.gguf
- IQ3_XS量化,针对极端内存效率进行了优化。
- 最适合超低内存设备。
Qwen2.5-VL-3B-Instruct-iq3_m.gguf
- IQ3_M量化,提供中等块大小以提高精度。
- 适用于低内存设备。
Qwen2.5-VL-3B-Instruct-q4_0.gguf
- 纯Q4_0量化,针对ARM设备进行了优化。
- 最适合低内存环境。
- 若需要更高精度,建议使用IQ4_NL。
🔧 技术细节
模型介绍
在Qwen2 - VL发布后的五个月里,众多开发者基于Qwen2 - VL视觉语言模型构建了新的模型,并为我们提供了宝贵的反馈。在此期间,我们专注于构建更实用的视觉语言模型。现在,我们很高兴地推出Qwen家族的最新成员:Qwen2.5 - VL。
关键改进
- 视觉理解能力:Qwen2.5 - VL不仅擅长识别常见物体,如花卉、鸟类、鱼类和昆虫,还能深入分析图像中的文本、图表、图标、图形和布局。
- 智能代理能力:Qwen2.5 - VL可直接作为视觉代理,进行推理并动态调用工具,具备计算机和手机使用能力。
- 长视频理解与事件捕捉:Qwen2.5 - VL能够理解超过1小时的视频,并具备捕捉事件的新能力,可精准定位相关视频片段。
- 多格式视觉定位:Qwen2.5 - VL可以通过生成边界框或点来准确定位图像中的物体,并为坐标和属性提供稳定的JSON输出。
- 结构化输出生成:对于发票、表单、表格等扫描数据,Qwen2.5 - VL支持生成其内容的结构化输出,适用于金融、商业等领域。
模型架构更新
- 视频理解的动态分辨率和帧率训练: 我们通过采用动态FPS采样将动态分辨率扩展到时间维度,使模型能够理解不同采样率的视频。相应地,我们在时间维度上使用ID和绝对时间对齐更新了mRoPE,使模型能够学习时间序列和速度,最终获得定位特定时刻的能力。
- 精简高效的视觉编码器: 我们通过在ViT中策略性地实现窗口注意力,提高了训练和推理速度。ViT架构进一步通过SwiGLU和RMSNorm进行了优化,使其与Qwen2.5 LLM的结构保持一致。
我们有三个参数分别为30亿、70亿和720亿的模型。本仓库包含经过指令微调的3B Qwen2.5 - VL模型。更多信息,请访问我们的博客和GitHub。
评估指标
图像基准测试
基准测试 | InternVL2.5 - 4B | Qwen2 - VL - 7B | Qwen2.5 - VL - 3B |
---|---|---|---|
MMMUval | 52.3 | 54.1 | 53.1 |
MMMU - Proval | 32.7 | 30.5 | 31.6 |
AI2Dtest | 81.4 | 83.0 | 81.5 |
DocVQAtest | 91.6 | 94.5 | 93.9 |
InfoVQAtest | 72.1 | 76.5 | 77.1 |
TextVQAval | 76.8 | 84.3 | 79.3 |
MMBench - V1.1test | 79.3 | 80.7 | 77.6 |
MMStar | 58.3 | 60.7 | 55.9 |
MathVistatestmini | 60.5 | 58.2 | 62.3 |
MathVisionfull | 20.9 | 16.3 | 21.2 |
视频基准测试
基准测试 | InternVL2.5 - 4B | Qwen2 - VL - 7B | Qwen2.5 - VL - 3B |
---|---|---|---|
MVBench | 71.6 | 67.0 | 67.0 |
VideoMME | 63.6/62.3 | 69.0/63.3 | 67.6/61.5 |
MLVU | 48.3 | - | 68.2 |
LVBench | - | - | 43.3 |
MMBench - Video | 1.73 | 1.44 | 1.63 |
EgoSchema | - | - | 64.8 |
PerceptionTest | - | - | 66.9 |
TempCompass | - | - | 64.4 |
LongVideoBench | 55.2 | 55.6 | 54.2 |
CharadesSTA/mIoU | - | - | 38.8 |
代理基准测试
基准测试 | Qwen2.5 - VL - 3B |
---|---|
ScreenSpot | 55.5 |
ScreenSpot Pro | 23.9 |
AITZ_EM | 76.9 |
Android Control High_EM | 63.7 |
Android Control Low_EM | 22.2 |
AndroidWorld_SR | 90.8 |
MobileMiniWob++_SR | 67.9 |
📄 许可证
本项目采用qwen - research许可证。
其他说明
测试与反馈
如果你觉得这些模型有用,请点赞❤。此外,如果你能测试我的网络监控助手,我将不胜感激👉 网络监控助手。
💬 点击聊天图标(主页和仪表盘页面右下角),选择一个大语言模型;在TurboLLM -> FreeLLM -> TestLLM之间切换。
测试内容
我正在使用小型开源模型对我的网络监控服务进行函数调用实验。我关注的问题是“模型可以多小,仍能正常工作”。
🟡 TestLLM – 使用llama.cpp在CPU虚拟机的6个线程上运行当前测试模型(加载时间约15秒。推理速度较慢,一次仅处理一个用户提示,仍在进行扩展优化!)。如果你感兴趣,我很乐意分享其工作原理。
其他可用的AI助手
🟢 TurboLLM – 使用gpt - 4o - mini,速度快!注意:由于OpenAI模型成本较高,令牌有限,但你可以登录或下载免费的网络监控代理以获取更多令牌,或者使用TestLLM。
🔵 HugLLM – 运行开源Hugging Face模型,速度快,运行小型模型(≈8B),质量较低,可获得2倍的令牌(取决于Hugging Face API可用性)
引用
如果你觉得我们的工作有帮助,请引用以下文献:
@misc{qwen2.5-VL,
title = {Qwen2.5-VL},
url = {https://qwenlm.github.io/blog/qwen2.5-vl/},
author = {Qwen Team},
month = {January},
year = {2025}
}
@article{Qwen2VL,
title={Qwen2-VL: Enhancing Vision-Language Model's Perception of the World at Any Resolution},
author={Wang, Peng and Bai, Shuai and Tan, Sinan and Wang, Shijie and Fan, Zhihao and Bai, Jinze and Chen, Keqin and Liu, Xuejing and Wang, Jialin and Ge, Wenbin and Fan, Yang and Dang, Kai and Du, Mengfei and Ren, Xuancheng and Men, Rui and Liu, Dayiheng and Zhou, Chang and Zhou, Jingren and Lin, Junyang},
journal={arXiv preprint arXiv:2409.12191},
year={2024}
}
@article{Qwen-VL,
title={Qwen-VL: A Versatile Vision-Language Model for Understanding, Localization, Text Reading, and Beyond},
author={Bai, Jinze and Bai, Shuai and Yang, Shusheng and Wang, Shijie and Tan, Sinan and Wang, Peng and Lin, Junyang and Zhou, Chang and Zhou, Jingren},
journal={arXiv preprint arXiv:2308.12966},
year={2023}
}









