gitwtfhub

wtf is vjepa2-mlx?

fabio-rovai/vjepa2-mlx — explained in plain English

Analysis updated 2026-05-18

1PythonAudience · researcherComplexity · 3/5LicenseSetup · moderate

TL;DR

A port of Meta's V-JEPA 2 video AI model to run natively on Apple Silicon Macs without needing PyTorch installed.

Mindmap

mindmap
  root((vjepa2-mlx))
    What it does
      Video feature extraction
      Runs on Apple GPU
    Tech stack
      MLX
      Python
      Apple Silicon
    Verification
      Matches PyTorch output
      Cosine similarity check
    Use cases
      Offline video AI
      No PyTorch needed
    Audience
      ML researchers
      Mac developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Extract feature vectors from video clips on a Mac's GPU without installing PyTorch.

REASON 2

Verify that an MLX ported AI model produces the same output as the original PyTorch version.

REASON 3

Build a video understanding tool that runs natively and efficiently on Apple Silicon hardware.

REASON 4

Convert one of Meta's official V-JEPA 2 checkpoints into offline MLX format weights.

What's in the stack?

PythonMLXPyTorchApple Silicon

How it stacks up

fabio-rovai/vjepa2-mlx0xustaz/streamgatea-bissell/unleash-lite
Stars111
LanguagePythonPythonPython
Setup difficultymoderatehardhard
Complexity3/54/54/5
Audienceresearcherdeveloperresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 30min

Requires an Apple Silicon Mac, model weights are downloaded automatically from Meta's Hugging Face repos on first use.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice, downloaded model weights follow Meta's separate license.

Wtf does this do

This project takes Meta's V-JEPA 2, an AI model that turns video clips into a compact set of numbers describing what is happening in them, and rewrites it to run natively on Apple's MLX framework instead of the usual PyTorch framework. MLX is built to run efficiently on the graphics chip inside Apple Silicon Macs, so this port lets an M-series Mac process video and extract these features without needing PyTorch installed at all. At the time this was written, no version of V-JEPA 2 built for MLX existed anywhere, so every available copy of the model required PyTorch. This repository loads Meta's official model weights directly and reproduces the same math inside MLX. The author did not just assume the port worked, they wrote a separate script that runs the same video clip through both the original PyTorch version and this MLX version and compares the output numbers directly. On the tested checkpoint, the two outputs matched almost perfectly, differing only by tiny rounding level amounts you would expect from running the same calculation on different hardware. Using it involves installing a handful of Python packages, then loading one of Meta's official model sizes by name, which downloads its weights automatically. You then pass in a video clip as a stack of frames and get back either detailed per patch features or one averaged summary vector for the whole clip. On an Apple M-series chip, processing a short clip through the largest tested size takes about a fifth of a second. This project only covers the part of V-JEPA 2 that turns video into these feature numbers. It does not include the additional pieces Meta's original project uses for tasks like classification. The code for this port is released under the MIT license, though the downloaded model weights themselves follow Meta's own separate license terms.

Yoink these prompts

Prompt 1
Help me install vjepa2-mlx and extract features from a short video clip on my Mac.
Prompt 2
Explain how the verify.py script checks this MLX port against the original PyTorch model.
Prompt 3
Show me how to convert a V-JEPA 2 checkpoint into MLX native weights I can load offline.
Prompt 4
What is the difference between the encoder this port includes and the full V-JEPA 2 project?

Frequently asked questions

wtf is vjepa2-mlx?

A port of Meta's V-JEPA 2 video AI model to run natively on Apple Silicon Macs without needing PyTorch installed.

What language is vjepa2-mlx written in?

Mainly Python. The stack also includes Python, MLX, PyTorch.

What license does vjepa2-mlx use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice, downloaded model weights follow Meta's separate license.

How hard is vjepa2-mlx to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is vjepa2-mlx for?

Mainly researcher.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.