Model reference · open weights
MoEViE-H14-448 is an open-weight embedding model from Meta. MoEViE-H14-448 (BF16) weighs 17.5 GB; the smallest configuration that runs it is RTX 4090 24 GB.
Summary of the facebook/MoEViE-H14-448 model card, 2026-10-01
What it is
| Released by | Meta |
|---|---|
| Released | 2026-08-12 |
| VRAM | 17.5 GB for the weights |
What it runs on
| Card | Runs | Memory |
|---|---|---|
| RTX 3060 12 GB … RTX 4060 Ti 16 GB | does not fit | |
| RTX 3090 24 GB | fits | 23.4 GB |
| RTX 4090 24 GB | fits | 23.4 GB |
| RTX 5090 32 GB | fits | 31.0 GB |
| L40S 48 GB | fits | 44.0 GB |
| A100 80 GB | fits | 78.2 GB |
| H100 80 GB | fits | 78.1 GB |
| RTX PRO 6000 Blackwell 96 GB | fits | 93.8 GB |
| DGX Spark (GB10) 128 GB unified | fits | 107 GB |
| H200 141 GB | fits | 138 GB |
| B200 180 GB | fits | 176 GB |
From the model card
MoE-ViE is a family of Mixture-of-Experts vision encoders for image and video understanding, trained with a contrastive vision-language recipe. Each MoE block keeps a shared always-on expert alongside a routed pool, so only a small fraction of the weights is used for any given token.
Model Developer: Meta
This checkpoint: MoEViE-H14-448 — H/14 at 448px.
MoE-ViE comes in three sizes. Only active experts run per token, so the activated
parameter count is far below the total.
| Scale | Width | Depth | Experts (active/total) | Total params | Activated params | Resolution |
|---|---|---|---|---|---|---|
| B/16 | 768 | 12 | 4 / 32 | 0.5B | 0.1B | 224px |
| L/16 | 1024 | 24 | 4 / 32 | 1.7B | 0.3B | 384px |
| H/14 | 1280 | 32 | 8 / 32 | 3.5B | 1.1B | 448px |
Every MoE block has 1 shared expert that is always active plus a routed pool; the
active/total column counts the shared expert. Routing is per-token top-k on a sigmoid gate.
Zero-shot results. Top-1 accuracy (%) for classification, recall@1 (%) for retrieval.
| Model | Checkpoint | IN-1k | ObjectNet | COCO-T2I | Kinetics-400 | MSR-VTT-T2V |
|---|---|---|---|---|---|---|
| B/16 224px | MoEViE-B16-224 | 79.3 | 74.4 | 52.1 | 68.3 | 47.9 |
| L/16 384px | MoEViE-L16-384 | 83.6 | 85.0 | 57.2 | 74.5 | 50.5 |
| H/14 448px | MoEViE-H14-448 | 85.1 | 87.0 | 56.8 | 76.9 | 51.6 |
git clone https://github.com/facebookresearch/moe_vie
cd moe_vie
pip install -r requirements.txt
Requires a CUDA GPU — the Mixture-of-Experts kernels are compiled with Triton at runtime.
import torch
from PIL import Image
from open_clip import create_model_and_transforms, get_tokenizer, image_to_device
MEAN, STD = (0.5, 0.5, 0.5), (0.5, 0.5, 0.5)
model, _, preprocess = create_model_and_transforms(
"MoEViE-H14-448",
pretrained=True, # downloads from the Hub
force_preprocess_cfg=dict(
patch_size=14, size_range=(448, 448), center_crop=True, window_size=1
),
image_mean=MEAN, image_std=STD,
)
model = model.cuda().eval()
tokenizer = get_tokenizer("MoEViE-H14-448")
labels = ["a diagram", "a dog", "a cat"]
packed, _ = preprocess.collate_fn([(preprocess(Image.open("cat.png").convert("RGB")), 0)])
packed = image_to_device(packed, "cuda", torch.float32, mean=MEAN, std=STD)
text = tokenizer(labels).cuda()
with torch.no_grad(), torch.autocast("cuda"):
image_features = model.encode_image(packed, normalize=True)
text_features = model.encode_text(text, normalize=True)
probs = (model.logit_scale.exp() * image_features @ text_features.T).softmax(dim=-1)
print("Label probs:", probs)
See demo/demo.py and the repository README for the
zero-shot evaluation suite.
Released under CC BY-NC 4.0 — non-commercial research use.
If you find this work useful, please cite:
@article{zhang2026moevie,
title={MoE-ViE: Mixture of Experts Vision Encoder for Efficient Image and Video Understanding},
author={Bonan Zhang and Shiyu Dong and Quan Hung Tran and Katharina Gschwind and Shuqi Yang and Sijia Chen and Adel Ahmadyan and Seungwhan Moon and Lu Zhang and Ahmed Kirmani and Babak Damavandi and Anuj Kumar},
journal={arXiv preprint arXiv:2608.17402},
year={2026}
}
Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.
How it works