使用 vLLM 运行 NVIDIA Nemotron 多模态推理智能体

4 分钟阅读
NVIDIA Nemotron 团队

我们很高兴发布由 vLLM 支持的 NVIDIA Nemotron Nano 2 VL。这一开放式视觉语言模型(VLM)专为视频理解和文档智能而构建。

Nemotron Nano 2 VL 采用了混合 Transformer-Mamba 设计,在保持顶尖多模态推理准确性的同时,提供了更高的吞吐量。该模型还引入了 高效视频采样 (EVS) 技术,这是一种针对视频负载减少冗余 Token 生成的新技术,从而能够以更高的效率处理更多视频。

在这篇博客文章中,我们将探讨 Nemotron Nano 2 VL 如何推动视频理解和文档智能的发展,展示实际应用案例和基准测试结果,并指导您通过 vLLM 进行推理,以实现大规模高效多模态 AI 的应用。

用于高效视频理解和文档智能的领先多模态模型

NVIDIA Nemotron Nano 2 VL 在一个高度高效的模型中结合了视频理解和文档智能功能。它构建在混合 Transformer-Mamba 架构之上,融合了 Transformer 模型的推理优势和 Mamba 的计算效率,实现了高吞吐量和低延迟,从而能够更快地处理多图像输入。

得益于在 NVIDIA 精选的高质量多模态数据上进行的训练,Nemotron Nano 2 VL 在视频理解和文档智能基准测试中名列前茅,包括 MMMU、MathVista、AI2D、OCRBench、OCRBench-v2、OCR-Reasoning、ChartQA、DocVQA 和 Video-MME。它在多模态推理、字符识别、图表推理和视觉问答方面提供了顶尖的准确性。这使其成为构建多模态应用程序的理想选择,能够以企业级的精度自动处理视频、文档、表单和图表中的数据提取与理解。


图 1:Nemotron Nano 2 VL 在各种视频理解和文档智能基准测试中提供领先的准确性

通过 EVS 提高效率

通过 EVS,该模型在不牺牲准确性的前提下实现了更高的吞吐量和更快的响应速度。EVS 技术能够剔除冗余帧,在保留语义丰富性的同时高效支持更长的视频处理。因此,企业可以在几分钟内分析长达数小时的素材(从会议、培训课程到客户通话),从而更快、更低成本地获得可操作的洞察。


图 2:Nemotron Nano 2 VL 模型在 Video-MME 和 LongVideo 基准测试中,使用高效视频采样(EVS)在不同 Token 丢弃阈值下的准确性趋势

关于 Nemotron Nano 2 VL

  • 架构
    • 基于 CRADIOH-V2 的视觉编码器
    • 作为 Token 压缩模块的高效视频采样
    • 混合 Transformer-Mamba 架构 - 具备推理能力的 Nemotron Nano 2 LLM 主干。
  • 准确性
    • OCRBench v2 上的领先准确性
    • 在以下基准测试中平均得分为 74(相比之下,当前顶级 VL 模型为 64.2):MMMU、MathVista、AI2D、OCRBench、OCRBench-v2、OCR-Reasoning、ChartQA、DocVQA 和 Video-MME
  • 模型大小:12B
  • 上下文长度:128k
  • 模型输入:多图像文档、视频、文本
  • 模型输出:文本
  • 入门指南
    • 从 Hugging Face 下载模型权重 - BF16, FP8, FP4-QAD
    • 使用 vLLM 进行推理
    • 了解如何使用 Nemotron 技术构建定制化、优化模型的技术报告

使用 vLLM 运行优化后的推理

本指南演示了如何在 vLLM 上运行 Nemotron Nano 2 VL,实现加速推理,并通过 BF16、FP8 和 FP4 精度支持高效地服务并发请求。

安装 vLLM

vLLM 的 nightly 版本现已支持 Nemotron Nano 2 VL。运行以下命令安装 vLLM

uv venv
source .venv/bin/activate
uv pip install vllm --extra-index-url https://wheels.vllm.ai/nightly --prerelease=allow

部署并查询推理服务器

通过运行以下命令来部署兼容 OpenAI 的 vLLM 推理服务器(支持 BF16、FP8 和 FP4 精度)

vllm serve nvidia/Nemotron-Nano-12B-v2-VL-BF16 --trust-remote-code --dtype bfloat16 --video-pruning-rate 0
 
# FP8
vllm serve nvidia/Nemotron-Nano-VL-12B-V2-FP8 --trust-remote-code --quantization modelopt --video-pruning-rate 0
 
# FP4
vllm serve nvidia/Nemotron-Nano-VL-12B-V2-FP4-QAD --trust-remote-code --quantization modelopt_fp4 --video-pruning-rate 0

服务器启动并运行后,您可以使用以下代码片段对模型进行提示

from openai import OpenAI
client = OpenAI(base_url="https://:8000/v1", api_key="null")
# Simple chat completion
resp = client.chat.completions.create(
    model="nvidia/Nemotron-Nano-12B-v2-VL-BF16",
    messages=[
        {"role": "system", "content": "/no_think"},
        {"role": "user", "content": [
            {"type": "text", "text": "Give me 3 interesting facts about this image."}, 
            {"type": "image_url", "image_url": {"url": "https://blogs.nvidia.com/wp-content/uploads/2025/08/gamescom-g-assist-nv-blog-1280x680-1.jpg"}
            }
            ]},
    ],
    temperature=0.0,
    max_tokens=1024,
)
print(resp.choices[0].message.content)

更多示例,请查看我们的 vLLM 使用手册 以及 Nemotron Nano 2 VL 的 vLLM 配方

分享您的想法 并为关键议题投票,共同塑造 Nemotron 的未来。

订阅 NVIDIA 新闻,并通过关注 NVIDIA AI 在 LinkedIn, X, YouTube 以及 Discord 上的 Nemotron 频道,以获取 NVIDIA Nemotron 的最新资讯。