{"id":28555111,"url":"https://github.com/armanjscript/image-similarity-search-engine","last_synced_at":"2026-04-12T12:38:23.841Z","repository":{"id":297929671,"uuid":"988988439","full_name":"armanjscript/Image-Similarity-Search-Engine","owner":"armanjscript","description":"This project is an Image Similarity Search Engine built with Python, utilizing Streamlit for the user interface and integrating with AI models via Ollama and CrewAI for advanced image analysis and keyword generation.","archived":false,"fork":false,"pushed_at":"2025-06-08T11:23:33.000Z","size":9,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-22T00:52:10.804Z","etag":null,"topics":["crewai","image-similarity","langchain","langchain-ollama","llava","ollama","python","search-engine","streamlit"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/armanjscript.png","metadata":{"files":{"readme":"README.markdown","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-23T11:37:24.000Z","updated_at":"2025-06-08T11:23:37.000Z","dependencies_parsed_at":"2025-06-08T12:38:13.186Z","dependency_job_id":null,"html_url":"https://github.com/armanjscript/Image-Similarity-Search-Engine","commit_stats":null,"previous_names":["armanjscript/image-similarity-search-engine"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/armanjscript/Image-Similarity-Search-Engine","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/armanjscript%2FImage-Similarity-Search-Engine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/armanjscript%2FImage-Similarity-Search-Engine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/armanjscript%2FImage-Similarity-Search-Engine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/armanjscript%2FImage-Similarity-Search-Engine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/armanjscript","download_url":"https://codeload.github.com/armanjscript/Image-Similarity-Search-Engine/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/armanjscript%2FImage-Similarity-Search-Engine/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31715492,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-12T06:22:27.080Z","status":"ssl_error","status_checked_at":"2026-04-12T06:21:52.710Z","response_time":58,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["crewai","image-similarity","langchain","langchain-ollama","llava","ollama","python","search-engine","streamlit"],"created_at":"2025-06-10T05:35:03.806Z","updated_at":"2026-04-12T12:38:23.824Z","avatar_url":"https://github.com/armanjscript.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Image Similarity Search Engine\n\n## Description\n\nThis project is an Image Similarity Search Engine built with Python, utilizing [Streamlit](https://streamlit.io/) for the user interface and integrating with AI models via [Ollama](https://ollama.com/) and [CrewAI](https://www.crewai.com/) for advanced image analysis and keyword generation. The application allows users to upload an image, analyze its content, generate relevant search keywords, and find visually similar images online using the [SerperAPI](https://serper.dev/). It demonstrates the power of combining local AI models with web APIs to create a seamless user experience for image-based searches, making it easier for users to find what they're looking for without needing to manually craft search queries.\n\n## Technologies Used\n\n- **Python**: The primary programming language for the project.\n- **Streamlit**: A Python library for building interactive web applications.\n- **Ollama**: A framework for running local AI models, such as Llava and Qwen, for image analysis and keyword generation.\n- **CrewAI**: A library for creating AI agents to automate tasks, such as generating search keywords.\n- **SerperAPI**: An external API for performing image searches based on generated keywords.\n- **Langchain**: Used for prompt templates and output parsers to structure AI interactions.\n\n## Installation\n\nTo run this project, you need to have Python installed on your machine, along with Ollama for running local AI models. Additionally, you'll need a SerperAPI key for image search functionality.\n\n1. **Install Python and necessary libraries:**\n   - Ensure you have Python 3.8 or higher installed.\n   - Install required libraries using pip:\n     ```bash\n     pip install streamlit requests langchain-core langchain-ollama crewai\n     ```\n   - Note: The project uses Langchain for prompt templates and output parsers, but it does not require `langchain-openai` since it uses Ollama locally.\n\n2. **Set up Ollama:**\n   - Install Ollama from their [official website](https://ollama.com/) or using your package manager.\n   - Download the required models (`llava:13b` and `qwen2.5`) using Ollama:\n     ```bash\n     ollama pull llava:13b\n     ollama pull qwen2.5\n     ```\n   - Start Ollama if it's not already running:\n     ```bash\n     ollama serve\n     ```\n\n3. **Obtain SerperAPI Key:**\n   - Sign up for a SerperAPI account at [SerperAPI](https://serper.dev/) and get your API key.\n\n4. **Set Environment Variables:**\n   - Set the `SERPER_API_KEY` environment variable with your API key.\n     - On Linux/Mac:\n       ```bash\n       export SERPER_API_KEY=your_api_key_here\n       ```\n     - On Windows:\n       ```bash\n       set SERPER_API_KEY=your_api_key_here\n       ```\n\n**Note:** Running AI models locally can be resource-intensive. Ensure your machine has sufficient CPU, GPU, and memory to handle the workload.\n\n## Usage\n\n1. Clone the repository:\n   ```bash\n   git clone https://github.com/armanjscript/Image-Similarity-Search-Engine.git\n   ```\n\n2. Navigate to the project directory:\n   ```bash\n   cd Image-Similarity-Search-Engine\n   ```\n\n3. Run the application:\n   ```bash\n   streamlit run main.py\n   ```\n\n4. Upload an image in the Streamlit interface to see the similar images found online.\n\n## Features\n\n- Upload an image and get a detailed description using AI.\n- Automatically generate search keywords based on the image content.\n- Find and display visually similar images from the web.\n- User-friendly interface built with Streamlit.\n- Handles errors gracefully, with fallback options for manual keyword input.\n\n## Contributing\n\nContributions are welcome! Please fork the repository, make your changes, and submit a pull request. If you encounter any issues or have suggestions for improvement, feel free to open an issue or reach out.\n\n## License\n\nThis project is licensed under the MIT License - see the LICENSE file for details.\n\n## Contact\n\nFor any questions or feedback, please contact me at [armannew73@gmail.com].\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farmanjscript%2Fimage-similarity-search-engine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farmanjscript%2Fimage-similarity-search-engine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farmanjscript%2Fimage-similarity-search-engine/lists"}