Skip to content
imaged

Image-text embeddings

SigLIP2 base/patch16-224

Google SigLIP2 with sigmoid scoring for independent yes-or-no prompts.

Apache-2.0
Explore model

About this model

SigLIP2 is Google's image-text encoder. The base/patch16 model at 224 resolution returns 768-dim embeddings from a ViT-B/16 backbone. The SDK ships int8 vision and text encoders split from onnx-community.

Unlike CLIP, SigLIP scores each prompt independently with a sigmoid. A top-1 probability of 7% can still be a decisive match if the runner-up sits near zero. Multiple prompts can both match.

What you can build

  • Score whether each of many tags applies to a photo, independently.
  • Tag images that have multiple true labels at once, like dog plus ball.
  • Build search where matches are scored as yes or no, not ranked.
  • Replace a CLIP scorer when you want per-prompt thresholds.

Variants & downloads

Choose the build for your app

Model files are being prepared.

Explore the model’s examples, source links, and integration notes while download variants are added.

Example inference

Input
A close-up cat photograph from Wikimedia Commons.
Output
The cat photo with the top-5 matching text prompts and their sigmoid scores.

Performance

Results depend on the device, runtime, and test conditions. Each measurement keeps its own context.

M1 Max, macOS 15, ONNX Runtime 1.17 (image encoder)

See original catalog hardware notes · CPU

49.7 ms

Warm inference

Catalog reference · variant unspecifiedCold start (ms): 50.94

Reference result from the existing catalog; conversion variant and measurement date were not recorded.

M1 Max, macOS 15, ONNX Runtime 1.17 (image encoder)

See original catalog hardware notes · CoreML

1.90 s

Warm inference

Catalog reference · variant unspecifiedCold start (ms): 2048.65

Reference result from the existing catalog; conversion variant and measurement date were not recorded.

RTX 2060, Ubuntu 24.04, ONNX Runtime 1.24.3 (vision int8)

See original catalog hardware notes · CUDA

82.1 ms

Warm inference

Catalog reference · variant unspecified

Reference result from the existing catalog; conversion variant and measurement date were not recorded.

Integration examples

Vision SDK integration

cpp

#include "imaged/sdk.hpp"
#include "imaged/families/siglip/siglip_family.hpp"

imaged::SDK::AI ai;
auto& config = ai.getOptions();
config.set("siglip2_image_embedder.model", "weights/vision_model_int8.onnx");
config.set("siglip2_text_embedder.model", "weights/text_model_int8.onnx");
config.set("siglip2_text_embedder.tokenizer", "weights/tokenizer.model");

auto* siglip = ai.getFamily("siglip");

imaged::SDK::Image image;
image.load("photo.jpg");
auto imgEmb = std::get<imaged::SDK::EmbeddingResult>(
    siglip->run(imaged::SDK::Input{&image})).features;

auto txtR = siglip->run(imaged::SDK::TextInput{"a photo of a cat"});
auto txtEmb = std::get<imaged::SDK::EmbeddingResult>(txtR).features;

std::vector<std::vector<float>> texts = { txtEmb };
auto probs = imaged::SDK::siglipZeroShotProbabilities(imgEmb, texts);