YourFutureGuide is an LLM-based application to discover which is the most suitable educational or professional path for you. LLaMa3-7b will determine so by investigating your interests and aspirations in only 5 shots.
This project was shown during the European Research Night 2024 in Bari. Therefore the degree course prediction was limited to what proposed by the University of Bari in that moment. So, a Retreival Augmeted Generation (RAG) mechanism has been implemented at the end of the conversation to retrieve the three degree couses most similar to the student's interests.
Note
Since this is a demo for the European Research Night 2024 in Bari, the conversation is in Italian.
Further technical details concerning the employed propmpts are reported in the backend readme.
We recommend to use Python 3.11.5 to run our code, due to possible incompatibiities with newr versions.
Moreover, the frontend part of this project was generated with Angular CLI version 18.2.4. So, be sure that Angular is installed on your machine. You can find details on how to install it in the Angular Github repository.
The steps to correctly install the project are described below (both backend and frontend).
- Clone this repository:
git clone https://github.com/llaraspata/YourFutureGuide.git
- Create a virtual environment and activate it:
python -m venv your_venv_name source <your_venv_name>/bin/activate # On Windows, use: <your_venv_name>\Scripts\activate
- Install all the project dependencies:
pip install -r requirements.txt
Once te repository has been cloned:
- Move to the frontend directory:
cd ./frontend
- Install the dependencies
npm install
The vectorial database Chroma is used to store PDF files used for RAG. You need to follow the steps below to insert documents in the DB and use them in the prediction process.
- Upload your PDF files in the directory
data
- Insert them in the ChromaDB
python ./backend/data/populate_db.py
To run the python backend follow the steps below:
- Move to the directory
backend
- Run the uvicorn server
uvicorn main:app --reload
To run the angular frontend follow the steps below:
- Move to the directory
frontend
- Run the angular client
ng serve
@misc{laraspata2024YourFutureGuide,
author = {Lucrezia Laraspata},
title = {YourFutureGuide},
year = {2024},
url = {https://github.com/llaraspata/YourFutureGuide/}
}