AI powered tool to trace job application status based on emails.
- Easy to customize and use, you can adjust the confidence interval threshold yourself
- Up to 96% accuracy with 0 false positives
- Python 3.10
- An OpenAI API key for ChatGPT access
-
Clone the repository and install the required dependencies:
git clone https://github.com/resumejob/JobTracker.git cd JobTracker # It is recommended to create a virtual environment for this project before install python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txt
-
Configure your OpenAI API key: Set up your API Key
Export your emails in MBOX format and run the script with the following command:
python3 main.py -p <path_to_your_email_file.mbox> -o <output_filename.csv>
Replace <path_to_your_email_file.mbox>
with the path to your MBOX file and <output_filename.csv>
with your desired output file name.
You would get
- checkout example_output CSV for more details
-
Access Data
- Users export their emails in MBOX format from their email service provider.
-
Clean Up and Collect Data
- The system extracts basic information such as the sender, recipient, and body of the message.
- It uses predefined keywords from
config.KEYWORD
to determine if an email is related to a job application. - If an email is related, the system collects the relevant information and forwards it to the ChatBot for analysis.
-
Understand and Format Data
- The ChatBot assesses whether the email pertains to a job application.
- For job-related emails, it identifies the current status of the application and suggests subsequent steps.
- A function call is utilized to neatly format the data.
-
Export Data
- The processed data is exported in CSV or Excel format for easy access and use by the job seeker.
Execute the following command to run tests:
python3 -m unittest discover -s tests
- Distributing to PyPi
- Support Local LLMs like Llama
We welcome contributions from the community. If you would like to contribute, please fork the repository and submit a pull request.
- Leveraged the ChatGPT/llama to process the email and a cost pipeline to estimate the price.
- Merge email with same company and provide a clear view of the application timeline.
- Increase model accuracy by adding a pre-process threashold.
- Increase model speed by adding Hash to avoid the duplicate email.
This project is licensed under the MIT License - see the LICENSE.md file for details.
For any queries, you can reach out to Project Maintainer.