Code and slides for the talk I gave on this topic. Here is the presentation
It has two notebooks:
Semantic Search is a project that implements an advanced search functionality using natural language processing and semantic similarity techniques. It enables users to input queries in a human-like manner and retrieve relevant search results based on the semantic meaning of the query.
This project aims to improve the search experience by going beyond traditional keyword-based searches and providing more accurate and contextually relevant results.
This uses Open AI so you have to create an OpenAI Key.
To run the Semantic Search project locally, follow these steps:
- Clone the repository:
gh repo clone deepanshululla/SemanticSearch
cd SemanticSearch
- Install the required dependencies:
conda env create -f environment.yml
- Run Docker-compose up for elasticsearch
docker-compose up -d- Create a file called openai in secrets folder.
❯ ls secret
openai
-
Paste your OpenAI key into the openai file.
-
You may also need to setup kaggle key download the dataset from kaggle.
- Start the Jupyter notebook server:
jupyter noptebook .
- Python
- Gradio (for the web interface)
- Hugging Face Transformers (for NLP models)
- Langchain
- chromio
- ElasticSearch