Vibeleaderboard
Index / tool
Visit github.com
Category
AI Tools
Rank
No. 1128Tools index
Pricing
Open Source
Type
TOOL
Builder
bytedance
GitHub
548 stars
Date

About

ByteDance family of large-scale video-language models for high-quality video description and general video understanding.

What it does

Tarsier samples frames from a video, encodes each frame with a vision model, projects those features into a language model, and generates conversational answers. It accepts common video, image, and GIF formats and supports detailed descriptions, captions, and questions about visual content.

Why it's ranked here

The research package combines model weights, inference code, evaluation tooling, a public benchmark, and interactive demos. Its reported results cover captioning, question answering, grounding, and hallucination tests. The case is tempered by acknowledged instruction-following weakness and visible setup friction in the supplied code.

What's good

The architecture is easy to reason about: independently encoded frames feed a language model through a projection layer. Uniform sampling includes the first and last frames. The repository also supports resumable, chunked batch inference and maps several captioning and question-answering benchmarks to appropriate evaluation methods.

Tradeoffs

The released Tarsier2 model received post-training only on video caption tasks, and its authors warn that it can struggle to follow instructions. Multiple-choice evaluation requires careful prompt formatting. The dependency list also omits several packages imported directly by the supplied source, increasing setup work.

How to use it well

Use Tarsier for local video-captioning research, visual question-answering experiments, benchmark runs, and model comparisons. Start with the interactive demo, then move repeatable workloads into chunked batch inference. Treat prompts as part of the experiment. It does not replace a dependable general instruction-following assistant.

Technical notes+

tasks/demo_cli.py provides an argparse-driven conversational CLI, while tasks/inference_caption.py implements resumable JSONL batch inference with chunk selection. dataset/utils.py recognizes common image, GIF, and video extensions and samples frames through Pillow or Decord. models/modeling_tarsier.py defines the vision-language configuration, multimodal projectors, and conditional-generation model on PyTorch and Transformers. evaluation/evaluate.py dispatches captioning and question-answering datasets to CIDEr, accuracy, GPT-based, DREAM, and Video-MME metrics. tasks/demo_gradio.py contains an apparent syntax error at Chat(model, processor, device, debug)c. requirements.txt pins many dependencies but omits directly imported packages including torch, einops, PyYAML, pandas, and tqdm.

Observed

License
Apache License 2.0 headers appear throughout the supplied source.
Primary language
Python
Install surface
Pinned Python dependencies are listed in requirements.txt.
Interfaces
Python library code, command-line workflows, and a Gradio web interface.
Accepted media
JPEG, PNG, TIFF, GIF, MP4, AVI, WebM, MOV, MKV, and WMV inputs.
Model distribution
Pretrained model weights are linked through Hugging Face.

Read from README.md, requirements.txt, tasks/utils.py, tools/color.py, models/utils.py, dataset/utils.py, tools/gpt_api.py, tasks/demo_cli.py, tools/rw_utils.py, tasks/demo_gradio.py, tools/conversation.py, tools/ptbtokenizer.py, evaluation/evaluate.py, models/modeling_tarsier.py, tasks/inference_caption.py.

What it can do

  • Generate detailed video descriptions

    Video fileNatural language description of video content

  • Analyze video content and context

    Video fileStructured analysis of video elements, scenes, and activities

  • Answer questions about video content

    Video file and text questionsText answers based on video analysis

  • Extract key objects and entities from video

    Video fileList of identified objects, people, and entities

  • Generate video summaries

    Video fileCondensed text summary of video content

  • Identify actions and events in video

    Video fileTimeline or list of detected actions and events

Tags

videomultimodalllmbytedanceresearch

Tech Stack

Python

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.