Skip to content

An AI-powered ATS system using Sentence Transformers and Plotly for semantic resume matching and skill gap analysis.

Notifications You must be signed in to change notification settings

Ankush-22/ResuScore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 AI-ATS-Resume-Matcher: Smart Recruitment Optimizer

Python Streamlit NLP

An industry-agnostic recruitment tool that leverages Deep Learning to bridge the gap between job seekers and employers. Unlike traditional ATS systems that rely on rigid keyword matching, this tool uses Natural Language Processing (NLP) to understand the semantic context and "vibe" of a candidate's experience.


🌟 Key Features

  • 🧠 Semantic Match Scoring: Beyond keywords, it measures the "thematic fit" using high-dimensional vector alignment.
  • 🔬 Dynamic Skill Gap Analysis: Automatically identifies missing technical competencies across various domains (Data Science, DevOps, Blockchain, UX Design, etc.).
  • 📊 Interactive Visualizations: Integrated Plotly Radar Charts providing a 360-degree view of candidate-job alignment.
  • 📄 Universal File Support: Robust text extraction for both .pdf and .docx formats.
  • 💡 Real-time ATS Advice: Provides actionable feedback on whether to rewrite your summary or focus on specific technical gaps.

⚙️ The Engine

  • Model: all-MiniLM-L6-v2 (Sentence-Transformers) for producing 384-dimensional dense vectors.
  • Math: Cosine Similarity for calculating the semantic distance between Resume and Job Description.
  • Extraction: A specialized taxonomy engine that filters and identifies technical keywords dynamically from the JD.

🛠️ Tech Stack

  • Frontend/UI: Streamlit
  • NLP/Machine Learning: sentence-transformers, scikit-learn
  • Data Visualization: Plotly
  • Text Processing: PyPDF2, python-docx, re

📈 How It Works

  1. Text Extraction: Raw data is pulled from uploaded resumes and job descriptions using multi-format parsers.
  2. Vectorization: The AI model converts raw text into a dense vector representation, capturing the underlying meaning.
  3. Similarity Analytics: Cosine similarity determines the semantic overlap between the two vectors.
  4. Taxonomy Matching: The engine runs a lookup against a library of 100+ technical/soft skills to identify specific gaps.
  5. Visualization: Results are plotted on a radar chart for immediate visual feedback.

🚀 Getting Started

Prerequisites

  • Python 3.8 or higher
  • Git

Installation

  1. Clone the repository:

    git clone https://github.com/Ankush-22/AI-ATS-Resume-Matcher.git
    cd AI-ATS-Resume-Matcher
  2. Set up a virtual environment:

    python -m venv ats_env
  3. Activate the environment:

    • Windows:
      ats_env\Scripts\activate
    • macOS/Linux:
      source ats_env/bin/activate
  4. Install dependencies:

    pip install -r requirements.txt
  5. Launch the App:

    streamlit run app.py

Developed with ❤️ by Ankush

About

An AI-powered ATS system using Sentence Transformers and Plotly for semantic resume matching and skill gap analysis.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published