| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
💻 GitHub | 🤗 Hugging Face | 🤖 ModelScope | 📑 Blog | 📚 Paper
🚀 HF Space | 💬 Feishu | 🫨 Discord | 📜 License
Start here: Try the demo · Quick start · Real-time inference · Offline inference · Model weights
MOSS_VL_1_github_1.mp4MOSS-VL is an open-weight model series for long-form, real-time video understanding, built on a unified cross-attention architecture. All three models are 11B-parameter and open-weight.
Unlike the default paradigm of offline video models ("watch first, answer after"), MOSS-VL-Realtime is designed for real-time interaction on continuous video streams: it runs multimodal perception and text generation in parallel on a continuously arriving stream, natively supporting multi-turn real-time dialogue and dynamic scene understanding, autonomously deciding when to speak, achieving fine-grained temporal grounding, and streaming its responses.
At the architectural level, MOSS-VL-Realtime adopts the following core designs:
MOSS-VL-Realtime delivers significantly stronger streaming interaction capabilities, achieving open-source SOTA results on multiple streaming video understanding benchmarks. Its "proactive speaking" ability stands out in particular: the model leads on all three proactivity evaluations — Proactive Alerting in OmniMMI, Proactive Output in StreamingBench, and ProactiveVideoQA.
We have systematically restructured and deeply optimized our data system, comprehensively strengthening the model's foundational capabilities and instruction-interaction experience, while maintaining a high level of stability across offline evaluations.
Offline Multimodal Benchmark — Click to ExpandFor comprehensive benchmark breakdowns, comparison systems, and detailed tables of all objective metrics, please refer to our Technical Blog.
conda create -n moss_vl python=3.12 pip -y
conda activate moss_vl
pip install -i https://pypi.org/simple --no-build-isolation -r requirements.txtReal-time inference consumes timestamped frames incrementally, so the model can keep perceiving a live video stream while it answers and can accept new questions at any time. The fastest way to replay a local video against its media clock is:
CUDA_VISIBLE_DEVICES=0 python inference/realtime/run_online_inference.py \
--checkpoint OpenMOSS-Team/MOSS-VL-Realtime \
--source video \
--video path/to/example.mp4 \
--sample-fps 1 \
--playback-speed 1 \
--max-frames 256Keep --playback-speed 1 for model inference so frames arrive on the original timeline. The runtime provides three integration levels:
It also supports streaming JSONL samples, cameras, screen capture, and synthetic sources. See inference/realtime/README.md for the complete CLI, input format, and WebSocket protocol.
For production multi-stream serving, use the specialized SGLang-Omni backend in third_party/sglang-omni/: dynamic multi-session scheduling and data-parallel replicas deliver substantially higher realtime throughput. A complete full-stack demo — browser frontend, service backend, built-in memory system, and ASR/TTS voice input and output — is packaged in third_party/realtime-demo/.
Offline inference supports full-modality queries (interleaved text, image, and video inputs). The fastest way to get a first result is offline_batch_generate:
import torch
from transformers import AutoModelForCausalLM, AutoProcessor
checkpoint = "OpenMOSS-Team/MOSS-VL-Realtime"
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
)
queries = [{
"messages": [{"role": "user", "content": [
{"type": "image", "image": "path/to/example.jpg"},
{"type": "text", "text": "Describe this image."}
]}],
"generate_kwargs": {"max_new_tokens": 256, "do_sample": False},
}]
with torch.no_grad():
result = model.offline_batch_generate(processor, queries)
print([item["text"] for item in result["results"]])The third_party/flash-attention-src/ directory contains the FlashAttention-3 backend used by MOSS-VL cross-attention. It adds the cross_kv_boundary interface, which represents the visible KV prefix of each query row with one int32 value instead of materializing a dense attention mask. The source is derived from upstream FlashAttention and is bundled here with its original license and attribution. See third_party/flash-attention-src/README.md for the mask contract, supported paths, build instructions, and source lineage.
MOSS-VL can also be efficiently deployed with the following inference backends:
We provide a lightweight SFT framework built on HuggingFace transformers.Trainer. It supports full-parameter training and LoRA, with the vision encoder, language model, and LM head independently controllable.
# Full-parameter SFT (vision encoder frozen by default)
bash finetune/scripts/run_sft.sh
# LoRA SFT
pip install -i https://pypi.org/simple peft
bash finetune/scripts/run_sft_lora.shSee finetune/README.md for full documentation.
MOSS-VL also works out of the box with the mainstream fine-tuning frameworks LLaMA-Factory (PR #10708) and ms-swift (PR #9944) — both LoRA and full-parameter fine-tuning are supported.
We release FP8 and NF4 quantized checkpoints for both Instruct-0708 and Realtime, and share the calibration-free PTQ recipes behind them in quantization/README.md (中文教程). The guide covers selective layer coverage — which language-model Linears to quantize versus which multimodal modules stay in BF16 — runtime KV-cache quantization for Transformers and SGLang, and reproduction scripts that work directly on your own fine-tuned or SFT checkpoints.
This generation ships three models from the same rebuilt data: MOSS-VL-Realtime for continuous video streams, Instruct for offline tasks, and Base for continued pre-training and fine-tuning.
| Model | Params | Context | Best for | 🤗 HuggingFace | 🤖 ModelScope |
|---|---|---|---|---|---|
| MOSS-VL-Realtime | 11B | 256K | Real-time interaction on continuous video streams | Link | Link |
| MOSS-VL-Instruct-0708 | 11B | 256K | Offline chat / inference / downstream tasks | Link | Link |
| MOSS-VL-Base-0708 | 11B | 256K | Continued pre-training / fine-tuning | Link | Link |
Previous generation:
| Model | Params | Context | Best for | 🤗 HuggingFace | 🤖 ModelScope |
|---|---|---|---|---|---|
| MOSS-VL-Base-0408 | 11B | 256K | Continued pre-training / fine-tuning | Link | Link |
| MOSS-VL-Instruct-0408 | 11B | 256K | Chat / inference / downstream tasks | Link | Link |
We would like to express our gratitude to NVIDIA for the Megatron-LM framework and the Qwen Team for their powerful Qwen series language models, which serve as the foundation of our training infrastructure and core LLM. We also thank the SGLang Team for their high-performance SGLang serving framework, which powers efficient deployment of MOSS-VL.
@misc{mossvl,
title = {MOSS-VL Technical Report},
author = {Wang, Pengyu and Tan, Chenkun and Zhou, Shaojun and Zhou, Qirui and Chen, Yanxin and He, Xingyang and Zeng, Huazheng and Cheng, Jijun and Wang, Chenghao and Qian, Xiaomeng and Wang, Pengfei and Huang, Zhan and Gao, Shanqing and Huang, Wei and Cao, Longjun and Ran, Wu and Liu, Jie and Zhu, Changtai and Wang, Hongkai and Tian, Yixian and Liu, Chenghao and Ye, Zhen and Wang, Xinghao and Jiang, Botian and Feng, Guoguo and Fei, Zhaoye and Li, Ruixiao and Chen, Mingshu and Gao, Yang and Cheng, Qinyuan and Li, Shimin and Qiu, Xipeng},
year = {2026},
eprint = {2608.15045},
archivePrefix = {arXiv},
primaryClass = {cs.CV},
url = {https://arxiv.org/abs/2608.15045}
}
@misc{mossvideopreview,
title = {{MOSS-Video-Preview: Toward Real-Time Video Understanding via Cross-Attention}},
author = {Pengyu Wang and Chenkun Tan and Shaojun Zhou and Wei Huang and Qirui Zhou and Zhan Huang and Zhen Ye and Jijun Cheng and Xiaomeng Qian and Yanxin Chen and Xingyang He and Huazheng Zeng and Chenghao Wang and Pengfei Wang and Hongkai Wang and Shanqing Gao and Yixian Tian and Chenghao Liu and Xinghao Wang and Botian Jiang and Xipeng Qiu},
year = {2026},
eprint = {2606.07639},
archivePrefix = {arXiv},
primaryClass = {cs.CV},
url = {https://arxiv.org/abs/2606.07639}
}| Back | FazBrowse Home | New Git URL |