关键要点
- Qwen2-VL 7B 可在约 6 GB VRAM(Q4)下本地运行——通过 Ollama 只需一条 `ollama pull qwen2-vl:7b` 命令,无需模型转换。
- 多语言 OCR 的最佳本地模型:Qwen2-VL 与 MiniCPM-V 2.6 持平,在中文、日文和韩文文本上优于 LLaVA 1.6 和 Llama 3.2 Vision 11B。
- 原生分辨率最高 4096×4096——可直接读取高分辨率扫描件而不缩小,不同于 LLaVA 1.6(672×672)或 Llama 3.2 Vision(1120×1120)。
- 三种尺寸:2B(约 3 GB VRAM,快速、基础)、7B(约 6 GB,推荐给大多数用户)、72B(约 48 GB,在开源基准测试中领先)。
- 每次请求最多接受 8 张图像——在本地视觉模型中多图能力最高。
- 不支持直接输入 PDF:先将 PDF 页面转换为 PNG 或 JPEG,再将每页作为单独的图像发送。
- 下载后 100% 离线:无需 API 密钥,不上传云端——每份文档都留在你的机器上。
为什么 Qwen2-VL 在本地视觉模型中领先于多语言 OCR
Qwen2-VL 是多语言文档 OCR 最强的本地视觉模型——在读取中文、日文、韩文和英文文本方面,它与任何可在消费级硬件上运行的模型持平或更优。 阿里巴巴使用大规模多语言文档语料库对其进行训练,因此它在非英文文本提取上优于 LLaVA 1.6 和 Llama 3.2 Vision 11B。
Qwen2-VL 支持高达 4096×4096 像素的动态输入分辨率。LLaVA 1.6 上限为 672×672,Llama 3.2 Vision 为 1120×1120,因此两者在读取前都会缩小高分辨率扫描件。Qwen2-VL 以原生分辨率读取 300 DPI 的 A4 扫描件——这是它在密集文档和小号 CJK 字符上 OCR 精度更高的主要原因。
在本地运行 Qwen2-VL,硬件成本之外每张图像的成本为 $0。云视觉 API 每张图像收费约 $0.01–0.03;按每月 10,000 张图像计算,可节省 $100–300——而且没有任何文档会离开你的机器。
如果你的文档包含 CJK 文本、小号字体或高分辨率扫描件,请使用 Qwen2-VL。如果你的工作仅涉及英文照片问答,Llama 3.2 Vision 11B 是同样不错的选择。
📍 简单一句话
Qwen2-VL 是中文、日文和韩文文档 OCR 最精确的本地视觉模型,通过 Ollama 在约 6 GB VRAM 下运行。
💬 简单来说
视觉语言模型读取图像而不是生成图像。你给 Qwen2-VL 一张照片或一页扫描件,它会返回文本——一段描述、一个答案,或提取出的内容。
选择 Qwen2-VL 的模型尺寸
Qwen2-VL 提供三种尺寸。根据你的 VRAM 和所需精度进行选择。所有尺寸都可在 Hugging Face (Qwen) 和 Ollama 模型库中通过明确的标签获取。
| 模型 | VRAM (Q4) | Ollama 标签 | 适用场景 |
|---|---|---|---|
| Qwen2-VL 2B Q4 | ~3 GB | qwen2-vl:2b | 快速图像描述、简单 OCR、低 VRAM 笔记本 |
| Qwen2-VL 7B Q4 | ~6 GB | qwen2-vl:7b | 推荐——文档 OCR、图像问答、图表 |
| Qwen2-VL 72B Q4 | ~48 GB | qwen2-vl:72b | 最高质量、64 GB 以上 Apple Silicon 或多 GPU |
Q4_K_M 是推荐的量化方式——质量与体积的平衡最佳。大多数用户应从 Qwen2-VL 7B 开始:它可装入 8 GB 的 GPU,并覆盖本指南中的所有用例。仅当 VRAM 低于 6 GB 时才切换到 2B 模型。关于 Q4 如何影响质量,请参阅 LLM 量化详解。
Qwen2-VL 的硬件要求
- 最低(Qwen2-VL 7B Q4):配备 8 GB VRAM 的 GPU——NVIDIA RTX 4060、RTX 3060 12 GB 或 RTX 2080。
- 低 VRAM 选项(Qwen2-VL 2B Q4):4 GB VRAM——可在大多数笔记本 GPU 和集成的 Apple Silicon 上运行。
- 最高质量(Qwen2-VL 72B Q4):约 48 GB——配备 64 GB 以上统一内存的 Apple Silicon,或两块 24 GB 的 GPU。
- Apple Silicon:配备 16 GB 以上统一内存的 M 系列芯片可轻松运行 7B 模型;72B 模型需要 64 GB 以上。
- 系统内存:在 GPU 推理之外至少需要 16 GB;若同时打开完整的开发环境,建议 32 GB。
- 存储空间:Qwen2-VL 7B Q4(GGUF)需要约 6 GB 可用磁盘空间,72B 需要约 30 GB。
📌Note: 视觉模型的运行速度比相同参数量的纯文本模型慢约 30–60%。视觉编码器在第一个 token 时处理整张图像,之后文本以接近正常的速度生成。请为编码器和语言模型都预留 VRAM。
使用 Ollama 设置 Qwen2-VL
Ollama 是本地运行 Qwen2-VL 最快的方式。它会下载模型、管理量化,并在 localhost:11434 上提供 API。请从 ollama.com 安装——如果你是新手,可先从 如何安装 Ollama 开始。
- 1安装 Ollama
Why it matters: Ollama 负责模型下载、GGUF 格式和本地 API。支持 macOS、Linux 和 Windows。 - 2使用明确的尺寸标签拉取 Qwen2-VL
Why it matters: 使用 qwen2-vl:7b。单独的 qwen2-vl 标签可能解析为其他尺寸——请始终指定 2b、7b 或 72b,以获取本指南所针对的模型。 - 3运行模型并附加图像
Why it matters: 在交互模式下,在提示中输入图像文件路径。Ollama 会检测该路径并将图像加载到视觉编码器中。 - 4通过 API 发送图像
Why it matters: /api/generate 端点接受 base64 编码的 images 数组。应用程序——以及 PromptQuorum——通过这种方式以编程方式发送图像。 - 5验证多语言 OCR
Why it matters: 发送一份中文或日文文档扫描件,确认提取的文本是否匹配。这能在你进一步构建之前,证明视觉编码器和分词器能正确处理 CJK 文字。
# Step 1 — Install Ollama
# macOS
brew install ollama
# Linux
curl -fsSL https://ollama.com/install.sh | sh
# Windows — download from https://ollama.com/download
# Step 2 — Pull Qwen2-VL 7B (explicit size tag)
ollama pull qwen2-vl:7b
# Downloads Qwen2-VL 7B Q4_K_M (~6 GB)
# Step 3 — Run and attach an image (interactive)
ollama run qwen2-vl:7b
>>> Extract every line of text from ./invoice-jp.png
# Step 4 — Send an image through the API
# Encode the image first: base64 -i scan.png (macOS)
curl http://localhost:11434/api/generate -d '{
"model": "qwen2-vl:7b",
"prompt": "Extract every line of text from this document. Preserve line breaks.",
"images": ["<base64-encoded-image>"],
"stream": false
}'
# Step 5 — Verify multilingual OCR
ollama run qwen2-vl:7b
>>> Extract all text from this image: ./contract-zh.png⚠️Warning: 请以 150 DPI 或更高分辨率发送文档图像。Qwen2-VL 原生可读取最高 4096×4096,因此高分辨率扫描件可直接提升精度。与文本提示不同,图像质量是 OCR 结果的最大决定因素——模糊的扫描件无论模型多好都会产生错误字符。
使用 LM Studio 设置 Qwen2-VL
LM Studio 通过图形界面运行 Qwen2-VL,无需 CLI 命令。它是 Windows 用户以及偏好图形界面者的推荐方式。请从 lmstudio.ai 下载,或参阅 如何安装 LM Studio。
- 1下载并安装 LM Studio
Why it matters: 一款免费、跨平台的本地模型推理图形界面。无需终端。 - 2在模型浏览器中搜索 Qwen2-VL
Why it matters: 搜索“Qwen2-VL 7B”并选择 Q4_K_M GGUF 版本。LM Studio 会用图像图标标记支持视觉的模型。 - 3加载模型并附加图像
Why it matters: 点击输入框中的图像图标以上传照片或扫描件。LM Studio 会将其传递给视觉编码器。 - 4启动本地服务器
Why it matters: “Start Server”按钮会在 localhost:1234 上提供 OpenAI 兼容 API。视觉请求使用标准的 image_url 内容格式。
// LM Studio — OpenAI-compatible vision request (localhost:1234)
{
"model": "qwen2-vl-7b",
"messages": [
{
"role": "user",
"content": [
{ "type": "text", "text": "Extract all text from this document." },
{
"type": "image_url",
"image_url": { "url": "data:image/png;base64,<base64-encoded-image>" }
}
]
}
]
}中文、日文和多语言混合文件的文档 OCR
Qwen2-VL 从中文、日文、韩文和多语言混合文档中提取文本的精度高于任何其他本地视觉模型。 它的训练数据包含大规模多语言文档语料库,其 4096×4096 的原生分辨率能读取 LLaVA 1.6 和 Llama 3.2 Vision 会缩小并遗漏的小号 CJK 字符。
最可靠的方式是给出具体的提取指令。请要求结构——“保留表格布局”“将每个字段以 key: value 形式返回”——而不是含糊的“读取此内容”。Qwen2-VL 会严格遵循格式指令,使输出无需后处理即可使用。
📍 简单一句话
要使用 Qwen2-VL 从 CJK 文档中提取文本,请以 150 DPI 或更高分辨率发送图像,并使用要求结构的具体提示,例如“将每个字段以 key: value 形式返回”。
💬 简单来说
OCR 是指把文字的图片转换为可编辑的文本。Qwen2-VL 查看一页扫描件并打出它所看到的内容——而且它处理中文和日文字符的能力与英文一样好。
- 纯文本提取:“从这张图像中提取每一行文本。保留换行和阅读顺序。”
- 结构化字段:“这是一张日文发票。请以 key: value 对的形式返回供应商、日期、小计、税额和总额。”
- 表格提取:“将此表格提取为 CSV。将第一行视为表头。”
- 一次完成提取与翻译:“从这张图像中提取中文文本,然后翻译成英文。两者都显示。”
# Japanese invoice -> structured fields
ollama run qwen2-vl:7b
>>> This is a Japanese invoice. Extract vendor name, invoice date,
subtotal, consumption tax, and total. Return as key: value pairs.
./invoice-jp.png
# Example output:
# vendor: Sample Trading Co., Ltd.
# date: 2026-04-30
# subtotal: 84,000 JPY
# tax: 8,400 JPY
# total: 92,400 JPY•Important: 请始终将提取的数字与源文档核对。本地视觉模型——包括 Qwen2-VL——可能会在低质量扫描件上读错某个数字。请将 OCR 输出视为需要确认的草稿,而非最终值,尤其是发票和财务文档。
图像问答、屏幕截图分析与图表读取
除 OCR 之外,Qwen2-VL 还能处理一般的图像理解——描述照片、回答有关屏幕截图的问题以及读取图表。它在清晰的输入上很准确,在杂乱或含糊的场景上较弱。
- 图像问答:就一张照片提出开放性问题——“这张图里有什么?”“有多少人穿着红色?”。Qwen2-VL 7B 在清晰照片上很准确,在杂乱或含糊的场景上较弱。
- 屏幕截图与 UI 分析:Qwen2-VL 能读取 UI 截图、错误对话框和应用状态。对于密集的代码截图,InternVL 2.5 在这类数据上训练得更充分——如果 UI 和代码是你的主要用途,请使用它。
- 图表与图形读取:Qwen2-VL 能很好地描述图表结构和趋势,但从图表中读出的精确数值在所有本地视觉模型上都不可靠。请将精确数字与底层数据核对。
- 视频帧:Qwen2-VL 接受将多帧作为序列——以约每秒一帧采样,最多发送 8 帧来总结一段短视频。
- 多图对比:在一次请求中发送最多 8 张图像,以对比版本、找出差异或批量描述一组图像。
💡Tip: 将 Qwen2-VL 用于 OCR、多语言文档和一般图像问答。当你的主要用途是代码或 UI 截图时,切换到 InternVL 2.5;当你的 VRAM 低于 4 GB 时,切换到 Moondream 2。
Qwen2-VL 对比 LLaVA 与 Llama 3.2 Vision
在多语言 OCR 上,Qwen2-VL 优于 LLaVA 1.6,并以更低的 VRAM 与 Llama 3.2 Vision 11B 持平或更优。 对于仅英文的照片问答,Llama 3.2 Vision 11B 是同样强劲的选择。如果你需要社区故障排除资源,LLaVA 1.6 仍是文档最完善的模型。
| 模型 | VRAM (Q4) | OCR / CJK | 最大分辨率 | 适用场景 |
|---|---|---|---|---|
| Qwen2-VL 7B | ~6 GB | 优秀 | 4096×4096 | 多语言 OCR、高分辨率扫描件 |
| Llama 3.2 Vision 11B | ~8 GB | 良好 | 1120×1120 | 英文照片问答、一般文档 |
| LLaVA 1.6 7B | ~6 GB | 一般 | 672×672 | 一般问答、社区支持 |
| MiniCPM-V 2.6 8B | ~6 GB | 优秀 | 1792×1792 | 文档 OCR(偏英文) |
| InternVL 2.5 8B | ~8 GB | 良好 | 高 | 代码与 UI 截图 |
五者都可通过 Ollama 运行(InternVL 2.5 通过社区构建)。如需本地视觉模型的完整综述——包括 Moondream 2 和发票提取基准测试——请参阅 本地视觉模型对比。如果拿不定主意,请从 Qwen2-VL 7B 开始:它以 6 GB VRAM 覆盖 OCR、文档和一般问答。
将本地 Qwen2-VL 连接到 PromptQuorum
PromptQuorum 会在多个模型之间分发提示。要将本地 Qwen2-VL 用作视觉分发目标,请将 PromptQuorum 的本地 LLM 端点指向你的 Ollama 服务器。这样图像处理就留在你的硬件上,同时云模型仍可用于文本任务。
这是 Ollama 端点(OpenAI 兼容),与用于 Claude 的 Anthropic API 配置相互独立。两者可同时启用,PromptQuorum 会根据任务类型和数据敏感度进行分发。
📍 简单一句话
要将 PromptQuorum 连接到本地 Qwen2-VL,请将 OLLAMA_BASE_URL 设置为 http://localhost:11434/v1,并将本地视觉模型指向 qwen2-vl:7b。
# PromptQuorum dispatch config — local Qwen2-VL via Ollama
# Set in your .env or the PromptQuorum settings panel
OLLAMA_BASE_URL=http://localhost:11434/v1
LOCAL_VISION_MODEL=qwen2-vl:7b
# Example routing rules:
# - task_type: ocr / image -> qwen2-vl:7b (local Ollama, no cloud upload)
# - task_type: text -> claude-sonnet-4-6 (Anthropic API, separate config)Qwen2-VL 故障排除
- 出现“unknown model”或拉取失败:请使用明确的尺寸标签——`ollama pull qwen2-vl:7b`,而不是 `qwen2-vl`。运行 `ollama list` 确认已安装的名称。
- 图像被忽略,模型回应得好像没有发送图像:确认文件路径正确且可读。在 Ollama API 中,`images` 数组必须包含*不带* `data:` 前缀的原始 base64——`data:` 前缀仅用于 LM Studio 和 OpenAI 格式。
- CJK 字符乱码或缺失:扫描件分辨率过低。请以 150–300 DPI 重新扫描。Qwen2-VL 可读取最高 4096×4096,因此更高的输入分辨率会直接提升中文和日文的精度。
- CUDA 显存不足(out of memory):模型无法装入你的 VRAM。请切换到 Qwen2-VL 2B(约 3 GB),或在 CPU 与 GPU 共享统一内存的 Apple Silicon 上运行。
- 首次响应慢,之后变快:这是正常的。视觉编码器在第一个 token 时处理整张图像,之后文本以接近正常的速度生成。
- 从发票或图表中提取出错误数字:本地视觉模型在嘈杂输入上会读错数字。请提高扫描质量,并始终将数字输出与源数据核对。
- PDF 无法加载:没有任何本地视觉模型直接接受 PDF。请先将页面转换为 PNG 或 JPEG(使用 pdf2image 或 pypdfium2),再将每页作为单独的图像发送。
- LM Studio 显示“failed to load model”:要么 VRAM 不足,要么你下载了不支持视觉的 GGUF。请确认模型卡标明支持视觉,并选择 Q4_K_M 版本。
💡Tip: 运行 `ollama ps` 可查看哪些模型已加载到 VRAM 以及各自占用多少内存。在切换到 72B 模型之前,使用 `ollama stop qwen2-vl:7b` 卸载模型。
FAQ
在本地运行 Qwen2-VL 的最低硬件要求是什么?
Q4_K_M 量化的 Qwen2-VL 7B 需要 8 GB VRAM(RTX 4060、RTX 3060 12 GB 或 RTX 2080)。更小的 Qwen2-VL 2B 在 4 GB 下运行。72B 模型需要约 48 GB——配备 64 GB 以上统一内存的 Apple Silicon 或两块 24 GB 的 GPU。配备 16 GB 以上统一内存的 Apple Silicon 可轻松运行 7B 模型。
Qwen2-VL 在 OCR 上比 LLaVA 更好吗?
是的,尤其是非英文文本。Qwen2-VL 与 MiniCPM-V 2.6 持平,在中文、日文和韩文 OCR 上优于 LLaVA 1.6 和 Llama 3.2 Vision 11B。它 4096×4096 的原生分辨率可直接读取高分辨率扫描件而不缩小,而 LLaVA 1.6 上限为 672×672。不过 LLaVA 仍拥有最大的社区和最多的教程。
Qwen2-VL 能直接读取 PDF 吗?
不能。没有任何本地视觉模型直接接受 PDF 输入。请先将每个 PDF 页面转换为 PNG 或 JPEG 图像(使用 pdf2image 或 pypdfium2),再将每页作为单独的图像请求发送。对于 10 页的 PDF,你需要发送 10 个图像请求并合并结果。
如何通过 Ollama 向 Qwen2-VL 发送图像?
有两种方式。在交互模式下(`ollama run qwen2-vl:7b`),在提示中输入图像文件路径——Ollama 会检测到它并加载图像。通过 API,向 /api/generate 发送 POST 请求,附带 base64 编码的 `images` 数组。base64 字符串不能包含 `data:` 前缀。
Qwen2-VL 能完全离线运行吗?
能。一次性下载模型后,Qwen2-VL 完全在你的机器上运行——无需 API 密钥,也无需云账户。没有任何图像被上传到任何地方,文档处理始终保留在你的基础设施内。有关合规影响,请参阅 Qwen 本地 GDPR 设置指南。
Qwen2-VL 一次能处理多少张图像?
每次请求最多 8 张图像——在本地视觉模型中多图能力最高。这使它非常适合对比文档版本、找出差异,或总结以每秒一帧采样的短视频。
Qwen2-VL 还是 Llama 3.2 Vision——我该选哪个?
对于中文、日文或韩文文档、高分辨率扫描件或小号字体,请选择 Qwen2-VL——而且 7B 模型可装入 6 GB VRAM,而 Llama 3.2 Vision 11B 需要 8 GB。对于仅英文的一般照片问答,两者相当,可选择 Llama 3.2 Vision 11B。
为什么我的 OCR 输出中字符是乱码?
几乎总是因为扫描件分辨率低。Qwen2-VL 原生可读取最高 4096×4096,因此以 150–300 DPI 重新扫描文档通常能修复乱码或缺失的字符。低质量输入是所有本地视觉模型出现 OCR 错误的最大原因。