The script analyses CVs/resumes for the presence of specified keywords and extracts the candidate's name and relevant experiences. It uses the OpenAI API to perform the analysis and provides a Gradio interface for user interaction.
- Extracts text from PDF CVs/resumes
- Analyses CVs/resumes for the presence of specified keywords
- Extracts candidate's name and relevant experiences
- Provides a list of the top three candidates based on the analysis
- Offers a user-friendly Gradio interface for uploading CVs/resumes and viewing the analysis results
-
Set the
OPENAI_KEYenvironment variable with your OpenAI API key:export OPENAI_KEY="your_api_key" -
Install the required dependencies using
pip install -r requirements.txt## Prerequisites python3 -m venv .venv source .venv/bin/activate pip3 install -r requirements.txt python3 -m pip install --upgrade pip -
Run the script using
python3 cv_analyser.py. -
Access the Gradio interface in your web browser:
http://localhost:7860 -
Upload the CVs/resumes (maximum 10) in PDF format.
-
Click the
Submitbutton to analyse the CVs/resumes. -
View the analysis results, including the top three candidates' names, relevant keywords, and standout experiences.
| Number of CVs/Resumes | Processing Time |
|---|---|
| 10 | 49.9 seconds |
- Modify the
keywordslist in theuse_gradio_interface()function to specify the desired keywords for cv/resume analysis. - Adjust the prompts in the
analyse_cv()andanalyse_cvs()methods to customise the analysis and output format.
This project is licensed under the MIT License.
- Thank you, Yas. 🙏🏽 Maybe make it a microservice? 😎 — Rebel Recruiters
- OpenAI for providing the powerful GPT-3.5-turbo language model
- PyPDF2 for simplifying the extraction of text from PDF documents
- Gradio for enabling the creation of interactive web interfaces
(c) 2024 Finbarrs Oketunji.
Developed at LincolnHack 2024 in collaboration with Digital Lincoln — Lincolnshire 🇬🇧