We're developing a way for managers and professionals to find what they need.
Jobify: a conversational agent for job-related search; Human Machine Dialogue course 2024.
Authors: Andrea Coppari, Riccardo Tedoldi
Supervisors: Giuliano Tortoreto, S. Mahed Mousavi
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Due to the nature of the project, we employed LLMs so it may require a lot of computational power to run the project.
What things you need to install the software and how to install them.
You need to clone the repository and enter in the src folder. Then, to install the necessary packages from requirements.txt into a conda virtual environment.
# Create the virtual environment
conda create -n jobify --file requirements.txt
# Activate the virtual environment
conda activate jobify
or
Run the makefile to install all the necessary packages and vectorize the DBs.
make
To vectorize the DBs manually, there is the following script src\installation\install.py
. If you have issues with bitsandbytes, you can checkout the first cell of the notebook notebooks\02_mistralLLM\minstral-llm.ipynb
.
To run the rasa train:
rasa train
To run the rasa shell:
rasa shell -m <path_to_model>
To run the rasa server:
rasa run
To run the rasa actions server:
rasa run actions
To run the rasa interactive shell:
rasa interactive
To run the rasa test:
rasa test nlu --cross-validation --fold 10
rasa test core
To run the Alexa skill, you need to create a new skill in the Alexa Developer Console and configure the endpoint to the rasa server. We suggest to use ngrok to create a secure tunnel to the rasa server. Here is a guide on how to do it: youtube playlist guide.
The repository is structured as follows:
* notebooks
* 00_userProfilesGeneration
* 02_semanticSearch
* 03_mistralLLM
* data
* utils
* src
* actions
* actions.py
* data
* nlu.yml
* stories.yml
* rules.yml
* models
* installation
* data
* install.py
* vector_db.py
* tests
* test_stories.yml
* results
* config.yml
* credentials.yml
* domain.yml
* endpoints.yml
* Makefile
* README.md
...
* requirements.txt
- Rasa - The chatbot framework used
- Anaconda - The data science platform used
- Alexa - The voice assistant used
- LangChain - The language processing platform used
- ngrok - The secure tunnel used
- Hugging Face - The transformer models used
If you want to contribute to the project, please contact us.
We are glad to accept any kind of contribution.
@misc{CoppariTedoldi2023,
title = {Jobify: a conversational agent for job-related search},
author = {Andrea Coppari, Riccardo Tedoldi},
year = {2024},
url = {https://github.com/r1cc4r2o/Jobify}
}