One Index, Two Ways to Ask: Text Query and Image Query Disagree
Text query "worn leather armchair" against image embeddings scores 0.08 to 0.11 and returns armchairs. The same index queried with a photograph scores 1.0 on itself, then 0.86, 0.83, and puts a floor lamp at rank four.

One collection of 118 images, one set of SigLIP embeddings, two ways to ask. The answers disagree, and the disagreement is informative.
The text query worn leather armchair, run against the image embeddings, returns leather armchairs scored between 0.08 and 0.11. Those are typical magnitudes for a cross-modal match, where a sentence is compared to a picture.
The image query uses a photograph from the corpus as the query itself, with input_mode set to content. The top result is that same photograph at a score of 1.0, which is how you know the visual leg ran against the right index. Then come 0.86 and 0.83, and at rank four, a floor lamp.
The lamp is the lesson. It sits in a different category and it is there because the photograph looks like the query photograph, in composition, palette and lighting. Visual similarity is a statement about pixels. Your taxonomy is nowhere in the embedding. For a more like this feature, that is often exactly the behaviour you want. For a search box inside a department, it is a result you need a filter to remove.
The two rails also show why scores across modalities are hard to compare. A 0.11 from a text query and a 0.82 from an image query say nothing about which result is better; they live on different scales. Fuse them with a rank-based method, or keep them as separate legs with separate thresholds.
What is real here: the photos are Pexels images with every photographer credited, the embeddings and ranking came from the live API with the cache skipped on both calls, and the order is untouched. Titles, prices and categories are demo catalog data generated for this corpus.
Run this on your own data
Mixpeek turns video, images, audio, and documents in your object storage into searchable, timestamped results through one API.
Search your own data

