## How to Run This Project ### 1️⃣ Create and Activate a Virtual Environment Run the following command to create a virtual environment: ```sh python -m venv venv ``` ### Activate the Virtual Environment **On macOS/Linux:** ```sh source venv/bin/activate ``` ### 2️⃣ Install Dependencies After activating the virtual environment, install the required packages: ```sh pip install -r requirements.txt ``` ### 3️⃣ Run the Flask Application Once dependencies are installed, start the Flask app by running: ```sh cd src python app.py ``` ## Environment Variables This project requires a `.env` file for configuration. ### **.env File Placement** - Place the `.env` file inside `src` directory. ### **Example `.env` File** ```ini QDRANT_HOST = "localhost" QDRANT_PORT = 6333 QDRANT_API_KEY='' QDRANT_CLUSTER='' QDRANT_COLLECTION_NAME='titan' TOKENIZER_FOLDER='' MODEL_FOLDER='' ``` ℹ️ **Note for production/docker container:** `TOKENIZER_FOLDER` and `MODEL_FOLDER` are **only required for local development**. When running the application in a **Docker container**, these variables are already set in the `Dockerfile` and do not need to be defined in your `.env` file. ## 📥 NLTK Setup for Development If you are running the application in development mode for the first time, you need to manually download the NLTK resource required for sentence tokenization. ### Run the following inside your virtual environment: ```ini import nltk nltk.download('punkt_tab') ``` This will download the necessary model and store it on your local machine under: ``` ~/nltk_data ```