Skip to content

Latest commit

 

History

History
100 lines (66 loc) · 8.05 KB

README.md

File metadata and controls

100 lines (66 loc) · 8.05 KB

Overview

BAH Codefest Submission: This resume Analyzer is designed to utilize a 1 bit transformer based model to compare the content of resume and job descriptions, outputting a similarity score (descending order) and the m (in descending order) matching words to justify each comparison.

Table of Contents

Features

  • Resume Parsing: Converts resume PDFs into parsable text format.
  • Job Description Parsing: Converts job description PDFs into parsable text format.
  • Content Similarity: Uses an LLM to calculate the similarity between resume and job description content.
  • Score Justification: Provides a justification for the similarity score based on matching words/phrases.
  • CPU Only Support: Utilizes CPU with minimal RAM requirements.

Shortcomings of our Implementation: The text parsing and cleaning does not strip common words (e.g. At, the, into etc.)

Usage

Running the Notebook in Google Colab (Recommended)

  1. Open the Notebook:

  2. Install Required Packages:

    • The notebook will automatically install the necessary packages when you run the first cell.
  3. Clone Data:

    • The notebook clones and places sample job description PDFs in /resume_analyzer_t3/data/job_descriptions/.
    • The notebook clones and places sample resume PDFs in /resume_analyzer_t3/data/resumes/.
  4. Run the Notebook:

    • Execute the cells in the notebook sequentially to process the resume and job descriptions, calculate similarity scores, and view the results.

Running Locally (Optional)

If you prefer to run the notebook locally, follow these steps:

  1. Clone the Repository:

  2. Install Required Packages:

  3. Open the Notebook::

    • Open ~/resume_analyzer_t3/
  4. Prepare Data:

    • Place job descriptions in /resume_analyzer_t3/data/job_descriptions/
    • Place resume in /resume_analyzer_t3/data/resumes/
  5. Run the Notebook:

    • Execute the cells in the notebook sequentially to process the resume and job descriptions, calculate similarity scores, and view the results.

Data Storage

Confirm that job descriptions and resume are in the correct directories:

Job Descriptions: /resume_analyzer_t3/data/job_descriptions/

Resumes: /resume_analyzer_t3/data/resumes/

References

Microsoft Bitnet:

Sentence Transformer Documentation & Pretrained 1B Models

PyPDF:

spaCy:

Gauge Implementation: