AI Resume Analyzer Using RoBERTa – Match Your Resume to Job Descriptions with Skill Gap Analysis

In today's job market, resumes need to be tailored to each job. This AI Resume Analyzer automates that process using semantic matching, allowing job seekers to upload their resume and see how well it matches a given job description — just like a recruiter might do using an ATS (Applicant Tracking System).

What This Project Does

  • ✅ Upload any PDF resume

  • ✅ Paste the job description

  • ✅ AI calculates a semantic match score using RoBERTa

  • ✅ Shows you:

    • ✅ Matched skills

    • ❌ Missing keywords

    • 🛠 Smart improvement suggestions

  • ✅ Clean, modern UI built with Tailwind CSS

  • ✅ AI model info shown for credibility

🔍 How It Works

This tool uses RoBERTa (stsb-roberta-large) from the SentenceTransformers library. Unlike simple keyword matching, it evaluates how well your resume matches the meaning of the job description.

We also use a Named Entity Recognition (NER) model to extract skills and experience from the resume, and compare it with the JD to identify skill gaps.

💡 Why It's Better Than Keyword Matching

Traditional resume checkers just look for exact matches. But this tool understands:

  • Synonyms (e.g. “REST API” vs “backend service”)

  • Job roles vs responsibilities

  • Skill clusters

That’s why it’s ideal for students, job seekers, or HR teams who want deeper, smarter analysis.

🛠 Tech Stack

ComponentTech Used
FrontendTailwind CSS, HTML, Jinja2 Templates
BackendFlask (Python)
PDF ParsingPyMuPDF
NLP ModelRoBERTa (stsb-roberta-large)
Skill ExtractionTransformers NER Model
Suggestions EngineRule-based system

📦 Download Source Code

🎯 Download Resume Analyzer with AI Matching
💡 Includes full project: Code + HTML + Models + Suggestions Engine

Posted in Machine Learning Projects With Source Code and tagged , , , , , , , , , , , , , , , , , , .