← all repositories
rom1504/clip-retrieval

One command turns your image dump into a semantic search engine

A toolkit that collapses the entire CLIP retrieval pipeline — embedding, indexing, and serving — into a single CLI workflow.

2.8k stars Jupyter Notebook RAG · SearchInference · Serving
clip-retrieval
Not currently ranked — collecting fresh signals.
star history

What it does clip-retrieval ingests image-text datasets, computes CLIP embeddings, builds approximate-nearest-neighbor indices, and exposes them through a Python client and a web UI. You can query the results by text, by image, or by raw embedding vector, making it a self-contained semantic search system.

The interesting bit The end2end subcommand chains ingestion, inference, indexing, and serving so that a single CLI run produces a localhost search interface. The README also claims 100 million embeddings can be processed in roughly 20 hours on an RTX 3080, which puts billion-scale datasets within reach of a modest GPU budget.

Key highlights

  • Query by text string, image file/URL, or pre-computed embedding via the ClipClient API.
  • Built-in filtering options: deduplication, safety scoring, violence detection, and aesthetic-rank weighting.
  • Supports multiple model backends, including OpenAI CLIP, OpenCLIP, Hugging Face, and DeepSparse for CPU inference.
  • Distributed inference support for Slurm clusters.
  • An included web frontend (clip front) and Flask backend (clip back) for immediate browser-based search.

Caveats

  • The backend is explicitly described as a “simple flask service” and the UI as a “simple ui,” so expect a research-grade starting point rather than a hardened production stack.
  • The end2end pipeline assumes sufficient GPU VRAM; the README warns you may need to hide your GPU from CUDA if memory is tight.
  • Advanced backends like DeepSparse and multi-node Slurm execution require additional dependencies that are not bundled in the base install.

Verdict Ideal for ML researchers, data curators, or hobbyists who want to bootstrap a searchable CLIP index from a raw image collection without orchestrating half a dozen separate tools. Skip it if you need a managed, autoscaling retrieval service.

Frequently asked

What is rom1504/clip-retrieval?
A toolkit that collapses the entire CLIP retrieval pipeline — embedding, indexing, and serving — into a single CLI workflow.
Is clip-retrieval open source?
Yes — rom1504/clip-retrieval is open source, released under the MIT license.
What language is clip-retrieval written in?
rom1504/clip-retrieval is primarily written in Jupyter Notebook.
How popular is clip-retrieval?
rom1504/clip-retrieval has 2.8k stars on GitHub.
Where can I find clip-retrieval?
rom1504/clip-retrieval is on GitHub at https://github.com/rom1504/clip-retrieval.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.