0ssamaak0 / CLIPPyX

AI Powered Image search tool offers content-based, text, and visual similarity system-wide search.
MIT License
110 stars 10 forks source link
CLIPPyX is a powerful system-wide image search and management tool that offers versatile search options to find images based on their content, text, and visual similarity. With its advanced features, you can effortlessly locate the desired images across your entire computer's disk(s), regardless of their location or file names. ----------------------------------------

CLIPPyX Demo

🎬 Video at 1x speed

Main Features

Tool Overview

CLIPPyX Overview

Getting Started

Basic Installation

pip install -e .

After some automatic downloads (Everything SDK, Models from 🤗 Transformers), you should see the indexing process starting. Then the server will be ready to receive search queries.

 * Serving Flask app 'server'
 * Debug mode: off
INFO:werkzeug:WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
 * Running on all addresses (0.0.0.0)
 * Running on http://127.0.0.1:5000
 * Running on http://172.25.97.13:5000

you can check the server is running be sending a simple request to the server using CURL or Postman.

curl -X POST -H "Content-Type: application/json" -d "{\"text\": \"Enter your query here\"}" http://localhost:5000/clip_text

Alternative Models

For more memory efficient and faster indexing and search, there're alternative for both CLIP and Text Embedding models

Running CLIPPyX server in WSL

Getting the Paths of all images must be done in Windows to run Everything SDK, However, running the server itself in WSL is a good alternative, especially when using Alternative Models due some issues or complex setup process on Windows

User Interface

Having CLIPPyX server running, you can use any UI capable of sending HTTP requests to the server, you can customize any UI to do this, or use one of the provided UIs.

Check UI page to check available options.

Future Work

Check Issues for future work and contributions. don't hesitate to open a new issue for any feature request or bug report.