alt.freeweights.llama / mmE5-mllama-11b-instruct
From: intfloat <huggingface.co/intfloat>Newsgroups: alt.freeweights.llamaSubject:

mmE5-mllama-11b-instruct

Date: 2026-11-15Commit: cbb328bSigned: 2DC28CC7B26A283B ✓

Zero shot image classification model with 10.6B parameters. Safetensors weights, 21.3 GB in all. Published by intfloat under MIT.

10.6B params21.3GBmmE5-mllama-11b-instructsafetensorspermissive
FactsParams10.6BSize21.3 GBFormatssafetensorsTaskzero shot image classificationLicenseMITFrom sourcepermissive
$ fw get intfloat/mmE5-mllama-11b-instruct
# manifest sha256 2ecd20cdab48… · 21.3 GB · 19 files
$ fw verify ./mmE5-mllama-11b-instruct intfloat/mmE5-mllama-11b-instruct
From sourceHosted (signed)intfloat/mmE5-mllama-11b-instructLast check: 2026-11-15 04:15 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Works with

Runs with

Ranked by fit to this model (safetensors), then by GitHub stars.

Overview

Size
21.3 GB
Weights
21.3 GB (safetensors)
Parameters
10.6B
Formats
safetensors
Task
zero shot image classification
License
MIT (permissive)
Files
19, each with a sha256
Publisher
intfloat
Added
2026-11-15
Section
alt.freeweights.llama
Lineage

Original release from the publisher.

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 04:15 UTCpassed

Model card

From the publisher at commit cbb328b. Shown as plain text with links; images open at the publisher.

mmE5-mllama-11b-instruct#

mmE5: Improving Multimodal Multilingual Embeddings via High-quality Synthetic Data. Haonan Chen, Liang Wang, Nan Yang, Yutao Zhu, Ziliang Zhao, Furu Wei, Zhicheng Dou, arXiv 2025

This model is trained based on Llama-3.2-11B-Vision.

Github

Train/Eval Data#

Experimental Results#

Our model achieves SOTA performance on MMEB benchmark. Image: abs

Usage#

Transformers#

Below is an example we adapted from VLM2Vec.

import torch
import requests

from PIL import Image
from transformers import MllamaForConditionalGeneration, AutoProcessor

# Pooling and Normalization
def last_pooling(last_hidden_state, attention_mask, normalize=True):
    sequence_lengths = attention_mask.sum(dim=1) - 1
    batch_size = last_hidden_state.shape[0]
    reps = last_hidden_state[torch.arange(batch_size, device=last_hidden_state.device), sequence_lengths]
    if normalize:
        reps = torch.nn.functional.normalize(reps, p=2, dim=-1)
    return reps

def compute_similarity(q_reps, p_reps):
    return torch.matmul(q_reps, p_reps.transpose(0, 1))

model_name = "intfloat/mmE5-mllama-11b-instruct"

# Load Processor and Model
processor = AutoProcessor.from_pretrained(model_name)
model = MllamaForConditionalGeneration.from_pretrained(
    model_name, torch_dtype=torch.bfloat16
).to("cuda")
model.eval()

# Image + Text -> Text
image = Image.open(requests.get('https://github.com/haon-chen/mmE5/blob/main/figures/example.jpg?raw=true', stream=True).raw)
inputs = processor(text='<|image|><|begin_of_text|>Represent the given image with the following question: What is in the image\n', images=[image], return_tensors="pt").to("cuda")
qry_output = last_pooling(model(**inputs, return_dict=True, output_hidden_states=True).hidden_states[-1], inputs['attention_mask'])

string = 'A cat and a dog'
text_inputs = processor(text=string, return_tensors="pt").to("cuda")
tgt_output = last_pooling(model(**text_inputs, return_dict=True, output_hidden_states=True).hidden_states[-1], text_inputs['attention_mask'])
print(string, '=', compute_similarity(qry_output, tgt_output))
## A cat and a dog = tensor([[0.4219]], device='cuda:0', dtype=torch.bfloat16)

string = 'A cat and a tiger'
text_inputs = processor(text=string, return_tensors="pt").to("cuda")
tgt_output = last_pooling(model(**text_inputs, return_dict=True, output_hidden_states=True).hidden_states[-1], text_inputs['attention_mask'])
print(string, '=', compute_similarity(qry_output, tgt_output))
## A cat and a tiger = tensor([[0.3184]], device='cuda:0', dtype=torch.bfloat16)

# Text -> Image
inputs = processor(text='Find me an everyday image that matches the given caption: A cat and a dog.\n', return_tensors="pt").to("cuda")
qry_output = last_pooling(model(**inputs, return_dict=True, output_hidden_states=True).hidden_states[-1], inputs['attention_mask'])

string = '<|image|><|begin_of_text|>Represent the given image.\n'
tgt_inputs = processor(text=string, images=[image], return_tensors="pt").to("cuda")
tgt_output = last_pooling(model(**tgt_inputs, return_dict=True, output_hidden_states=True).hidden_states[-1], tgt_inputs['attention_mask'])
print(string, '=', compute_similarity(qry_output, tgt_output))
## <|image|><|begin_of_text|>Represent the given image. = tensor([[0.4414]], device='cuda:0', dtype=torch.bfloat16)

inputs = processor(text='Find me an everyday image that matches the given caption: A cat and a tiger.\n', return_tensors="pt").to("cuda")
qry_output = last_pooling(model(**inputs, return_dict=True, output_hidden_states=True).hidden_states[-1], inputs['attention_mask'])
string = '<|image|><|begin_of_text|>Represent the given image.\n'
tgt_inputs = processor(text=string, images=[image], return_tensors="pt").to("cuda")
tgt_output = last_pooling(model(**tgt_inputs, return_dict=True, output_hidden_states=True).hidden_states[-1], tgt_inputs['attention_mask'])
print(string, '=', compute_similarity(qry_output, tgt_output))
## <|image|><|begin_of_text|>Represent the given image. = tensor([[0.3730]], device='cuda:0', dtype=torch.bfloat16)
Sentence Transformers#

You can also use Sentence Transformers, where the majority of the pre- and post-processing has been abstracted.

from sentence_transformers import SentenceTransformer
import requests

# Load the model
model = SentenceTransformer("intfloat/mmE5-mllama-11b-instruct", trust_remote_code=True)

# Download an example image of a cat and a dog
dog_cat_image_bytes = requests.get('https://github.com/haon-chen/mmE5/blob/main/figures/example.jpg?raw=true', stream=True).raw.read()
with open("cat_dog_example.jpg", "wb") as f:
    f.write(dog_cat_image_bytes)

# Image + Text -> Text
image_embeddings = model.encode([{
    "image": "cat_dog_example.jpg",
    "text": "Represent the given image with the following question: What is in the image",
}])
text_embeddings = model.encode([
    {"text": "A cat and a dog"},
    {"text": "A cat and a tiger"},
])

similarity = model.similarity(image_embeddings, text_embeddings)
print(similarity)
# tensor([[0.3967, 0.3090]])
# ✅ The first text is most similar to the image

# Text -> Image
image_embeddings = model.encode([
    {"image": dog_cat_image_bytes, "text": "Represent the given image."},
])
text_embeddings = model.encode([
    {"text": "Find me an everyday image that matches the given caption: A cat and a dog."},
    {"text": "Find me an everyday image that matches the given caption: A cat and a tiger."},
])

similarity = model.similarity(image_embeddings, text_embeddings)
print(similarity)
# tensor([[0.4250, 0.3896]])
# ✅ The first text is most similar to the image

Citation#

@article{chen2025mmE5,
  title={mmE5: Improving Multimodal Multilingual Embeddings via High-quality Synthetic Data},
  author={Chen, Haonan and Wang, Liang and Yang, Nan and Zhu, Yutao and Zhao, Ziliang and Wei, Furu and Dou, Zhicheng},
  journal={arXiv preprint arXiv:2502.08468},
  year={2025}
}

Files

19 files · 21.3 GBWeights 21.3 GB (safetensors). Sizes and sha256 from the signed manifest.
Hide all 19 files with their sha256
FileSizesha256
.gitattributes1.57 KB34448b82c17d60fec9b65b1f093c115ddbaadc04beb1b0140b6bfed2e012a930
1_Pooling/config.json315 B7fb6ce087cc360508de8475666302f305bb2df502c3775f0be8a62c6d6a2384b
README.md6.69 KBd7faf90c7827990e3233d45aebaaa7a600206028b52e02144e197893317e348d
config.json5.19 KB9cf62afc22092ad8695ef443eaa371d3d241d04cff49288e98cd1333a53c2c6f
custom_st.py3.36 KB59a60fcf1144bc0f95195d3d757e16c89e2c4fb5d8f5de312c1aa2bebff0d321
generation_config.json147 B2f9d71747f07e201d0c5ae2d1ce92447eba3de4593e47acbafd5b16676085259
lora/adapter_config.json876 Bc065539d56e6891d1f9eeb2080fec65f4dbc65899eeaed6b512e374c51678e7e
lora/adapter_model.safetensors37.1 MB0a801a4441021b1fdaae0388a1fd6b2dae6869e31b9bc7747e9ff4c9bd5e2f55
model-00001-of-00005.safetensors4.99 GB1c5dc16cc22ebfadf2b173dfe3054921c162844fe8e3db506780a8c545f206d7
model-00002-of-00005.safetensors4.92 GBfc2fb3bedbb9774f3548e7a2ea5548e0f490c28fa659e35e58b16f2b65558a45
model-00003-of-00005.safetensors4.92 GBf872524f9888dc20311ae108a2b9e5a956244309a9ed25106507bd49a027867e
model-00004-of-00005.safetensors5.00 GBefdc19e60cd509843df28ce889e298fe9f387545855c3d8c68e75ec770f9a420
model-00005-of-00005.safetensors1.47 GBae1bc15fdeff13ef2a2b6138181c9ff40e1d71355ecad24db8ca898a47c4ad4b
model.safetensors.index.json89.4 KB951fcedc467dc9c55d7a9902b3fd80f9280b65f9cd00ed7ea9822512ebe508c3
modules.json340 Bf73a03451cfd567d40477b8a6062cfe3a132beb416971bbe4be9c6503c8856d9
preprocessor_config.json477 B489c1f8b3a09444fcff38e72d3b6f580d4725af11130af9123c405f1332e3e83
special_tokens_map.json459 B32f404d626cf7b1b6eea36c241ae7cbd6ec29c777a8701ea48c0fe9ebb94c9b1
tokenizer.json17.2 MB9816d43bd5347d64bccc66b7710947fb18e9818cc660215b1462061d4a44e449
tokenizer_config.json50.7 KBdacf545cf678c5c29b652160b59f1df968efc8520175d4cde0ec792a439ae78a
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
cbb328b9bf pinned now2026-11-15 04:15 UTC19 files · 21.3 GB

Use it

$ fw get intfloat/mmE5-mllama-11b-instruct
# manifest sha256 2ecd20cdab48… · 21.3 GB · 19 files
$ fw verify ./mmE5-mllama-11b-instruct intfloat/mmE5-mllama-11b-instruct
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/intfloat/mmE5-mllama-11b-instruct.json --dir ./mmE5-mllama-11b-instruct $ python3 fw.py verify ./mmE5-mllama-11b-instruct ./intfloat__mmE5-mllama-11b-instruct.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download intfloat/mmE5-mllama-11b-instruct --revision cbb328b9bf9ff5362c852c3166931903226d46f1 --local-dir ./mmE5-mllama-11b-instruct

License

Name
MIT License
Id
MIT
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
d7faf90c7827990e3233d45aebaaa7a600206028b52e02144e197893317e348d
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: intfloat <huggingface.co/intfloat>Newsgroups: alt.freeweights.llamaSubject: mmE5-mllama-11b-instructDate: 2026-11-15Commit: cbb328bSigned: 2DC28CC7B26A283B ✓
Upstream
intfloat/mmE5-mllama-11b-instruct
Pinned commit
cbb328b9bf9ff5362c852c3166931903226d46f1
Manifest
mmE5-mllama-11b-instruct.json · .minisig
Manifest sha256
2ecd20cdab489d2d4b778f480c2e7c836020baaa7bf1afb147f08d5661534d4c
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 04:15 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/intfloat/mmE5-mllama-11b-instruct.json $ curl -O https://freeweights.allternit.com/manifests/intfloat/mmE5-mllama-11b-instruct.json.minisig $ minisign -Vm mmE5-mllama-11b-instruct.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

No related models in this catalog.Nothing here lists this model as its parent, and it names no parent.
Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download intfloat/mmE5-mllama-11b-instruct
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. mmE5-mllama-11b-instruct.json. Provenance. Takedown history: none.
From: BAAI <huggingface.co/BAAI>Subject: Bunny-Llama-3-8B-V
From: BAAI <huggingface.co/BAAI>Subject: Bunny-Llama-3-8B-V-gguf
From: BAAI <huggingface.co/BAAI>Subject: Bunny-v1_1-Llama-3-8B-V
From: unsloth <huggingface.co/unsloth>Subject: codellama-7b
From: unsloth <huggingface.co/unsloth>Subject: codellama-7b-bnb-4bit
From: BAAI <huggingface.co/BAAI>Subject: Infinity-Instruct-3M-0613-Llama3-70B