LLaVA(Large Language and Vision Assistant)是 Haotian Liu、Chunyuan Li、Yuheng Li、Yong Jae Lee 在威斯康星大学麦迪逊分校与微软研究院期间做出来的开源视觉语言模型,也是第一个把「视觉编码器 + 投影层 + 语言模型」这套极简结构做到能打的工作。它的历史地位到今天还写在下载量上:Hugging Face 上的 llava-hf/llava-1.5-7b-hf 单月下载超过 252 万次,仍然是被引用、被 fine-tune、被塞进各类 pipeline 最多的开源 VLM 之一。
但你现在搜到的中文教程,绝大多数停在 2023 年的 LLaVA-1.5 和 2024 年初的 LLaVA-1.6。真实情况是这条线换过三次门牌:最早的 haotian-liu/LLaVA 是 1.5/1.6 时代的家;之后主力搬到 LLaVA-VL/LLaVA-NeXT,那个仓库的 README 现在自己把训练管线标注为 legacy,并把人指向 lmms-engine;现役开发发生在 EvolvingLMMs-Lab/LLaVA-OneVision-1.5 仓库里——2025-09-30 发了 LLaVA-OneVision-1.5 技术报告(arXiv 2509.23661),2025-12-11 补了 RL 配方,2026-02-10 放出 codec-aligned 的 OneVision-Encoder,2026-04-30 在同一个仓库里发布了 LLaVA-OneVision-2。所以「LLaVA 被淘汰了吗」这个问题的答案是:没有,只是你要去对的仓库拿对的权重。
显存这件事,LLaVA 系列有个特别容易踩的地方:真正吃显存的经常不是权重,而是视觉 token。LLaVA-1.5 用 CLIP ViT-L/14-336,每张图固定 576 个视觉 token(336÷14=24,24²=576);LLaVA-1.6 引入 AnyRes 之后支持到 672×672、336×1344、1344×336,一张 672×672 的图会被切成 2×2 四块再加一张全局缩略图,5×576 ≈ 2880 个 token 直接灌进上下文。到了 OneVision-2,视频侧用 HEVC 式的 codec-aligned patch 选择——I 帧保留稠密 patch,P 帧只留运动和残差丰富的部分——在同样的 token 预算里塞进 18 帧而不是 6 帧,时序覆盖提升 3 倍。这意味着同一个 8B 模型,你喂一张图和你喂 16 帧视频,需要的卡完全不是一档。下面按档位拆开讲,并且每一档都给一张 NexGPU 上能立刻开机的卡。
01 —
LLaVA 现在到底有哪些版本,各自要多少显存
参数量取自 Hugging Face safetensors 元数据,显存为权重占用(bf16/fp16 按每参数 2 字节折算),不含 KV cache 与视觉 token 激活。
| 版本 | 参数量 | 显存 | 上下文 | 说明 |
|---|---|---|---|---|
| LLaVA-OneVision-2-8B-Instruct(lmms-lab-encoder) | 8.53B(8,527,213,568) | bf16 权重 ≈ 17.1GB | 模型卡未公布上下文上限;视频侧由 num_frames × max_pixels 决定 | 2026-04-30 发布的现役旗舰。Qwen3-8B 骨干 + codec-aligned OneVision-Encoder,原生中英双语,架构名 LlavaOnevision2ForConditionalGeneration。装环境要 transformers>=5.7.0、torch>=2.4,并且必须带 trust_remote_code=True;走 codec 视频后端还要 ffmpeg 4.4.x–7.x。Apache-2.0。 |
| LLaVA-OneVision-2-4B-Instruct | 4B(Qwen3-4B-Instruct-2507 骨干) | 权重未放出,不给估值 | 同 OneVision-2 系列 | 官方 README 里标的是 coming soon,Hugging Face 上目前拉不到权重。看到哪篇博客写「已开源 4B」直接跳过,别把机时浪费在 404 上。真要现在就跑 4B 这一档,用 LLaVA-OneVision-1.5-4B-Instruct。 |
| LLaVA-OneVision-1.5-8B-Instruct(含 8B-RL) | 8.53B(8,527,214,624) | bf16 权重 ≈ 17.1GB | 模型卡未公布 | 2025 年 9 月发布,视觉塔是 DeepGlint-AI/rice-vit-large-patch14-560,语言侧走 Qwen,主打原生分辨率处理和「训练全流程开源」——连 85M 的 mid-training 语料一起放了出来。2025-12 追加强化学习版本 mvp-lab/LLaVA-OneVision-1.5-8B-RL,参数量完全一致。Apache-2.0。 |
| LLaVA-OneVision-1.5-4B-Instruct | 4.74B(4,741,610,528) | bf16 权重 ≈ 9.5GB | 模型卡未公布 | 24GB 单卡最省心的一档:9.5GB 权重扔进去,还剩十几 GB 全部让给 KV cache 和多图 token。做批量图文抽取、商品图打标、发票/证件字段识别这类活,性价比比硬上 8B 好得多。Apache-2.0。 |
| llava-onevision-qwen2-7b-ov-hf / -72b-ov-hf(2024 OneVision) | 8.03B(8,030,807,584)/ 73.18B(73,181,570,592) | fp16 ≈ 16.1GB / ≈ 146GB | 需要 transformers >= 4.45 | transformers 原生支持、不需要 trust_remote_code 的一档,架构名 LlavaOnevisionForConditionalGeneration,vLLM 也直接认。注意 72B 的 fp16 权重约 146GB,比单张 H200 的 141GB 还多,单卡装不下,必须张量并行或降精度。Apache-2.0。 |
| LLaVA-1.6 / LLaVA-NeXT 与 LLaVA-1.5(老一代) | 7B / 13B / 34B | 1.5-7B fp16 ≈ 14.1GB、1.5-13B fp16 ≈ 26.7GB;1.6-7B GGUF:Q4_K_M 4.37GB、Q5_K_M 5.13GB、Q8_0 7.7GB | llava:7b 为 32K,llava:13b 与 llava:34b 为 4K(Ollama 标注) | 生态最全的一代,Ollama 上 llava:7b 4.7GB、llava:13b 8.0GB、llava:34b 20GB 都是 1.6。许可证是这里最大的坑:LLaVA-1.5 的权重走 Llama 2 社区许可,而 llava-v1.6-mistral-7b-hf(基座 Mistral-7B-Instruct-v0.2)才是 Apache-2.0。要商用,先看清楚你拉的是哪一个。 |
02 —
按场景选卡:不要为一张图的推理去租 H100
NexGPU 覆盖 51 个国家和地区、1,175 个已验证可租节点、2,498 张 GPU、75 种型号,单节点最多 14 卡、最大节点显存 2,152GB。以下为每卡每小时列表价。
先用 Q4 量化把 LLaVA-1.6-7B 跑通、做效果对比和 prompt 调试
RTX 3090 24GB$0.193/卡·时
Q4_K_M 权重 4.37GB 加上 mmproj-model-f16 视觉投影层,24GB 里剩下的空间足够把 AnyRes 分辨率拉满,而这是全站最便宜的 24GB 卡——比 16GB 的 Tesla T4($0.298)还便宜三分之一。
LLaVA-OneVision-1.5-4B bf16 常驻,跑批量图文抽取 / 打标 API
RTX 4090 24GB$0.540/卡·时
9.5GB 权重进卡后还剩十几 GB 给 vLLM 的 KV cache 与多图 token,单请求延迟明显优于 3090,是「一直开着对外服务」这一档的甜点位。
LLaVA-OneVision-2-8B bf16 在线服务,或 16 帧视频问答
RTX 5090 32GB$0.723/卡·时
17.1GB 权重之后仍有约 14GB 留给视觉 token 和并发。多帧场景先炸的从来不是权重而是激活值,24GB 卡在 num_frames 一调大就会 OOM,32GB 才是安全线。
OneVision-72B fp16 全精度评测,或 8B 全参微调 / 大规模 LoRA
A100 SXM4 80GB(双卡张量并行)$1.088/卡·时
73.18B 的 fp16 权重约 146GB,比单张 H200 的 141GB 还多,单卡物理上装不下,必须两张 80GB 起步。NexGPU 单节点最多 14 卡,之后要扩到全参微调也不用换机器重搭环境。
03 —
四步把 LLaVA 跑起来
以现役的 LLaVA-OneVision-2-8B-Instruct 为主线,末尾附一条给低配机器的 GGUF 路线。
- 01
开实例,选 vLLM 预置镜像
在 console.nexgpu.net 按显存挑卡(8B bf16 建议 RTX 5090 32GB 起),从 2,000+ 预置镜像里直接选 PyTorch 或 vLLM 镜像,省掉 CUDA/驱动这一段。开机后用 SSH、Jupyter 或网页终端进去都行。OneVision-2 对版本很挑,先把依赖钉死——transformers 必须 5.7.0 以上,否则 custom_code 加载会直接报错。
pip install -U vllm "transformers>=5.7.0" "torch>=2.4" pillow requests decord - 02
拉权重并起 OpenAI 兼容服务
vLLM 一条命令把模型拉下来并起 HTTP 服务。OneVision-2 走的是自定义建模代码,trust_remote_code 不能省。如果你要跑的是 2024 年那版 llava-onevision-qwen2-7b-ov-hf,transformers 原生支持,这个参数反而不需要。首字节之前会有几分钟在下载 17GB 权重,这段时间按秒计费,跑完就停——NexGPU 的算力计费在实例停止时立刻停止。
vllm serve lmms-lab-encoder/LLaVA-OneVision-2-8B-Instruct --trust-remote-code --dtype bfloat16 --port 8000 - 03
用 OpenAI 协议发第一张图
服务起来之后就是标准的 /v1/chat/completions,content 数组里混排 image_url 和 text。这一步最常见的翻车是把 max_model_len 设得太小:一张 672×672 的图在 AnyRes 下能吃掉近 2900 个视觉 token,加上系统提示词很容易顶到上限,然后你会看到图像特征和图像占位符数量对不上的报错。
curl http://localhost:8000/v1/chat/completions -H 'Content-Type: application/json' -d '{"model":"lmms-lab-encoder/LLaVA-OneVision-2-8B-Instruct","messages":[{"role":"user","content":[{"type":"image_url","image_url":{"url":"https://example.com/a.jpg"}},{"type":"text","text":"这张图里有几个人?分别在做什么?"}]}]}' - 04
低配路线:GGUF + llama.cpp
只有 16GB 甚至更小的卡,就走量化。cjpais/llava-1.6-mistral-7b-gguf 提供 Q3_K_XS 2.99GB 到 Q8_0 7.7GB 的全套量化,注意视觉部分是单独一个 mmproj-model-f16.gguf 文件,必须用 --mmproj 一起加载,只下语言权重是跑不起来的。另外 llama.cpp 早就把老的 llava-cli 并进了统一的 libmtmd,现在的入口是 llama-mtmd-cli;LLaVA 在那边被归为 legacy 架构,而 mtmd 子项目本身仍在高速迭代、明确说明会有破坏性改动,锁版本再上生产。图省事也可以直接 ollama run llava:7b(4.7GB)。
llama-mtmd-cli -m llava-v1.6-mistral-7b.Q4_K_M.gguf --mmproj mmproj-model-f16.gguf --image ./a.jpg -p "用中文描述这张图"
一次真实的 LoRA 微调,成本算给你看
假设你要把 LLaVA-OneVision-1.5-8B-Instruct 微调到自家的工单截图上。挑 A100 PCIE 80GB($0.824/卡·时),单卡 LoRA 跑 12 小时:12 × $0.824 = $9.89。数据和权重占 80GB 存储(17.1GB 权重 + 数据集 + checkpoint),按存储中位价 $0.414/GB·月 计,占用 3 天就是 80 × $0.414 × 3 ÷ 30 = $3.31。训完把 LoRA 权重拉回本地,0.5GB × $0.0081/GB = $0.004。合计约 $13.2。换个角度看这个数字:LLaVA-OneVision-1.5 官方自己披露 8B 模型的完整训练成本约 $16,000(按 A100 约 $0.60/GPU·时 折算)——你不需要重走那一遍,站在他们的 Apache-2.0 权重上微调,两位数美元就够。再往下压:只想验证效果,RTX 3090 24GB 跑 Q4 量化的 LLaVA-1.6-7B,两小时 2 × $0.193 = $0.386,比一杯咖啡便宜。往上顶:OneVision-72B fp16 需要双卡 A100 SXM4 80GB,评测 6 小时是 2 × $1.088 × 6 = $13.06。全程按秒计费、按小时定价,无最低消费、无开通费、无需申请配额,实例一停算力费就停,存储费到销毁为止。
04 —
