A chat bot for the Faculty of Sciences and Technologies of Tangier. Using both RAG and finetuning as separate models.
# FSTT-LLM-Chat-Bot
A chat bot for the Faculty of Sciences and Technologies of Tangier. Two models are available. The first is a fine-tuned Llama3-8B- instruct on public information from the faculty's website, and a second is for RAG implementation, which uses Solon-embeddings-large-0.1 for embeddings and Llama3-8B for inference. The RAG is done on a large dataset of the faculty's MIPC program, which includes pdf courses, exams, exercises, and other resources.
### Authors: @Samashi47, @aL0NEW0LF, @AbdelmajidBen, and @Dhafahd
### Supervised by: Pr. Lotfi El Aachak
### MST: Intelligence Artificielle et Sciences des Données (IASD), 2023-2024, Faculty of Sciences and Technologies of Tangier, Morocco.
> [!WARNING]
> If you want to run the project on docker, know that the containers will take up to 50GB of disk space in total.
## Getting started
1. **Go to the source directory**: Make sure you have the necessary storage requirements.
2. **Install and open MongoDB**: Create a database named `chat-ui` and a collection with the same name.
3. **Download the model**:
- Download the model from this link.
- Place the downloaded model in the base folder.
4. **Download Embeddings dataset**:
- Download the embeddings dataset from this link.
- Place the downloaded embeddings dataset in `apps\api\app\rag_chroma`.
5. **Start the project**:
- Open a terminal in the base directory.
- Run the following command to start the project:
```bash
docker-compose -f docker-compose.yml up -d
```
6. **Access the project**:
- Open your web browser and go to `localhost:3000`.
Your project should now be up and running!
## Introduction
Artificial intelligence has shown extremely rapid development over the past ten years, transforming most industries. The most striking and impactful application is natural language processing, which allows machines to process, understand, and generate human language, thus enabling a more natural and seamless interaction between humans and computers. One of th …