EventLens-8B — event-structure learning for video understanding

Results · Quick start · Training · Dataset

EventLens-8B is a video-language model developed through event-structure reinforcement learning and multi-teacher on-policy distillation (MT-OPD). Built on Qwen3-VL-8B-Instruct, it learns to recognize event boundaries, progression, and relations, alongside temporal grounding and video question answering.

The model is part of EventLens: Event-Structure Reinforcement Learning for Video Understanding, developed by AIM3 Lab, Renmin University of China, and Kling AI.

Results

Selected results reported in the EventLens paper, compared with the corresponding pretrained backbone under the shared 256-frame protocol.

Benchmark Qwen3-VL-8B EventLens-8B Gain
QVHighlights 50.03 59.12 +9.09
ActivityNet 39.96 46.35 +6.39
Charades-STA 44.79 48.25 +3.46
E.T. Bench 32.77 38.40 +5.63
VinoGround 40.20 47.20 +7.00

QVHighlights, ActivityNet, and Charades-STA use mIoU. E.T. Bench and VinoGround use their official benchmark scores. Gains are absolute score differences; higher is better. These are paper-reported results.

Model details

Property Value
Base model Qwen/Qwen3-VL-8B-Instruct
Architecture Qwen3VLForConditionalGeneration
Checkpoint format Full BF16 safetensors weights
Weight files 4 shards · 17.53 GB
Stored tensor parameters¹ 8,767,123,696
Student training Multi-teacher on-policy distillation
Specialist teachers used in training Three 4B models: Boundary, Progression, Relation
Paper prompt mode Direct task answers (no_cot)
Training view Lostgreen/EventLens-Train / paper_mt_opd

¹ The 8B name follows the backbone series. The stored tensor count includes both the language and vision components. Weight file size is distinct from runtime memory use.

Quick start

Use a Transformers version that supports Qwen3-VL. The example follows the official Qwen3-VL integration.

pip install -U transformers accelerate torch torchcodec
from transformers import AutoProcessor, Qwen3VLForConditionalGeneration

MODEL_PATH = "Lostgreen/EventLens-8B"

processor = AutoProcessor.from_pretrained(MODEL_PATH)
model = Qwen3VLForConditionalGeneration.from_pretrained(
    MODEL_PATH,
    dtype="auto",
    device_map="auto",
    attn_implementation="sdpa",
).eval()

messages = [{
    "role": "user",
    "content": [
        {"type": "video", "path": "/path/to/video.mp4"},
        {"type": "text", "text": "Describe the main events in this video in chronological order."},
    ],
}]

inputs = processor.apply_chat_template(
    messages,
    tokenize=True,
    add_generation_prompt=True,
    return_dict=True,
    return_tensors="pt",
    num_frames=32,
).to(model.device)
inputs.pop("token_type_ids", None)

output_ids = model.generate(**inputs, max_new_tokens=256, do_sample=False)
answer_ids = output_ids[:, inputs.input_ids.shape[1]:]
print(processor.batch_decode(answer_ids, skip_special_tokens=True)[0])

This short example samples 32 frames. Reproducing the paper's scores requires the benchmark-specific prompts, preprocessing, and 256-frame protocol. For event recovery tasks, follow the task's answer format in the released dataset; frame order and clip grouping are part of the input.

Training

Specialist reinforcement learning followed by multi-teacher on-policy distillation

Stage I — Learn event specialists. Three Qwen3-VL-4B teachers are trained on event boundaries, single-event progression, and multi-event relations using reinforcement learning with verifiable rewards.

Stage II — Distill a unified student. The 8B student generates its own responses. Task routing selects the matching specialist, which provides token distributions for on-policy distillation. Both EventLens student sizes use the same three 4B teachers.

The released model is the unified 8B student. Specialist teacher checkpoints are not included in this release.

Training data

The public EventLens training dataset provides frozen task views, original hierarchy annotations, and shared sampled JPEG frames. The default student view contains 37,428 training examples:

Task family Training examples
Event boundaries 10,000
Event progression 10,000
Event relations 10,000
Temporal grounding 4,791
Video QA 2,637

The historical monitor_val split contains 1,950 records and overlaps training. Benchmark results above use the corresponding external evaluation benchmarks.

Intended use

EventLens-8B supports research on video event understanding, temporal grounding, event ordering, and video question answering. Event timing and ordering depend on the supplied visual evidence: sparse sampling can omit brief actions, and generated descriptions or timestamps may be inaccurate. Review outputs when exact event boundaries matter.

License and credits

EventLens model weights are released under CC-BY-NC-SA-4.0 for non-commercial use. The Qwen3-VL-8B-Instruct base model is distributed under Apache-2.0. The EventLens dataset uses CC-BY-NC-SA-4.0 for EventLens-derived annotations and labels, with source-specific terms for third-party data and media. The original Apache-2.0 license is retained in LICENSE-BASE-QWEN-APACHE2, with attribution in NOTICE.

EventLens builds on Qwen3-VL, EasyR1, and verl. The training dataset acknowledges its upstream sources in its dataset card.

Downloads last month
1
Safetensors
Model size
9B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Lostgreen/EventLens-8B

Finetuned
(644)
this model

Dataset used to train Lostgreen/EventLens-8B