Downloads · 30 days
0
RuteNL/ViT-gopt-16-SigLIP2-384-ONNX
ViT-gopt-16-SigLIP2-384-ONNX is a zero-shot image classification model from RuteNL. Use it for the zero-shot image classification task on the model card, and read the license before you ship it in a product. The card lists the license as apache-2.0.
This model is an export of timm/ViT-gopt-16-SigLIP2-384. It can be used with the openclipinference rust crate, or any other ONNX Runtime based implementation.
Downloads · 30 days
0
Access
Public
Updated Feb 6, 2026
Repo size
7.5 GB
Likes
0
Public
Click a slice to open those files.
.data7.5 GB · 99%
From the Hugging Face model README
This model is an export of timm/ViT-gopt-16-SigLIP2-384. It can be used with the open_clip_inference rust crate, or any other ONNX Runtime based implementation.
open_clip_inference in Rust:use open_clip_inference::Clip;
use std::path::Path;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let model_id = "RuteNL/ViT-gopt-16-SigLIP2-384-ONNX";
let mut clip = Clip::from_hf(model_id).build().await?;
let img = image::open(Path::new("assets/img/cat_face.jpg")).expect("Failed to load image");
let texts = &[
"A photo of a cat",
"A photo of a dog",
"A photo of a beignet",
];
let results = clip.classify(&img, texts)?;
for (text, prob) in results {
println!("{}: {:.2}%", text, prob * 100.0);
}
Ok(())
}
A SigLIP 2 Vision-Lanuage model trained on WebLI.
This model has been converted for use in OpenCLIP from the original JAX checkpoints in Big Vision.
import torch
import torch.nn.functional as F
from urllib.request import urlopen
from PIL import Image
from open_clip import create_model_from_pretrained, get_tokenizer # works on open-clip-torch >= 2.31.0, timm >= 1.0.15
model, preprocess = create_model_from_pretrained('hf-hub:timm/ViT-gopt-16-SigLIP2-384')
tokenizer = get_tokenizer('hf-hub:timm/ViT-gopt-16-SigLIP2-384')
image = Image.open(urlopen(
'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
))
image = preprocess(image).unsqueeze(0)
labels_list = ["a dog", "a cat", "a donut", "a beignet"]
text = tokenizer(labels_list, context_length=model.context_length)
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 = torch.sigmoid(image_features @ text_features.T * model.logit_scale.exp() + model.logit_bias)
zipped_list = list(zip(labels_list, [100 * round(p.item(), 3) for p in text_probs[0]]))
print("Label probabilities: ", zipped_list)
@article{tschannen2025siglip,
title={SigLIP 2: Multilingual Vision-Language Encoders with Improved Semantic Understanding, Localization, and Dense Features},
author={Tschannen, Michael and Gritsenko, Alexey and Wang, Xiao and Naeem, Muhammad Ferjad and Alabdulmohsin, Ibrahim and Parthasarathy, Nikhil and Evans, Talfan and Beyer, Lucas and Xia, Ye and Mustafa, Basil and H'enaff, Olivier and Harmsen, Jeremiah and Steiner, Andreas and Zhai, Xiaohua},
year={2025},
journal={arXiv preprint arXiv:2502.14786}
}
@article{zhai2023sigmoid,
title={Sigmoid loss for language image pre-training},
author={Zhai, Xiaohua and Mustafa, Basil and Kolesnikov, Alexander and Beyer, Lucas},
journal={arXiv preprint arXiv:2303.15343},
year={2023}
}
@misc{big_vision,
author = {Beyer, Lucas and Zhai, Xiaohua and Kolesnikov, Alexander},
title = {Big Vision},
year = {2022},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/google-research/big_vision}}
}