whatisgithub

What is jepa?

keon/jepa — explained in plain English

Analysis updated 2026-05-18

97PythonAudience · researcherComplexity · 4/5LicenseSetup · moderate

In one sentence

Minimal, single-file PyTorch reimplementations of five JEPA self-supervised learning methods, each paired with a tutorial explaining how the code maps to the research.

Mindmap

mindmap
  root((jepa))
    What it does
      Minimal JEPA reimplementations
      Self-supervised learning
      Paired tutorials
    Tech stack
      Python
      PyTorch
    Implementations
      I-JEPA images
      V-JEPA video
      V-JEPA 2 action-conditioned
      C-JEPA object tracking
      LeWorldModel
    Use cases
      Research education
      Paper to code mapping
      Small-scale experimentation

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

What do people build with it?

USE CASE 1

Study how JEPA-style self-supervised learning works by reading short, single-file implementations.

USE CASE 2

Follow paired tutorials to connect research paper concepts to working PyTorch code.

USE CASE 3

Experiment with I-JEPA, V-JEPA, or LeWorldModel on small datasets like CIFAR-10 or Moving MNIST.

What is it built with?

PythonPyTorch

How does it compare?

keon/jepahuey1in/windsurfxkrishnaik06/gen-ai-with-deep-seek-r1
Stars979797
LanguagePythonPythonPython
Last pushed2025-02-05
MaintenanceStale
Setup difficultymoderatemoderatemoderate
Complexity4/53/52/5
Audienceresearcherdeveloperdeveloper

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

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires Python 3.10+, PyTorch, and pinned dependency versions, datasets auto-download on first run.

Permissive MIT license, use freely for any purpose, including commercial use.

So what is it?

This repository contains minimal, educational reimplementations of a family of AI research methods called JEPA, short for Joint-Embedding Predictive Architectures. JEPA is an approach to self-supervised learning, which means training AI models to understand the world from raw data without needing human labeled examples. The general idea is that the model learns by predicting parts of its input it has not seen, rather than reconstructing pixels directly, and it does this prediction in a compressed embedding space, a mathematical representation of meaning, instead of in raw pixel space. The repo includes five implementations, each in a single short Python file: I-JEPA for learning from still images, V-JEPA for learning from video, V-JEPA 2 which adds action-conditioned prediction, meaning predicting what happens after taking an action, C-JEPA which works with distinct objects tracked across video frames, and LeWorldModel, an end-to-end world model trained directly from pixels. Each implementation is deliberately small and self-contained, written to be read and understood rather than to achieve top performance. Every algorithm pairs with a written tutorial explaining how it works and how it maps to the code. The implementations use simplified datasets, such as CIFAR-10 images and Moving MNIST videos, and small model sizes, not the large compute resources the original research papers used. This is aimed at researchers, students, and practitioners who want to understand these AI techniques by reading minimal working code rather than the full research implementations. The README explicitly notes where each simplified version differs from the original paper it is based on. The project is released under the MIT license.

Copy-paste prompts

Prompt 1
Walk me through ijepa.py line by line and explain how it predicts masked image patch embeddings.
Prompt 2
What are the key differences between V-JEPA and V-JEPA 2 in this repository's implementations?
Prompt 3
Run cjepa.py locally and explain what the FAITHFULNESS.md file says about its simplifications.
Prompt 4
Explain the SIGReg loss term used in LeWorldModel and why it prevents representation collapse.

Frequently asked questions

What is jepa?

Minimal, single-file PyTorch reimplementations of five JEPA self-supervised learning methods, each paired with a tutorial explaining how the code maps to the research.

What language is jepa written in?

Mainly Python. The stack also includes Python, PyTorch.

What license does jepa use?

Permissive MIT license, use freely for any purpose, including commercial use.

How hard is jepa to set up?

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

Who is jepa for?

Mainly researcher.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.