Skip to content
ModelListedExternal
Download

Marqo FashionSigLIP

Marqo Fashion Siglip 2 is available. marqo-fashion-SigLip-2 has shown a further 78% improvement in MMR and recall vs marqo-fashion-SigLip. Contact Marqo to learn more:

KindText modelVersion

Model source

Kind
Text model
File size
775 MB
Version
vmodel
Updated
Sep 17, 2026
Downloads
23
Source
Hugging Face

Source description

Marqo-FashionSigLIP Model Card

GitHub

Marqo Fashion Siglip 2 is available. marqo-fashion-SigLip-2 has shown a further 78% improvement in MMR and recall vs marqo-fashion-SigLip. Contact Marqo to learn more: https://www.marqo.ai/book-demo

Marqo-FashionSigLIP is a multimodal embedding model that provides up to 57% improvement in MRR and recall over fashion clip.

Marqo-FashionSigLIP leverages Generalised Contrastive Learning (GCL) which allows the model to be trained on not just text descriptions but also categories, style, colors, materials, keywords and fine-details to provide highly relevant search results on fashion products. The model was fine-tuned from ViT-B-16-SigLIP (webli).

Github Page: Marqo-FashionCLIP

Blog: Marqo Blog

Usage

Hugging Face

The model can be loaded with AutoModel by

from transformers import AutoModel, AutoProcessor
model = AutoModel.from_pretrained('Marqo/marqo-fashionSigLIP', trust_remote_code=True)
processor = AutoProcessor.from_pretrained('Marqo/marqo-fashionSigLIP', trust_remote_code=True)

import torch
from PIL import Image

image = [Image.open("docs/fashion-hippo.png")]
text = ["a hat", "a t-shirt", "shoes"]
processed = processor(text=text, images=image, padding='max_length', return_tensors="pt")

with torch.no_grad():
    image_features = model.get_image_features(processed['pixel_values'], normalize=True)
    text_features = model.get_text_features(processed['input_ids'], normalize=True)

    text_probs = (100.0 * image_features @ text_features.T).softmax(dim=-1)

print("Label probs:", text_probs)
# [0.98379946, 0.01294010, 0.00326044]

OpenCLIP

The model can be seamlessly used with OpenCLIP by

import open_clip
model, preprocess_train, preprocess_val = open_clip.create_model_and_transforms('hf-hub:Marqo/marqo-fashionSigLIP')
tokenizer = open_clip.get_tokenizer('hf-hub:Marqo/marqo-fashionSigLIP')

import torch
from PIL import Image

image = preprocess_val(Image.open("docs/fashion-hippo.png")).unsqueeze(0)
text = tokenizer(["a hat", "a t-shirt", "shoes"])

with torch.no_grad(), torch.cuda.amp.autocast():
    image_features = model.encode_image(image, normalize=True)
    text_features = model.encode_text(text, normalize=True)

    text_probs = (100.0 * image_features @ text_features.T).softmax(dim=-1)

print("Label probs:", text_probs)
# [0.9860219105287394, 0.00777916527489097, 0.006198924196369721]

Transformers.js

You can also run the model in JavaScript with the Transformers.js library.

First, install it from NPM using:

npm i @huggingface/transformers

Then, compute embeddings as follows:

import { SiglipTextModel, SiglipVisionModel, AutoTokenizer, AutoProcessor, RawImage, softmax, dot } from '@huggingface/transformers';

const model_id = 'Marqo/marqo-fashionSigLIP';

// Load tokenizer and text model
const tokenizer = await AutoTokenizer.from_pretrained(model_id);
const text_model = await SiglipTextModel.from_pretrained(model_id);

// Load processor and vision model
const processor = await AutoProcessor.from_pretrained(model_id);
const vision_model = await SiglipVisionModel.from_pretrained(model_id);

// Run tokenization
const texts = ['a hat', 'a t-shirt', 'shoes'];
const text_inputs = tokenizer(texts, { padding: 'max_length', truncation: true });

// Compute text embeddings
const { text_embeds } = await text_model(text_inputs);

// Read image and run processor
const image = await RawImage.read('https://raw.githubusercontent.com/marqo-ai/marqo-FashionCLIP/main/docs/fashion-hippo.png');
const image_inputs = await processor(image);

// Compute vision embeddings
const { image_embeds } = await vision_model(image_inputs);

// Compute similarity scores
const normalized_text_embeds = text_embeds.normalize().tolist();
const normalized_image_embeds = image_embeds.normalize().tolist()[0];

const text_probs = softmax(normalized_text_embeds.map((text_embed) => 
    100.0 * dot(normalized_image_embeds, text_embed)
));
console.log(text_probs);
// [0.9860219105287394, 0.00777916527489097, 0.006198924196369721]

Benchmark Results

Average evaluation results on 6 public multimodal fashion datasets (Atlas, DeepFashion (In-shop), DeepFashion (Multimodal), Fashion200k, KAGL, and Polyvore) are reported below:

Text-To-Image (Averaged across 6 datasets)

ModelAvgRecallRecall@1Recall@10MRR
Marqo-FashionSigLIP0.2310.1210.3400.239
FashionCLIP2.00.1630.0770.2490.165
OpenFashionCLIP0.1320.0600.2040.135
ViT-B-16-laion2b_s34b_b88k0.1740.0880.2610.180
ViT-B-16-SigLIP-webli0.2120.1110.3140.214

Category-To-Product (Averaged across 5 datasets)

ModelAvgPP@1P@10MRR
Marqo-FashionSigLIP0.7370.7580.7160.812
FashionCLIP2.00.6840.6810.6860.741
OpenFashionCLIP0.6460.6530.6390.720
ViT-B-16-laion2b_s34b_b88k0.6620.6730.6520.743
ViT-B-16-SigLIP-webli0.6880.6900.6850.751

Sub-Category-To-Product (Averaged across 4 datasets)

ModelAvgPP@1P@10MRR
Marqo-FashionSigLIP0.7250.7670.6830.811
FashionCLIP2.00.6570.6760.6380.733
OpenFashionCLIP0.5980.6190.5780.689
ViT-B-16-laion2b_s34b_b88k0.6380.6510.6240.712
ViT-B-16-SigLIP-webli0.6430.6430.6430.726

Sources

1 source
Hugging FacePrimaryVersion 6b8cc36d7aeb53bae068ea2d15ee0f8b92ea911f
huggingface.co/caonimaya/marqo-fashionSigLIP/tree/6b8cc36d7aeb53bae068ea2d15ee0f8b92ea911f

Verified Sep 17

Model artifacts

1 artifact

model.safetensors

safetensors · 775 MB · SHA-256 2a58c671a74e…9a07 · Hugging Face

Download

Source excerpts

2 excerpts

--- tags: - clip - transformers - e-commerce - fashion - multimodal retrieval - siglip - transformers.js library_name: open_clip pipeline_tag: zero-shot-image-classification license: apache-2.0 language: - en metrics: - precision - recall - MRR --- # Marqo-FashionSigLIP Model Card [![GitHub](https://img.shields.io/badge/GitHub-black?logo=github)](https://github.com/marqo-ai/marqo-FashionCLIP) **Marqo Fashion Siglip 2 is available.** marqo-fashion-SigLip-2 has shown a further 78% improvement in MMR and recall vs marqo-fashion-SigLip. Contact Marqo to learn more: https://www.marqo.ai/book-demo Marqo-FashionSigLIP is a multimodal embedding model that provides up to [57% improvement in MRR and recall](https://www.marqo.ai/blog/search-model-for-fashion) over [fashion clip](https://huggingface.co/patrickjohncyh/fashion-clip). Marqo-FashionSigLIP leverages Generalised Contrastive Learning ([GCL](https://www.marqo.ai/blog/generalized-contrastive-learning-for-multi-modal-retrieval-and-ranking)) which allows the model to be trained on not just text descriptions but also categories, style, colors, materials, keywords and fine-details to provide highly relevant search results on fashion products. The model was fine-tuned from ViT-B-16-SigLIP (webli). **Github Page**: [Marqo-FashionCLIP](https://github.com/marqo-ai/marqo-FashionCLIP) **Blog**: [Marqo Blog](https://www.marqo.ai/blog/search-model-for-fashion) ## Usage ### Hugging Face The model can be loaded with AutoModel by ```python from transformers import AutoModel, AutoProcessor model = AutoModel.from_pretrained('Marqo/marqo-fashionSigLIP', trust_remote_code=True) processor = AutoProcessor.from_pretrained('Marqo/marqo-fashionSigLIP', trust_remote_code=True) import torch from PIL import Image image = [Image.open("docs/fashion-hippo.png")] text = ["a hat", "a t-shirt", "shoes"] processed = processor(text=text, images=image, padding='max_length', return_tensors="pt") with torch.no_grad(): image_features = model.get_image_features(processed['pixel_values'], normalize=True) text_features = model.get_text_features(processed['input_ids'], normalize=True) text_probs = (100.0 * image_features @ text_features.T).softmax(dim=-1) print("Label probs:", text_probs) # [0.98379946, 0.01294010, 0.00326044] ``` ### OpenCLIP The model can be seamlessly used with [OpenCLIP](https://github.com/mlfoundations/open_cl...

Source context: 23 downloads · 0 likes · Pipeline zero-shot-image-classification · Library open_clip · Repo caonimaya/marqo-fashionSigLIP