OpenMOSS/moss-video-preview-base
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

MOSS-Video-Preview-Base

📄 技术报告  |  💻 GitHub  

简介

我们推出MOSS-Video-Preview-Base,这是MOSS-Video-Preview系列中的预训练基础模型 checkpoint。

[!Important] 这是一个预训练模型 checkpoint,未经过有监督指令微调(无离线SFT/无实时SFT)。

本仓库包含预训练权重,旨在作为下游任务的起点:

  • 离线SFT:对完整视频片段进行指令跟随与推理
  • 实时SFT:低延迟流视频理解与响应

🌟 核心亮点

  • 🧩 首个交叉注意力基础模型:专为原生视频-语言理解设计的独特基础模型架构,摒弃了简单的特征拼接方式。
  • 🔄 支持流式处理的骨干网络:底层架构原生支持“静默-发声”切换与实时中断(需后续实时SFT)。
  • ⚡ 极致效率:针对Flash Attention 2优化,兼容NPU/CUDA平台,为长视频研究提供高吞吐量起点。

模型架构

MOSS-Video-Preview-Base是该系列的基础 checkpoint,采用首创的图像-视频统一交叉注意力架构:

Model Architecture

  • 原生统一设计:不同于传统基于投影的模型,该架构原生统一支持图像和视频流,确保无缝的时间一致性和视觉-语言解耦。
  • 跨模态投影器:由专有VideoMllamaTextCrossAttention机制驱动,实现时间视觉特征与语言上下文的高效语义对齐。
  • 统一时空编码:将视频帧序列与文本标记对齐,为长上下文多模态推理提供稳健骨干。

有关架构图和完整系统详情,请参见顶级仓库:OpenMOSS/MOSS-Video-Preview。

🚀 快速开始

视频推理
import torch
from transformers import AutoModelForCausalLM, AutoProcessor
checkpoint = "OpenMOSS-Team/moss-video-preview-base"
video_path = "data/example_video.mp4"
prompt = "" # For base model, prompt is set to empty to perform completion task.

processor = AutoProcessor.from_pretrained(
    checkpoint,
    trust_remote_code=True,
    frame_extract_num_threads=1,
)
model = AutoModelForCausalLM.from_pretrained(
    checkpoint,
    trust_remote_code=True,
    device_map="auto",
    torch_dtype=torch.bfloat16,
    attn_implementation="flash_attention_2",
)

messages = [
    {
        "role": "user",
        "content": [
            {"type": "video"},
            {"type": "text", "text": prompt},
        ],
    }
]

input_text = processor.apply_chat_template(messages, add_generation_prompt=True)
inputs = processor(
    text=input_text,
    videos=[video_path],
    video_fps=1.0,
    video_minlen=8,
    video_maxlen=16,
    add_special_tokens=False,
    return_tensors="pt",
).to(model.device)

with torch.no_grad():
    output_ids = model.generate(**inputs, max_new_tokens=512, do_sample=False)

print(processor.decode(output_ids[0], skip_special_tokens=True))
图像推理
import torch
from PIL import Image
from transformers import AutoModelForCausalLM, AutoProcessor
checkpoint = "OpenMOSS-Team/moss-video-preview-base"
image_path = "data/example_image.jpg"
prompt = "" # For base model, prompt is set to empty to perform completion task.

image = Image.open(image_path).convert("RGB")

processor = AutoProcessor.from_pretrained(
    checkpoint,
    trust_remote_code=True,
)
model = AutoModelForCausalLM.from_pretrained(
    checkpoint,
    trust_remote_code=True,
    device_map="auto",
    torch_dtype=torch.bfloat16,
    attn_implementation="flash_attention_2",
)

messages = [
    {
        "role": "user",
        "content": [
            {"type": "image"},
            {"type": "text", "text": prompt},
        ],
    }
]

input_text = processor.apply_chat_template(messages, add_generation_prompt=True)
inputs = processor(
    text=input_text,
    images=[image],
    add_special_tokens=False,
    return_tensors="pt",
).to(model.device)

with torch.no_grad():
    output_ids = model.generate(**inputs, max_new_tokens=256, do_sample=False)

print(processor.decode(output_ids[0], skip_special_tokens=True))

✅ 预期用途

  • 研究基础:对于专注于视频理解领域中表示学习或模型效率的研究人员而言,这是一个理想的起点。
  • SFT 起点:推荐作为训练您自己的离线 SFT 或实时流处理变体的骨干模型。
  • 架构探索:测试新的多模态对齐技术、时间编码或特定领域的适配方法。

⚠️ 局限性与未来展望

  • 基础模型性质:此 checkpoint 仅经过预训练,尚未进行指令微调。若不进一步进行 SFT,它可能会生成重复文本或无法遵循复杂指令。
  • 性能基准测试:尽管在实时架构创新方面处于领先地位,但与 Qwen2.5-VL 等顶级模型相比仍存在性能差距。缩小这一差距是我们持续迭代的核心重点。
  • 可扩展分布式训练:当前训练管道针对架构验证进行了优化。我们正迁移至 Megatron-LM 框架,以利用3D 并行(张量并行、管道并行和数据并行) 进行更大规模的预训练。
  • 开源承诺:在下一代主要版本中,我们将正式向社区开源完整的训练代码库(与 Megatron-LM 集成) 以及更多样化的数据集。

🧩 环境要求

  • Python:3.10 及以上版本
  • PyTorch:1.13.1 及以上版本(强烈建议使用 GPU)
  • 已测试配置:Python 3.12.4 + PyTorch 2.4.0(CUDA 12.1)+ DeepSpeed 0.16.1
  • 仅 CPU 配置:PyTorch 2.4.0
  • Transformers:对于此模型系列,需要设置 trust_remote_code=True(由于 auto_map 自定义代码)
  • 可选(推荐):FlashAttention 2(attn_implementation="flash_attention_2")
  • 视频解码:
    • 流式演示需导入 OpenCV(cv2)
    • 离线演示依赖于处理器的视频加载后端

有关完整的环境设置(包括可选的 FlashAttention2 额外组件),请参见顶层仓库的 README.md。

⚠️ 注意事项

  • 这是一个基础模型目录。质量/延迟特性(离线监督微调、实时流处理等)取决于具体的微调检查点和推理管道。
  • 此目录中的Python源文件通过config.json中的auto_map进行引用。

[!IMPORTANT]

🌟 我们的使命与社区邀请

我们填补了基于交叉注意力的视频理解基础模型的空白。

我们热烈欢迎表示学习和模型效率领域的专家在我们的架构基础上进行探索、实验和创新。让我们共同突破视频智能的边界,推动开源社区的发展!

引用

@article{wang2026mossvideo,
  title         = {{MOSS-Video-Preview: Toward Real-Time Video Understanding via Cross-Attention}},
  author        = {Pengyu Wang, Chenkun Tan, Shaojun Zhou, Wei Huang, Qirui Zhou, Zhan Huang, Zhen Ye, Jijun Cheng, Xiaomeng Qian, Yanxin Chen, Xingyang He, Huazheng Zeng, Chenghao Wang, Pengfei Wang, Hongkai Wang, Shanqing Gao, Yixian Tian, Chenghao Liu, Xinghao Wang, Botian Jiang, Xipeng Qiu},
  year          = {2026},
  journal       = {arXiv preprint arXiv:2606.07639},
  eprint        = {2606.07639},
  archivePrefix = {arXiv},
  primaryClass  = {cs.CV},
  url           = {https://arxiv.org/abs/2606.07639}
}