Welcome to the AI-Powered Search Engine, an intelligent and dynamic search solution combining advanced hybrid Search [Dense + sparse & Rerankers] Visual Search, and LLM-powered Recommendations. Designed to revolutionize product discovery in e-commerce and knowledge bases, this system helps users effortlessly find the most relevant products or services.
Here's how our AI-powered search engine looks in action:
- Sentence Transformers: Efficient semantic embeddings for contextual matching.
- FAISS Vector Store: Fast similarity search powered by cosine similarity.
- Image Similarity: Quickly finds visually similar items using image embeddings and efficient nearest-neighbor retrieval.
- Combines Dense (Semantic) and Sparse (Keyword) retrieval methods for comprehensive results.
- Improves search quality by re-ranking initial search results based on query relevance.
- Uses Large Language Models (LLMs) like LLaMA for generating personalized and context-aware recommendations and summaries.
- Integrates retrieval methods with generative models to provide contextually accurate, informative, and coherent responses based on retrieved knowledge.
- Utilizes LangChain and Pinecone for efficient context retrieval and dynamic query handling.
- Built with Streamlit, ensuring a smooth, interactive, and intuitive user experience.
- Frontend: Streamlit
- Backend: FastAPI
- Semantic Models: Sentence-BERT, CrossEncoder
- Vector DB: FAISS
- Search Engine: Elasticsearch
- LLM Integration: LangChain, LLaMA, LangGraph
- Model Tracking: MLflow
- Monitoring & Logging: Kibana
- Text/Visual Query: User inputs a query or uploads an image.
- Search & Retrieve: AI-powered retrieval engines fetch relevant results.
- Re-ranking: Cross-Encoder re-ranks based on detailed relevance.
- Contextual Generation (RAG): Context retrieved using dense and sparse methods is fed into LLM to generate comprehensive answers and recommendations.
- MLflow Integration: Tracks experiments, logs models, and manages deployments.
- Automated Model Promotion: Streamlined workflows for staging and production.
- Continuous Integration & Delivery (CI/CD): Automates testing, deployment, and monitoring, ensuring reliable and efficient updates.
- Versioning & Governance: Clear version control and model governance strategies for reproducibility and compliance.
- Monitoring & Alerting: Real-time tracking of model performance and usage with automated alerts for anomalies or performance degradation.[yet to update]
Here's how our AI-powered search engine looks in action:
Clone this repository:
git clone https://github.com/yourusername/ai-search-engine.git
cd ai-search-engine
pip install -r requirements.txt
Create your config.yaml
file based on config-example.yaml
provided.
Start Streamlit app:
streamlit run streamlit/app.py
Start API:
uvicorn api.hybrid:app --reload
- Check out Docs for detailed architecture, deployment instructions, and API guides.
- For support, raise an issue or submit a pull request.
We welcome community contributions:
- Fork this repo
- Create your feature branch (
git checkout -b feature/my-feature
) - Commit your changes (
git commit -m 'Add some feature'
) - Push to the branch (
git push origin feature/my-feature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.