Skip to content

SID-SURANGE/ResumeParser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

15 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Important: This application is currently in the testing phase. You might encounter bugs or issues while using it. We appreciate your understanding and patience.

ResumeParser

Python License Version

πŸ“‹ Overview

ResumeParser is a powerful AI-driven tool that streamlines resume analysis by automatically extracting and analyzing key information from resumes. Built for recruiters and HR professionals, it combines advanced NLP with efficient processing to deliver accurate insights.

✨ Key Features

Core Capabilities

  • πŸ“„ Intelligent parsing for PDFs with mutliple LLM model support

    • Hermes LLama3.1 8B - 8 Bit quantized model
    • Hermes LLama3.2 3B - 8 Bit quantized model
    • IBM Granite 3.1 8B - 8 Bit quantized model
  • πŸ” Missing section identification

  • ✍️ Advanced spell checking analysis

  • πŸ’‘ AI-powered interview question generation

  • πŸ“Š Visual resume analysis with WordCloud generation

πŸ–₯️ Application Interface

ResumeParser LIGHT
ResumeParser LIGHT

πŸ› οΈ Tech Stack

Category Technologies
Backend FastAPI, Python 3.8+
ML/AI PyTorch, Transformers
UI Gradio
Document Processing IBM Docling
Local LLM Software LM Studio
LLM Models Llama 3.x, IBM Granite

πŸ“‹ Prerequisites

Before running the application, ensure your system meets the following requirements:

  • Python: Version 3.10 or higher
  • RAM: Minimum 8GB (16GB recommended)
  • GPU: Recommended for optimal performance (NVIDIA RTX 3050 or higher)

Reference System Specifications (one on which application was developed)

  • RAM: 16 GB DDR5
  • GPU: NVIDIA RTX 3060 (6GB)
  • Processor: Intel i7-12700H

πŸš€ Getting Started

Create and activate virtual environment

python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate

Clone repository

# clone repo
git clone https://github.com/SID-SURANGE/ResumeParser.git
cd ResumeParser

# Install dependencies
pip install -r requirements.txt

Set up environment variables

Use the below command to store the HuggingFace API key and other API keys for future integrations.(Optional for current setup)

cp .env.example .env

LM Studio

Download & Install LM Studio

After installation:

  1. Download preferred models from LM Studio's built-in model hub.
  2. Currently the tested models are Hermes LLama3.1 8B, Hermes LLama3.2 3B, IBM Granite 3.1 8B - 8 Bit quantized model
  3. Load and start the local server for model inference
  4. Keep the server running while using ResumeParser

Usage Guide

Watch step-by-step tutorial on Youtube by Developers Digest:

πŸ’» Usage

Once LM Studio is configured and its server is started up, follow below steps -

Starting Application

# development mode, 
uvicorn main:app --reload

# production mode
uvicorn main:app --host 0.0.0.0 --port 8000 --reload

Accessing the Application

🌐 API Endpoints

Category Endpoints Description
Resume parsing
  • Data extraction
  • Missing Section
  • Spell Issues
  • /api/v1/parse Parse Uploaded resume
    Question generation
  • With extracted skillset
  • Adhoc Skill based question
  • /api/v1/questions Generate interview questions

    API documentation is available at http://localhost:8000/docs.

    Sample Output Preview

    Resume Reference ResumeParser Output
    Input Resume (Overleaf Template) Parser Output

    πŸ”„ Future Enhancements

    We are actively working on adding new features:

    • πŸ’Ό Intelligent job role matching.
    • πŸ“„ Multi-page resume support.
    • πŸ€– Integration with advanced models like Claude and OpenAI.

    ⚠️ Troubleshooting

    Common Issues:

    • πŸ–₯️ Model Loading Errors: Ensure GPU requirements are met.
    • πŸ“ File Processing Issues: Verify that only PDF files are uploaded.
    • πŸ’Ύ Memory Errors: Increase system RAM or optimize workloads.

    Known Issues:

    • πŸ” Error messages need better user clarity.
    • πŸ› οΈ Handling unexpected model responses.
    • πŸ“‘ Multi-page document support is under development.
    • πŸ“Š Complex document handling (e.g., tables, graphics) is being improved.

    πŸ“„ License

    Licensed under MIT License. See LICENSE for details.

    πŸ“¬ Contact & Support

    For any issues or feature requests:

    • πŸ› Report bugs via GitHub Issues.

    Made with ❀️ by the ResumeParser Team

    If you find this project useful, please consider giving it a star ⭐ and forking it 🍴. Your support is greatly appreciated!

    About

    A FastAPI and Gradio-powered application that extracts structured information from PDF resumes. Streamlines resume screening with automated parsing, analysis, and visualization features, making HR workflows more efficient.

    Topics

    Resources

    License

    Stars

    Watchers

    Forks

    Releases

    No releases published

    Packages

     
     
     

    Contributors

    Languages