This project provides a web-based application to predict the probability of a given text belonging to a set of provided candidate labels. The algorithm also offers a novel candidate label suggestion when none of the provided labels adequately fit the text. It supports both English and Italian entries.
- Node.js (v18 or later recommended)
- npm (comes with Node.js)
- Angular CLI (v19 or later)
- Python 3.12 (recommended)
- Text Classification: Users can get the context of the text they enter.
- Multilingual Support: Application supports both English and Italian inputs, offering a variety to the user.
- User-Friendly Interface: A web-based UI built using Flask and Angular for seamless interaction.
git clone https://github.com/femito1/Contextify.git cd ContextifyTo create a virtual environment using Conda, run the following commands:
cd backend
conda create --name contextify_app python=3.12 -y
conda activate contextify_appOnce inside the Conda environment, install the required dependencies from requirements.txt:
pip install -r requirements.txtTo start the Flask application, run the following command:
python application.pyThe backend will be available at:
http://0.0.0.0:5000/
To install the dependencies, create a new terminal and change the directory to the zero-shot-classification. Then, run the next commands:
cd frontend
npm installTo start the Angular development server, run:
ng serveThe backend will be available at:
http://0.0.0.0:4200/
The frontend is configured to proxy API requests to the backend server. This is handled through the proxy.conf.json file in the project root.