ERNIE-4.5-VL-28B-A3B-Thinking:多模态AI领域的突破性进展

在人工智能快速发展的今天,多模态模型已经成为连接视觉与语言理解的重要桥梁。百度最新推出的ERNIE-4.5-VL-28B-A3B-Thinking,在原有ERNIE-4.5-VL-28B-A3B架构的基础上实现了重大升级,尤其在多模态推理能力上实现了质的飞跃。如果你正在关注AI在视觉-语言交互领域的应用,或者计划开发相关的智能应用,这款模型值得深入了解。

关于ERNIE-4.5-VL-28B-A3B-Thinking:你需要知道的核心亮点

ERNIE-4.5-VL-28B-A3B-Thinking的升级并非简单的参数调整,而是通过系统性的技术优化实现的能力跃升。其核心优势主要来自三个方面:

1. 大规模优质数据训练,强化模态对齐

模型在训练过程中经历了一个大规模的中间训练阶段,吸收了数量庞大、类型多样的优质视觉-语言推理数据。这种训练方式不仅显著提升了模型的特征表示能力,更重要的是加深了视觉与语言两种模态之间的语义对齐程度。

简单来说,以前的模型可能“看”懂了图片,也“读”懂了文字,但未必能将两者的深层含义精准对应;而经过优化的ERNIE-4.5-VL-28B-Thinking,能像人类一样,自然地将图片中的视觉信息与文字描述的语义关联起来,这为复杂场景下的推理打下了基础。

2. 前沿强化学习技术,提升学习效率

模型采用了先进的多模态强化学习技术,结合了GSPO(Generative SPO)和IcePop策略来稳定MoE(混合专家模型)训练,同时引入动态难度采样机制。这些技术的组合带来了两个明显好处:

  • 训练稳定性:避免了多模态模型训练中常见的收敛困难、参数震荡问题;
  • 学习效率:模型能更智能地选择适合当前能力的训练样本,在有限数据中更快掌握核心规律。

3. 强化实用功能,降低应用门槛

针对开发者和企业的实际需求,模型重点强化了两方面能力:

  • 视觉定位(Visual Grounding):更精准的定位能力和更灵活的指令执行能力,在复杂工业场景中能快速响应“标记出图片中某个部件”“圈出异常区域”等指令;
  • “以图思考”(Thinking with Images):结合图片缩放、图片搜索等工具,模型能像人类一样“仔细观察”图片细节,轻松处理那些需要关注细微特征或长尾视觉知识的任务。

ERNIE-4.5-VL-28B-A3B-Thinking的核心能力:不止于“看”和“说”

虽然ERNIE-4.5-VL-28B-A3B-Thinking是一款轻量级模型(仅激活30亿参数),但其性能已接近行业顶级旗舰模型。具体来说,它在以下六个方面表现突出:

1. 视觉推理:复杂场景的多步分析能力

借助大规模强化学习训练,模型在处理需要多步推理的视觉任务时表现出色。比如:

  • 图表分析:能从折线图、柱状图中提取数据趋势,回答“哪段时间增长率最高”“预测下一季度数值”等问题;
  • 因果推理:看到“破损的窗户”和“地上的石头”,能推断出可能的因果关系;
  • 场景理解:在复杂的街景图片中,能识别“交通信号灯的状态”“行人的动作”并关联起来分析(如“红灯时是否有行人过马路”)。

2. STEM推理:解决视觉相关的科学问题

对于科学、技术、工程和数学(STEM)领域中与视觉相关的问题,模型的能力有了显著提升。例如:

  • 数学题:从图片中识别几何图形的边长、角度,计算面积或体积;
  • 物理题:根据图片中物体的运动状态(如斜坡上的小球),分析受力情况;
  • 化学题:识别图片中的实验装置,判断反应类型或可能的产物。

3. 视觉定位:精准响应空间指令

在需要精确定位的场景中,模型能准确理解并执行指令,例如:

  • 工业质检:根据文字指令“标记出电路板上的虚焊点”,在图片中精准圈出目标;
  • 设计辅助:响应“将这个图标移动到右上角”的指令,在界面设计图中定位并标记目标位置;
  • 医疗影像:在CT片上根据指令“标出疑似病变区域”,辅助医生快速定位关注点。

4. “以图思考”:细节处理与深度挖掘

模型具备类似人类的“观察习惯”,能通过“缩放”图片聚焦细节,从而挖掘深层信息。比如:

  • 文物鉴定:先整体观察文物图片,再“放大”查看纹理、铭文等细节,判断年代和工艺;
  • 产品质检:从整体包装图中“放大”查看标签上的文字是否符合规范;
  • 地图分析:先看区域全貌,再“放大”某路段查看交通标识或路况细节。

5. 工具调用:扩展长尾知识与功能

通过强大的工具调用能力,模型能借助外部工具弥补自身知识局限,例如:

  • 图片搜索:遇到不熟悉的植物、动物图片时,调用图片搜索工具识别物种;
  • 数据查询:在分析图表时,调用计算器工具进行复杂数值运算;
  • 信息验证:对图片中的时间、地点等信息存疑时,调用搜索引擎确认准确性。

6. 视频理解:捕捉时间维度的变化

除了静态图片,模型对视频内容的理解也表现出色,能:

  • 时序感知:识别视频中“物体从出现到消失的时间点”“动作的先后顺序”;
  • 事件定位:在一段监控视频中,定位“有人进入禁区”“物品被移动”等关键事件发生的时间段;
  • 内容总结:提炼视频的核心内容,如“会议视频中讨论的三个主要议题”“教程视频的步骤分解”。
ERNIE-4.5-VL-28B-A3B-Thinking性能基准

快速上手:ERNIE-4.5-VL-28B-A3B-Thinking的使用指南

无论你是开发者还是研究人员,都可以通过以下几种方式快速部署和使用ERNIE-4.5-VL-28B-A3B-Thinking。

方法一:使用transformers库进行推理

如果你熟悉Python和Hugging Face的transformers库,这种方式能快速实现基础的图文交互功能。

步骤1:安装必要的库

确保你的环境中已安装torch和transformers:

pip install torch transformers

步骤2:编写推理代码

import torch
from transformers import AutoProcessor, AutoTokenizer, AutoModelForCausalLM

# 模型路径
model_path = 'baidu/ERNIE-4.5-VL-28B-A3B-Thinking'

# 加载模型(自动分配设备,使用bfloat16精度以平衡性能和显存)
model = AutoModelForCausalLM.from_pretrained(
    model_path,
    device_map="auto",  # 自动将模型分配到可用设备(CPU/GPU)
    dtype=torch.bfloat16,
    trust_remote_code=True  # 信任远程代码(模型可能包含自定义组件)
)

# 加载处理器(处理文本和图像输入)
processor = AutoProcessor.from_pretrained(model_path, trust_remote_code=True)
model.add_image_preprocess(processor)  # 为模型添加图像预处理功能

# 构建输入消息(包含文本和图片)
messages = [
    {
        "role": "user",
        "content": [
            {
                "type": "text",
                "text": "图片中的女孩穿什么颜色的衣服?"
            },
            {
                "type": "image_url",
                "image_url": {
                    "url": "https://paddlenlp.bj.bcebos.com/datasets/paddlemix/demo_images/example1.jpg"
                }
            },
        ]
    },
]

# 处理文本输入:生成符合模型格式的对话模板
text = processor.tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True,  # 添加生成提示,告诉模型接下来需要生成回复
)

# 处理视觉输入:提取图片和视频信息
image_inputs, video_inputs = processor.process_vision_info(messages)

# 整合所有输入,转换为模型可接受的格式
inputs = processor(
    text=[text],
    images=image_inputs,
    videos=video_inputs,
    padding=True,  # 补齐输入长度
    return_tensors="pt",  # 返回PyTorch张量
)

# 将输入移动到模型所在设备
device = next(model.parameters()).device
inputs = inputs.to(device)

# 生成回复(最大生成1024个token)
generated_ids = model.generate(
    inputs=inputs['input_ids'].to(device),
    **inputs,
    max_new_tokens=1024,
    use_cache=False  # 不使用缓存(避免长文本生成时的累积误差)
)

# 解码生成的结果,获取最终回复
output_text = processor.decode(generated_ids[0][len(inputs['input_ids'][0]):])
print(output_text)

代码说明:

  • device_map="auto":自动根据你的硬件配置(CPU/GPU)分配模型,无需手动指定;
  • dtype=torch.bfloat16:使用bfloat16精度,在保证模型性能的同时减少显存占用;
  • processor:统一处理文本和图像输入,无需单独编写图像预处理代码(如缩放、归一化等)。

方法二:使用vLLM进行高效推理

vLLM是一款高性能的LLM推理库,支持高吞吐量和低延迟,适合需要快速响应的场景。

步骤1:安装vLLM

需要安装vLLM的最新版本(支持多模态模型):

pip install uv  # 用于快速安装Python包
uv pip install -U vllm --pre \
  --extra-index-url https://wheels.vllm.ai/nightly \  # vLLM nightly版本源
  --extra-index-url https://download.pytorch.org/whl/cu129 \  # PyTorch CUDA 12.9版本源
  --index-strategy unsafe-best-match

步骤2:启动vLLM服务

# 单卡80G GPU部署(若出现错误,可添加--gpu-memory-utilization 0.95参数尝试)
vllm serve baidu/ERNIE-4.5-VL-28B-A3B-Thinking --trust-remote-code

步骤3:启用推理和工具调用解析器(可选)

如果需要使用模型的推理链解析或工具调用功能,可添加相应参数:

# 启用ERNIE4.5专用的推理解析器和工具调用解析器
vllm serve baidu/ERNIE-4.5-VL-28B-A3B-Thinking --trust-remote-code \
 --reasoning-parser ernie45  \
 --tool-call-parser ernie45  \
 --enable-auto-tool-choice  # 允许模型自动选择是否调用工具

适用场景:

  • 需要处理高并发请求的应用(如在线客服、智能问答系统);
  • 对响应速度要求较高的实时交互场景。

方法三:使用FastDeploy快速部署服务

FastDeploy是百度推出的部署工具,支持多框架模型的快速部署,适合生产环境使用。

步骤1:安装FastDeploy

参考FastDeploy官方文档安装适合你环境的版本。

步骤2:启动服务

fastdeploy serve --model baidu/ERNIE-4.5-VL-28B-A3B-Thinking \
  --max-model-len 131072 \  # 最大模型输入长度(token数)
  --max-num-seqs 32 \  # 最大并发序列数
  --port 8180 \  # 服务端口
  --quantization wint8 \  # 使用wint8量化,减少显存占用
  --reasoning-parser ernie-45-vl-thinking \  # 推理解析器
  --tool-call-parser ernie-45-vl-thinking \  # 工具调用解析器
  --mm-processor-kwargs '{"image_max_pixels": 12845056 }'  # 图像最大像素数

注意事项:

  • 单卡部署时,需要至少80GB的GPU显存;
  • --quantization wint8参数会通过量化减少显存使用,但可能轻微影响精度(视具体任务而定)。

方法四:使用ERNIEKit进行微调

如果你需要根据特定场景定制模型(如行业专属数据训练),可以使用ERNIEKit工具包进行微调。ERNIEKit是基于PaddlePaddle的训练工具,专为ERNIE系列模型设计。

步骤1:下载模型

huggingface-cli download baidu/ERNIE-4.5-VL-28B-A3B-Thinking --local-dir baidu/ERNIE-4.5-VL-28B-A3B-Thinking

步骤2:指令微调(SFT)

# 基础指令微调(使用LoRA方法,节省显存)
erniekit train examples/configs/ERNIE-4.5-VL-28B-A3B-Thinking/sft/run_sft_lora_8k.yaml

# 工具调用指令微调(针对需要调用外部工具的场景)
erniekit train examples/configs/ERNIE-4.5-VL-28B-A3B-Thinking/sft_function_call/run_sft_8k.yaml

更多微调配置:

  • 多GPU训练:参考ERNIEKit仓库中的多卡配置示例;
  • 不同微调策略:支持全参数微调、LoRA微调、DPO(直接偏好优化)等。

你可以在ERNIEKit GitHub仓库的examples文件夹中找到更详细的微调脚本和配置说明。

许可证与引用说明

ERNIE-4.5-VL-28B-A3B-Thinking遵循Apache License 2.0协议,允许商业使用,但需遵守协议中的条款(如保留版权声明、不承担连带责任等)。版权归2025年百度公司所有。

如果你在研究或项目中使用了该模型,建议引用百度的技术报告:

@misc{ernie2025technicalreport,
      title={ERNIE 4.5 Technical Report},
      author={Baidu-ERNIE-Team},
      year={2025},
      primaryClass={cs.CL},
      howpublished={\url{https://ernie.baidu.com/blog/publication/ERNIE_Technical_Report.pdf}}
}

常见问题(FAQ)

1. ERNIE-4.5-VL-28B-A3B-Thinking需要什么硬件配置才能运行?

单卡部署时,至少需要80GB显存的GPU(如NVIDIA A100、H100);如果使用vLLM或FastDeploy的量化功能,可适当降低显存要求,但仍建议60GB以上显存以保证稳定运行。

2. 模型支持中文输入吗?

是的,模型对中文和英文都有良好的支持,尤其在中文场景下经过了优化,能准确理解中文指令和中文视觉内容(如中文标识、手写汉字等)。

3. 如何判断模型是否需要调用工具?

当使用vLLM或FastDeploy部署时,启用--enable-auto-tool-choice参数后,模型会根据问题自动判断是否需要调用工具(如图片搜索)。例如,遇到“这张图片中的花叫什么名字”这类超出内置知识的问题时,模型会自动触发工具调用。

4. 微调模型需要多少数据?

基础指令微调建议至少准备1万条以上的高质量图文数据;针对特定任务(如工业质检),可使用5000条左右的领域专属数据进行微调,配合LoRA方法能在较少数据下达到较好效果。

5. 模型的“以图思考”功能如何触发?

不需要额外指令,模型会在处理复杂图片时自动启用类似人类的“观察逻辑”。例如,分析包含多个小物体的图片时,模型会先整体浏览,再聚焦到关键区域的细节。

6. 与其他多模态模型相比,它的优势在哪里?

主要优势在于“轻量高效”和“推理深度”:仅激活30亿参数就能接近顶级模型性能,适合资源有限的场景;同时,通过强化学习和动态难度采样,模型在多步推理、因果分析等复杂任务上表现更突出。

7. 可以用于视频实时分析吗?

目前模型更适合处理短视频片段(如10秒以内),实时长视频分析需要结合额外的视频帧采样和处理逻辑,建议搭配视频处理工具(如FFmpeg)使用,降低输入数据量。

ERNIE-4.5-VL-28B-A3B-Thinking通过技术创新,为多模态AI应用提供了更高效、更精准的解决方案。无论是科研探索还是商业开发,这款模型都为开发者提供了丰富的可能性。如果你正在寻找一款能平衡性能与资源消耗的多模态模型,不妨按照上述指南尝试使用,相信它能满足你的需求。