Molmo2: Open Weights and Data for Vision-Language Models with Video Understanding and Grounding Review
0. Introduction
Molmo2는 비디오 VLM을 볼 때 자주 흐려지는 질문을 정면으로 다시 꺼내는 논문이다.
“open-weight video VLM이면 충분한가”
논문의 답은 아니다에 가깝다. 모델 weight만 공개되어 있고, 데이터와 recipe가 닫혀 있거나, 더 강한 closed VLM의 synthetic output에 의존한다면 연구자가 실제로 개선할 수 있는 기반이 약하다. Molmo2는 이 문제를 open weights, open data, open code 방향에서 다시 잡는다. 특히 단순 video QA가 아니라, video pointing과 video tracking을 핵심 능력으로 둔다.
한 줄 요약: Molmo2는 video understanding을 text answer만의 문제가 아니라 pixel-level grounding까지 포함하는 문제로 정의하고, closed VLM distillation 없이 새 video/multi-image dataset과 training recipe를 공개해 open VLM의 재현 가능성을 끌어올리려는 논문이다.
이 논문을 지금 볼 가치가 있는 이유는 다음과 같음.
- 최근 VLM benchmark는 caption, QA, OCR 위주에서 grounded evidence 를 요구하는 방향으로 이동하고 있다.
- Molmo2는 video QA, video captioning, video counting, pointing, tracking을 한 모델 family 안에서 같이 다룬다.
- dataset release가 paper의 보조 산물이 아니라, 논문 기여의 중심에 있다.
- engineering 관점에서 packing, message tree, token weighting, visual token attention mask가 어떻게 성능과 throughput을 바꾸는지 볼 수 있다.
- 한국어 연구자 입장에서는 video agent, robotics, visual RAG, document/video evidence attribution으로 이어질 수 있는 재사용 포인트가 많다.
이 논문의 핵심은 더 큰 VLM을 만든 것이 아니라, video VLM에서 open science의 단위를 model weight에서 data, recipe, eval, grounding output까지 확장한 데 있다.
1. Problem Setting
1-1. Problem definition
Molmo2가 겨냥하는 문제는 크게 두 가지다.
첫째, video-language model의 closed ecosystem 문제다. 논문은 가장 강한 video-language model이 proprietary system이고, open-weight model도 closed VLM의 synthetic data에 기대거나 training recipe를 공개하지 않는 경우가 많다고 본다. 그러면 연구자는 benchmark score를 비교할 수는 있지만, 왜 좋아졌는지 분석하거나 재현하기 어렵다.
둘째, video understanding에서 grounding이 빠져 있다는 문제다. 많은 VLM은 video를 보고 설명하거나 질문에 답할 수 있다. 하지만 실제 application에서는 답변만으로 부족한 경우가 많다. 예를 들어 robot이 빨간 block을 몇 번 잡았는지 묻는다면, 답은 숫자만이 아니라 각 grasp event의 시점과 위치까지 포함해야 한다. 컵이 떨어진 순간을 찾는다면, timestamp와 object location이 같이 필요하다.
이 논문에서 grounding은 단순 box prediction이 아니라 다음 세 가지를 포함한다.
| Capability | Output | Why it matters |
|---|---|---|
| Video pointing | timestamp and point | event가 언제 어디서 발생했는지 확인 |
| Video counting | multiple grounded points | counting answer를 visual evidence로 검증 |
| Video tracking | point sequence with ID | object identity를 time axis에서 유지 |
즉 Molmo2의 문제 설정은 “비디오를 잘 설명하는가”에서 멈추지 않는다.
문제는 “비디오 안에서 답의 근거를 시공간 좌표로 돌려줄 수 있는가”다.
1-2. Why previous approaches are insufficient
기존 open VLM 접근은 세 가지 측면에서 부족하다.
- Open weight만으로는 부족함
- model checkpoint만 공개되어도 data mixture, filtering, prompt format, training schedule이 닫혀 있으면 재현과 개선이 어렵다.
- Molmo2는 dataset과 code를 같이 공개하는 방향을 택한다.
- Closed VLM distillation 의존
- 많은 video instruction dataset은 closed VLM이 caption이나 QA를 생성한다.
- 이 방식은 빠르지만, closed model의 bias와 blind spot을 그대로 가져올 수 있다.
- Molmo2는 closed VLM을 쓰지 않고, human annotation과 자체 captioner, text-only LLM pipeline을 조합한다.
- Grounding output의 부족
- text answer는 좋은 demo를 만들기 쉽지만, 실제 monitoring, robotics, data annotation, evidence attribution에서는 부족하다.
- point, timestamp, track ID가 있어야 answer가 검증 가능한 object로 바뀐다.
이 논문은 open VLM의 기준을 score가 아니라 inspectability로 확장한다.
2. Core Idea
2-1. Main contribution
Molmo2의 핵심 기여는 다음 네 가지로 정리할 수 있다.
- Fully open video-centric VLM family
- Molmo2-4B, Molmo2-8B, Molmo2-O-7B를 공개한다.
- 4B와 8B는 Qwen3 backbone, O-7B는 OLMo3 backbone을 사용한다.
- O-7B는 LLM backbone까지 open 흐름으로 맞추려는 연구용 variant다.
- Nine new datasets
- 7개 video dataset과 2개 multi-image dataset을 만든다.
- dense caption, free-form QA, video pointing, video tracking, multi-image QA, multi-image pointing을 포함한다.
- closed VLM distillation 없이 수집한다는 점을 강조한다.
- Grounding-oriented output format
- model은 text answer뿐 아니라 timestamp, normalized point coordinate, image index, tracking ID를 생성한다.
- counting도 숫자만 예측하는 대신 point를 먼저 찍고 count로 이어가는 방식이 중요하다.
- Training recipe
- image-only pre-training, joint video/image SFT, long-context SFT의 3-stage pipeline을 쓴다.
- packing, message tree, token weighting, bidirectional visual token attention을 결합한다.
2-2. Design intuition
Molmo2의 설계 직관은 비교적 분명하다.
“비디오를 이해하려면 language answer 이전에 시공간 evidence를 다룰 수 있어야 한다”
기존 video VLM은 frame sequence를 보고 answer token을 생성한다. 하지만 answer token이 실제 frame 어디에서 왔는지는 드러나지 않는다. Molmo2는 이를 point와 track으로 바꾼다. 이때 중요한 것은 segmentation mask를 직접 생성하는 것이 아니라, VLM이 discrete point를 생성하고, 필요하면 SAM 2 같은 segmentation model로 후처리할 수 있게 하는 것이다.
이 접근은 세 가지 장점이 있다.
- point output은 token sequence로 다룰 수 있어 VLM training recipe와 잘 맞는다.
- timestamp와 coordinate를 같이 내므로 video event grounding이 가능하다.
- track ID를 넣으면 object identity를 sequence 전체에서 유지할 수 있다.
Molmo2는 segmentation model을 VLM 안으로 다 넣기보다, VLM이 어떤 object와 event를 봐야 하는지 가리키는 interface를 설계한 쪽에 가깝다.
3. Architecture / Method
3-1. Overview
| Item | Description |
|---|---|
| Goal | open data 기반 video/multi-image VLM에서 QA와 grounding을 함께 개선 |
| Input | single image, multi-image, video frames, optional subtitles |
| Output | free-form text, timestamped points, object tracks, grounded chain-of-thought |
| Backbone | Qwen3-4B, Qwen3-8B, OLMo3-7B variants |
| Vision encoder | SigLIP 2 based image/video frame encoder |
| Connector | pooled visual features를 LLM token space로 project |
| Training stages | image pre-training, multimodal SFT, long-context SFT |
| Key recipe | token weighting, packing, message tree, bidirectional visual token attention |
Molmo2 architecture 자체는 급진적인 새 구조라기보다, 검증된 VLM 조립법을 video grounding에 맞게 세밀하게 조정한 형태다. vision transformer가 frame/image를 patch feature로 바꾸고, connector가 이를 pooled visual token으로 만들어 LLM에 넣는다. LLM은 visual token과 text token, timestamp, image index를 함께 보고 answer를 생성한다.
3-2. Module breakdown
1) Vision encoder and connector
이미지는 downscaled single crop과 overlapping crop을 조합해 처리한다. 비디오는 frame을 sampling해서 single crop으로 처리한다. 긴 비디오에서는 token 수가 바로 compute와 memory 문제로 이어지므로, video frame 쪽은 patch window pooling을 더 강하게 적용한다.
connector는 Molmo 계열의 방식을 따라 ViT 중간 layer feature를 활용한다. 논문은 third-to-last layer와 ninth-from-last layer feature를 사용한다고 설명한다. 이후 pooled patch feature가 shared MLP를 통해 LLM input space로 projection된다.
핵심은 visual token이 단순히 텍스트 앞에 붙는 부가 정보가 아니라, time과 image index를 가진 sequence element로 들어간다는 점이다.
2) Visual token attention
Molmo2는 image token, frame token이 서로 forward attention할 수 있게 한다. multi-image와 video에서는 visual token 사이의 관계가 중요하다. 예를 들어 두 frame의 같은 object를 이어보거나, 여러 이미지에서 같은 entity를 찾아야 하기 때문이다.
기존 packed training에서는 서로 다른 example끼리 attention이 섞이면 data leakage가 생긴다. 그래서 packing과 message tree를 같이 사용해 같은 example 안에서는 필요한 attention을 열고, 다른 example이나 다른 QA turn 사이에서는 mask를 걸어준다.
여기서 중요한 포인트는 visual token attention을 무작정 여는 것이 아니라, packed sequence 안에서 의미 있는 경계는 유지한다는 점이다.
3) Pointing and tracking format
Molmo2의 pointing output은 plain-text coordinate format이다. video에서는 normalized x/y coordinate와 timestamp를 넣고, image나 multi-image에서는 image index를 넣는다. tracking에서는 object별 integer ID를 부여한다.
이 포맷의 장점은 별도 detection head 없이 LLM token generation으로 grounding을 학습할 수 있다는 것이다. 또한 output이 text format이므로 기존 instruction tuning pipeline과도 맞는다.
예를 들어 video tracking에서는 아래 정보가 같이 필요하다.
- timestamp
- x coordinate
- y coordinate
- object ID
- sequence ordering
좌표 자체는 간단해 보이지만, model 입장에서는 어려운 문제다. frame마다 object가 사라졌다가 다시 나타나고, occlusion이 생기고, 같은 종류의 object가 여러 개 있을 수 있기 때문이다.
4) Counting by pointing
Molmo2의 흥미로운 부분 중 하나는 counting을 직접 숫자로 맞히는 task로만 보지 않는다는 점이다. 논문은 pointing before counting이 direct count prediction보다 더 낫다는 ablation을 제시한다.
직관적으로도 맞다. object count는 결국 instance localization의 결과다. 숫자만 맞히면 왜 맞았는지 알기 어렵지만, point를 찍으면 model이 어떤 object를 세었는지 검증할 수 있다.
이 점은 video QA를 evaluation 문제에서 evidence attribution 문제로 바꾼다.
4. Training / Data / Recipe
4-1. Data
Molmo2의 데이터 기여는 논문에서 가장 중요하다. 논문은 5개 human-annotated dataset, 4개 synthetic dataset, 그리고 기존 open-source data를 재가공한 dataset을 포함한다.
대표 dataset은 아래와 같다.
| Dataset | Type | Scale / role |
|---|---|---|
| Molmo2-Cap | human dense caption | 104k videos and 431k clips |
| Molmo2-AskModelAnything | human video QA | 140k QA pairs |
| Molmo2-CapQA | synthetic video QA | 1M QA pairs |
| Molmo2-SubtitleQA | synthetic subtitle-aware QA | 300k QA pairs |
| Molmo2-VideoPoint | human video pointing | 650k+ queries on 280k videos |
| Molmo2-VideoTrack | human tracking | 3.6k clips and 15k queries |
| Molmo2-MultiImageQA | human multi-image QA | 45k image sets and 72k QA pairs |
| Molmo2-MultiImagePoint | synthetic multi-image pointing | 470k+ examples |
| Molmo2-SynMultiImageQA | synthetic multi-image QA | 188k examples |
Molmo2-Cap은 dense video captioning dataset이다. annotation 방식이 흥미롭다. annotator가 video clip을 말로 자세히 설명하고, Whisper-1로 transcription한 뒤, text-only LLM으로 문장을 정리한다. 여기에 Molmo frame caption을 합쳐 빠진 visual detail을 보강한다.
Molmo2-VideoPoint는 video event와 object를 point로 찍는 dataset이다. action/event, object, animal, referring expression, spatial reference 등 다양한 category를 포함한다. annotator는 object가 나타나는 frame을 찾고, 그 frame에서 exact point를 클릭한다.
Molmo2-VideoTrack은 자연어 query를 통해 object track을 생성하는 데이터다. 기존 segmentation/box tracking annotation을 사람이 자연어 referring expression으로 다시 라벨링하는 방식에 가깝다.
이 데이터 설계에서 중요한 것은 closed VLM으로 caption을 뽑아 그대로 distill하지 않는다는 점이다. closed text-only LLM은 일부 QA refinement와 text generation에 쓰지만, closed VLM을 teacher로 써서 video understanding supervision을 만드는 구조는 피하려고 한다.
4-2. Training strategy
Molmo2 training은 세 단계다.
- Image-only pre-training
- PixMo-Cap 기반 dense captioning과 transcript prediction을 포함한다.
- PixMo-Points, PixMo-Count, CoSyn-Point를 넣어 pointing을 pre-training부터 학습한다.
- mixture는 captioning 60%, image pointing 30%, natural language 10%다.
- 32k steps, batch size 128로 학습한다.
- Joint video/image SFT
- PixMo, Molmo2 dataset, Tulu, open video/image dataset을 섞는다.
- category sampling rate는 empirical test로 수동 조정한다.
- dataset size에 비례해서 단순 sampling하지 않고, square-root based sampling과 manual rebalancing을 쓴다.
- paper v4 기준 30k steps, batch size 128, max sequence length 16,384다.
- Long-context SFT
- 같은 SFT mixture를 더 긴 context로 짧게 이어 학습한다.
- sequence length 36,864, 2k steps를 사용한다.
- context parallelism을 LLM에 적용하고, video frame processing도 context parallel group에 나눠 memory footprint를 낮춘다.
Molmo2-4B와 Molmo2-8B는 Qwen3 기반이고, Molmo2-O-7B는 OLMo3 기반이다. GitHub README 기준으로 Molmo2-4B는 Qwen3-4B-Instruct, Molmo2-8B는 Qwen3-8B, Molmo2-O-7B는 OLMo3-7B-Instruct에 대응한다.
4-3. Engineering notes
Token weighting
Molmo2는 output token 길이가 task마다 크게 다르다. multiple-choice QA는 한두 token이면 끝날 수 있지만, video caption은 4,000개 이상의 output token을 가질 수 있다. 그냥 token-level loss를 평균하면 긴 caption task가 loss를 지배한다.
그래서 논문은 token weighting을 적용한다. video caption은 fixed weight 0.1, pointing은 fixed weight 0.2를 사용한다. 다른 task는 answer token length에 따라 weight를 조절하는 heuristic을 쓴다.
이 부분은 multi-task VLM에서 생각보다 중요한 engineering detail이다.
성능을 올리는 데이터만 넣는다고 되는 것이 아니라, loss token budget을 어떤 task가 가져가는지 관리해야 한다.
Packing
비디오와 이미지, text-only example은 token length 차이가 크다. Molmo2는 padding waste를 줄이기 위해 여러 짧은 example을 하나의 long sequence로 packing한다.
문제는 packing을 하면 attention leakage가 생길 수 있다는 것이다. 서로 다른 example이 같은 sequence에 들어가므로, attention mask가 제대로 설계되어야 한다. Molmo2는 message tree schedule을 이용해 packed sequence 안에서 example boundary와 conversation boundary를 관리한다.
Message tree
Message tree는 한 input에 여러 QA pair가 붙는 경우를 더 효율적으로 학습하기 위한 구조다. 예를 들어 같은 video에 여러 질문이 있을 때 visual token을 반복 encode하지 않고, 여러 answer branch를 나눠 학습할 수 있다. 이는 throughput 개선에 직접 연결된다.
Long-context overhead
Long-context SFT는 long video QA를 개선하지만 비용이 크다. paper v4에서는 long-context SFT가 long video QA를 64.4에서 67.4로 올리는 반면, video caption F1은 42.3에서 39.9로 내려간다고 보고한다. 그래서 이 단계는 짧은 final training stage로만 사용된다.
5. Evaluation
5-1. Main results
Molmo2는 video understanding, video grounding, image/multi-image benchmark를 함께 평가한다. 논문은 결과를 proprietary API, open-weight only, open models, Molmo2 family로 나눠 비교한다.
핵심 결과를 간단히 정리하면 다음과 같다.
| Area | Reported result |
|---|---|
| Short video QA / captioning / counting | non-proprietary model 중 강한 결과 |
| Video counting | Molmo2-8B가 Qwen3-VL-8B 대비 35.5 vs 29.6 accuracy |
| Video pointing | Molmo2-8B가 Gemini 3 Pro 대비 38.4 vs 20.0 F1 |
| Video tracking | Molmo2 family가 specialized model과 API baseline을 포함해 강한 결과 |
| Image pointing | Point-Bench에서 open leaderboard 상위 결과 |
| Human preference | open-weight model과 동급 이상, fully open model 대비 큰 개선 |
여기서 내가 중요하게 보는 수치는 video pointing과 video tracking이다. 일반 video QA benchmark에서 몇 점 앞서는 것보다, VLM이 실제 point와 track을 생성할 수 있다는 사실이 더 큰 변화를 만든다.
논문은 video counting에서 Molmo2-8B가 35.5를 기록하고, Qwen3-VL-8B가 29.6을 기록한다고 보고한다. 또한 Molmo2-VP에서 Molmo2-8B는 38.4 F1, Gemini 3 Pro는 20.0 F1로 보고된다. 이는 proprietary VLM도 point-format video grounding에는 아직 약하다는 신호다.
5-2. What really matters in the experiments
이 논문을 읽을 때 score table만 보면 놓치기 쉬운 지점이 있다.
첫째, Molmo2는 text QA 점수만 올리는 논문이 아니다. evaluation의 핵심은 grounded output을 만들 수 있는가다. 특히 counting을 point로 풀고, tracking을 point sequence와 ID로 푸는 방식은 실제 deployment에서 debugging이 가능하다.
둘째, Molmo2의 benchmark 구성은 저자들이 새로 만든 eval set을 포함한다. Molmo2-CapTest, Molmo2-VideoCount, Molmo2-VideoPointVal, Molmo2-Track이 그 예다. 따라서 기존 public leaderboard만으로는 Molmo2의 강점을 완전히 설명하기 어렵다.
셋째, eval detail이 공개되지 않은 baseline도 있다. 논문은 author-published result를 우선 사용하고, 없는 경우 기존 report나 직접 evaluation으로 보완한다고 설명한다. 이 때문에 model-to-model 비교는 큰 방향을 보는 것이 맞고, 작은 차이를 과하게 해석하면 안 된다.
넷째, long-context SFT는 trade-off가 있다. long video QA는 개선되지만 captioning 성능은 내려간다. 이는 video VLM에서 context length만 늘리면 모든 문제가 해결된다는 식의 해석을 경계하게 만든다.
Molmo2의 가장 큰 실험적 메시지는 video grounding이 아직 낮은 절대 점수 영역이라는 점이다.
Molmo2가 좋아졌다는 것과, video grounding이 해결됐다는 것은 다른 말이다. appendix도 video grounding consistency와 long-video grounding limitation을 명시한다.
6. Limitations
- Closed image ViT 사용
- Molmo2-O-7B는 LLM backbone을 OLMo3로 열었지만, vision encoder는 SigLIP 2를 사용한다.
- 논문도 competitive open-data vision encoder가 부족하다는 점을 한계로 적는다.
- Closed text-only LLM 사용
- closed VLM distillation은 피하지만, QA generation과 refinement에는 closed text-only LLM을 사용한다.
- video perception teacher로 쓰는 것보다는 dependency가 약하지만, data pipeline transparency에는 여전히 한계가 있다.
- Video grounding 반복 오류
- model이 같은 frame에 긴 point line을 만들거나, 모든 frame에 같은 point를 반복하는 degenerate output이 관찰된다.
- high-frequency object나 long video에서 특히 문제가 된다.
- Image grounding보다 낮은 video grounding 안정성
- appendix는 tested model 중 video counting/pointing metric이 40%를 넘지 못한다고 적는다.
- video grounding은 re-identification, occlusion, low resolution, long duration이라는 어려움이 겹친다.
- Long video grounding의 제한
- grounding training은 주로 3분 이하 비디오에 제한되어 있다.
- 더 긴 비디오에서는 fps를 낮춰야 하고, 2 fps annotation과 selected frame alignment가 어긋날 수 있다.
- Point tracking jitter
- generated track이 target object 안에서 point 위치를 일관되게 유지하지 못할 수 있다.
- bounding box나 segmentation mask에서 point를 만드는 data generation pipeline 개선이 필요하다.
7. My Take
7-1. Why this matters for my work
Molmo2는 video VLM을 연구할 때 기준점을 두 개로 나누게 한다.
첫 번째 기준은 model quality다. short video QA, captioning, counting, image QA, multi-image QA에서 어느 정도 성능이 나오는가를 본다.
두 번째 기준은 evidence interface다. model이 답변을 왜 그렇게 했는지 pixel/time coordinate로 남기는가를 본다.
실무에서는 두 번째가 더 중요해질 수 있다. 특히 robotics, safety monitoring, sports analysis, factory inspection, autonomous driving log analysis처럼 사람이 결과를 검증해야 하는 분야에서는 text answer만으로는 부족하다.
Molmo2의 좋은 점은 grounding을 별도 detection pipeline의 후처리로만 두지 않고, VLM이 직접 생성해야 하는 language output의 일부로 만든다는 점이다.
7-2. Reuse potential
이 논문에서 재사용할 수 있는 포인트는 많다.
- Video QA dataset 설계
- 단순 QA pair보다 dense caption, subtitle-aware QA, long-form QA, pointing, tracking을 같이 설계하는 방식.
- Evidence-based counting
- counting을 direct number prediction으로 보지 않고, point generation 후 count로 연결하는 방식.
- Multi-task loss balancing
- long caption과 short QA가 같은 loss에서 충돌하지 않도록 token weighting을 적용하는 방식.
- Packed multimodal training
- packed sequence에서 visual token attention과 message boundary를 같이 관리하는 방식.
- Video benchmark 설계
- text answer accuracy뿐 아니라 F1, HOTA, point correctness, human preference를 같이 보는 방식.
한국어 데이터로 확장한다면 VideoKR 같은 knowledge/reasoning-intensive video benchmark와 결합할 수 있다. 예를 들어 한국 뉴스, 강의, 산업 영상, CCTV style video에서 답변과 timestamp/point evidence를 같이 요구하는 benchmark를 만들 수 있다.
7-3. Follow-up papers
- Molmo and PixMo: Open Weights and Open Data for State-of-the-Art Multimodal Models
- VideoMolmo: Spatio-Temporal Grounding for Open-Vocabulary Video Understanding
- Qwen3-VL Technical Report
- PerceptionLM: Open-Access Data and Models for Detailed Visual Understanding
- SAM 2: Segment Anything in Images and Videos
- VideoKR: Towards Knowledge- and Reasoning-Intensive Video Understanding
8. Summary
- Molmo2는 open weights만이 아니라 open data, code, training recipe까지 포함해 video VLM을 재현 가능한 연구 대상으로 만들려는 논문이다.
- 핵심 task는 video QA만이 아니라 pointing, counting, tracking을 포함한 video grounding이다.
- 7개 video dataset과 2개 multi-image dataset을 새로 만들고, closed VLM distillation 없이 데이터 pipeline을 설계했다.
- training은 image pre-training, joint multimodal SFT, long-context SFT의 3-stage이며, token weighting, packing, message tree가 중요한 engineering detail이다.
- 가장 중요한 한계는 closed SigLIP 2 vision encoder 의존, closed text-only LLM 사용, long-video grounding과 tracking consistency 문제다.
댓글남기기