alt.freeweights.embed / nomic-embed-vision-v1.5
From: nomic-ai <huggingface.co/nomic-ai>Newsgroups: alt.freeweights.embedSubject:

nomic-embed-vision-v1.5

Date: 2026-11-14Commit: e3a725bSigned: 2DC28CC7B26A283B ✓

Image feature extraction model with 93M parameters. Onnx and safetensors weights, 1.34 GB in all. Published by nomic-ai under Apache-2.0.

93M params1.34GBnomic-embed-vision-v1.5onnx safetensorspermissive
FactsParams93MSize1.34 GBFormatsonnx, safetensorsTaskimage feature extractionLicenseApache-2.0From sourcepermissive
$ fw get nomic-ai/nomic-embed-vision-v1.5
# manifest sha256 3da0b23b8f04… · 1.34 GB · 12 files
$ fw verify ./nomic-embed-vision-v1.5 nomic-ai/nomic-embed-vision-v1.5
From sourceHosted (signed)nomic-ai/nomic-embed-vision-v1.5Last check: 2026-11-14 21:10 UTC

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

Works with

Overview

Size
1.34 GB
Weights
372 MB (safetensors)
Parameters
93M
Formats
onnx, safetensors
Task
image feature extraction
License
Apache-2.0 (permissive)
Files
12, each with a sha256
Publisher
nomic-ai
Added
2026-11-14
Section
alt.freeweights.embed
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-14 21:10 UTCpassed

Model card

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

nomic-embed-vision-v1.5: Expanding the Latent Space#

Quick Start#

Blog | Technical Report | AWS SageMaker | Atlas Embedding and Unstructured Data Analytics Platform

nomic-embed-vision-v1.5 is a high performing vision embedding model that shares the same embedding space as nomic-embed-text-v1.5.

All Nomic Embed Text models are now multimodal!

NameImagenet 0-shotDatacomp (Avg. 38)MTEB
nomic-embed-vision-v1.571.056.862.28
nomic-embed-vision-v170.756.762.39
OpenAI CLIP ViT B/1668.356.343.82
Jina CLIP v159.152.260.1

Hosted Inference API#

The easiest way to get started with Nomic Embed is through the Nomic Embedding API.

Generating embeddings with the nomic Python client is as easy as

from nomic import embed
import numpy as np

output = embed.image(
    images=[
        "image_path_1.jpeg",
        "image_path_2.png",
    ],
    model='nomic-embed-vision-v1.5',
)

print(output['usage'])
embeddings = np.array(output['embeddings'])
print(embeddings.shape)

For more information, see the API reference

Data Visualization#

Click the Nomic Atlas map below to visualize a 100,000 sample CC3M comparing the Vision and Text Embedding Space!

image/webp

Training Details#

We align our vision embedder to the text embedding by employing a technique similar to LiT but instead lock the text embedder!

For more details, see the Nomic Embed Vision Technical Report (soon to be released!) and corresponding blog post

Training code is released in the contrastors repository

Usage#

Remember nomic-embed-text requires prefixes and so, when using Nomic Embed in multimodal RAG scenarios (e.g. text to image retrieval), you should use the search_query: prefix.

Transformers#
import torch
import torch.nn.functional as F
from transformers import AutoTokenizer, AutoModel, AutoImageProcessor
from PIL import Image
import requests

processor = AutoImageProcessor.from_pretrained("nomic-ai/nomic-embed-vision-v1.5")
vision_model = AutoModel.from_pretrained("nomic-ai/nomic-embed-vision-v1.5", trust_remote_code=True)

url = 'http://images.cocodataset.org/val2017/000000039769.jpg'
image = Image.open(requests.get(url, stream=True).raw)

inputs = processor(image, return_tensors="pt")

img_emb = vision_model(**inputs).last_hidden_state
img_embeddings = F.normalize(img_emb[:, 0], p=2, dim=1)

Additionally, you can perform multimodal retrieval!


def mean_pooling(model_output, attention_mask):
    token_embeddings = model_output[0]
    input_mask_expanded = attention_mask.unsqueeze(-1).expand(token_embeddings.size()).float()
    return torch.sum(token_embeddings * input_mask_expanded, 1) / torch.clamp(input_mask_expanded.sum(1), min=1e-9)

sentences = ['search_query: What are cute animals to cuddle with?', 'search_query: What do cats look like?']

tokenizer = AutoTokenizer.from_pretrained('nomic-ai/nomic-embed-text-v1.5')
text_model = AutoModel.from_pretrained('nomic-ai/nomic-embed-text-v1.5', trust_remote_code=True)
text_model.eval()

encoded_input = tokenizer(sentences, padding=True, truncation=True, return_tensors='pt')

with torch.no_grad():
    model_output = text_model(**encoded_input)

text_embeddings = mean_pooling(model_output, encoded_input['attention_mask'])
text_embeddings = F.layer_norm(text_embeddings, normalized_shape=(text_embeddings.shape[1],))
text_embeddings = F.normalize(text_embeddings, p=2, dim=1)

print(torch.matmul(img_embeddings, text_embeddings.T))

Join the Nomic Community#

Files

12 files · 1.34 GBWeights 372 MB (safetensors). Sizes and sha256 from the signed manifest.
Hide all 12 files with their sha256
FileSizesha256
.gitattributes1.52 KB11ad7efa24975ee4b0c3c3a38ed18737f0658a5f75a0a96787b576a78a023361
README.md4.82 KBd7e8e84e8e3372a2643dd478550a1e17f71855af4fd7092bdb32d729fabf7be8
config.json2.14 KB8ba755dcfdd6f6ddd05c81b1b3c812818f48e3828c420e424ae667e8c32ec1fe
model.safetensors372 MB4616912a7cc91c06115ce7ccb9807095516b3d63a560ebf88057f626fb3535d6
onnx/model.onnx374 MB53b4287e459193019bed6e094014344d4f3c892bd22b7159bf398d71eb82d750
onnx/model_bnb4.onnx56.2 MBa89db8df53e6365f844c778cc8b183e99d82d34dd55e5e0a64f72bb642e853e5
onnx/model_fp16.onnx187 MB6adad2d74c1da0452d1f90a1427679735bae0a1ee7e17b57a0bf70d8a795ca3d
onnx/model_int8.onnx96.7 MBba9107df6e412828dae8c675096209aa39f6536de8ec8d9a872665b54dc750c3
onnx/model_q4.onnx62.0 MB32b16e7949dfdb5c818a7c9dab44d4c773a9a2ec723bd129adb322e717c6cb9e
onnx/model_quantized.onnx96.7 MBba9107df6e412828dae8c675096209aa39f6536de8ec8d9a872665b54dc750c3
onnx/model_uint8.onnx96.7 MB524db1d9227fd7d0759a63d67d7428e905a3062fce2db080adb7d28acf300c8b
preprocessor_config.json791 B77436fccc0108364dd52185181d65cace7e830113e3b81b2bad8009a47f59b34
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
e3a725bce7 pinned now manifest updated, same commit2026-11-14 21:10 UTC12 files · 1.34 GB
e3a725bce72026-11-14 21:10 UTC12 files · 1.34 GB

Use it

$ fw get nomic-ai/nomic-embed-vision-v1.5
# manifest sha256 3da0b23b8f04… · 1.34 GB · 12 files
$ fw verify ./nomic-embed-vision-v1.5 nomic-ai/nomic-embed-vision-v1.5
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/nomic-ai/nomic-embed-vision-v1.5.json --dir ./nomic-embed-vision-v1.5 $ python3 fw.py verify ./nomic-embed-vision-v1.5 ./nomic-ai__nomic-embed-vision-v1.5.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download nomic-ai/nomic-embed-vision-v1.5 --revision e3a725bce72db07ca4adb1d83da08903f3ee02f8 --local-dir ./nomic-embed-vision-v1.5

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-14
Text in
README.md
Text sha256
d7e8e84e8e3372a2643dd478550a1e17f71855af4fd7092bdb32d729fabf7be8
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: nomic-ai <huggingface.co/nomic-ai>Newsgroups: alt.freeweights.embedSubject: nomic-embed-vision-v1.5Date: 2026-11-14Commit: e3a725bSigned: 2DC28CC7B26A283B ✓
Upstream
nomic-ai/nomic-embed-vision-v1.5
Pinned commit
e3a725bce72db07ca4adb1d83da08903f3ee02f8
Manifest
nomic-embed-vision-v1.5.json · .minisig
Manifest sha256
3da0b23b8f04dd6a0c642077727e39dc8eebbfe9a40004c0772dc28ba3b25fc6
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-14 21:10 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/nomic-ai/nomic-embed-vision-v1.5.json $ curl -O https://freeweights.allternit.com/manifests/nomic-ai/nomic-embed-vision-v1.5.json.minisig $ minisign -Vm nomic-embed-vision-v1.5.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 nomic-ai/nomic-embed-vision-v1.5
Open in Freeweights Studio

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

Signed manifest
minisign, key 2DC28CC7B26A283B. nomic-embed-vision-v1.5.json. Provenance. Takedown history: none.
From: sentence-transformers <huggingface.co/sentence-transformers>Subject: all-MiniLM-L6-v1
From: unsloth <huggingface.co/unsloth>Subject: all-MiniLM-L6-v2
From: mlx-community <huggingface.co/mlx-community>Subject: all-MiniLM-L6-v2-4bit
From: sentence-transformers <huggingface.co/sentence-transformers>Subject: all-mpnet-base-v1
From: sentence-transformers <huggingface.co/sentence-transformers>Subject: allenai-specter
From: sentence-transformers <huggingface.co/sentence-transformers>Subject: bert-base-nli-max-tokens