Marlin-2B
by NemoStation
2B video VLM with second-precise temporal captioning and grounding
NemoStation/Marlin-2Bmixpeek://image_extractor@v1/nemostation_marlin_2b_v1Overview
Marlin-2B is a 2-billion parameter video vision-language model from NemoStation that specializes in dense video captioning with second-level timestamp precision and temporal grounding. It tops the CaReBench leaderboard at the 2B scale and competes with models 3-4x its size on temporal understanding tasks. Built on Qwen3.5-2B, it processes video at 2 FPS with up to 240 frames, making it practical for production video indexing.
Architecture
Video VLM built on Qwen3.5-2B with a temporal-aware visual encoder. Processes video at 2 FPS sampling rate with a 240-frame cap (covering up to 2 minutes of video). Generates timestamped captions with [start:end] markers and supports temporal grounding queries that return specific time ranges.
Mixpeek SDK Integration
// No extractor parameter takes a Hugging Face model id (checked against
// GET /v1/discovery/extractors, which returns 13), so Marlin-2B runs
// on your side and the output is upserted through POST
// /v1/namespaces/{namespace_id}/documents/upsert. On Enterprise the other
// path is to upload the weights instead: POST /v1/namespaces/{id}/models
// accepts the huggingface format and a custom plugin loads them.
const res = await fetch(
"https://api.mixpeek.com/v1/namespaces/ns_your_namespace/documents/upsert",
{
method: "POST",
headers: {
Authorization: "Bearer API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
collection_id: "col_your_collection",
documents: [
{
document_id: "asset-00412",
// The model produces text, so it lands in payload. Give the
// collection a text vector index and embed that text to make it
// searchable rather than only filterable.
payload: { extracted_text: modelOutput, source_key: "archive/2026/asset-00412" },
vectors: { "multimodal-embedding": embeddingOfModelOutput },
},
],
}),
},
);
// Managed alternative, if this exact model is not the requirement:
// universal_extractor@v1 runs google/gemini-embedding-2
// (3072-d) over a bucket, with no inference of your own.Capabilities
- Dense video captioning with second-precise timestamps
- Temporal grounding: find specific moments from natural language queries
- Video summarization with temporal structure
- Scene transition detection and labeling
- Multi-event timeline generation from continuous video
Use Cases on Mixpeek
Benchmarks
| Dataset | Metric | Score | Source |
|---|---|---|---|
| CaReBench | Score | #1 at 2B scale | Competitive with 7B+ models |
| TimeLens-Bench | Temporal Acc | Matches Gemini-2.0-Flash | At 1/10th the parameter count |
Performance
Common Pipeline Companions
Explore on Mixpeek
Compare alternatives in this category
Hand-picked tools & platforms compared
Deep-dive technical guide
See how Mixpeek runs models as extractors
Store & search embeddings at scale
Usage-based pricing for pipelines
Compare models, APIs & infrastructure
Specification
Build a pipeline with Marlin-2B
Add this model to a processing pipeline alongside other extractors. Combine with retrieval stages for end-to-end search.
Run it on your own data, free