Skip to content

Bhaveshs08/AI_Hiring_Recommendation_System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI Hiring Recommendation System

The AI Hiring Recommendation System is a machine learning-driven application designed to automate and optimize the candidate shortlisting process. It analyzes job descriptions and candidate resumes, converts them into numerical feature vectors using NLP, and computes similarity scores to recommend candidates best suited for a given role. This project demonstrates robust data preprocessing, semantic text analysis, weighted scoring, and a modular ML pipeline for practical hiring automation.

Table of Contents

Overview

Features

System Workflow

Technologies Used

Project Structure

Installation

Usage

Input Format

Output Format

Sample Results

Future Enhancements

Contributing

License

Overview

Recruiters spend significant time screening resumes against job descriptions. This system automates that task by using NLP, vectorization, and similarity scoring to produce ranked recommendations. It is designed for HR teams, AI-based recruiting platforms, talent-tech systems, and hiring automation pipelines.

Features

Automated Candidate–Job Matching Vectorizes job descriptions and resumes using TF-IDF or advanced embeddings.

Weighted Scoring Mechanism Prioritizes key skills, experience, and domain requirements.

Ranking Engine Outputs top candidates for each job description based on match score.

Modular Architecture Easy to extend, retrain, or integrate with APIs.

Error Handling & Logging Improves debugging and production readiness.

System Workflow

Data Collection Import candidate profiles and job descriptions.

Preprocessing Cleaning, tokenization, stopword removal, normalization.

Feature Engineering TF-IDF vectorization or transformer embeddings (optional upgrade).

Similarity Computation Cosine similarity or hybrid weighted scoring.

Candidate Ranking Generates scores and sorts candidates for each job.

Technologies Used

Python 3.x

Pandas, NumPy — Data processing

Scikit-learn — TF-IDF modeling, similarity

NLTK / SpaCy — NLP preprocessing

Flask / FastAPI (optional) — API integration

Jupyter Notebook — Experiments

Project Structure AI_Hiring_Recommendation_System/ │── data/ │ ├── candidates.csv │ ├── job_descriptions.csv │ │── src/ │ ├── preprocessing.py │ ├── feature_engineering.py │ ├── scoring.py │ ├── ranking.py │ │── notebooks/ │ ├── experiments.ipynb │ │── results/ │ ├── sample_output.csv │ │── app.py (optional API) │── requirements.txt │── README.md │── .gitignore

Installation

  1. Clone the Repository git clone https://github.com//AI_Hiring_Recommendation_System.git cd AI_Hiring_Recommendation_System

  2. Create Virtual Environment python -m venv venv source venv/bin/activate # Mac/Linux venv\Scripts\activate # Windows

  3. Install Dependencies pip install -r requirements.txt

Usage Run the main script: python app.py

Or run the notebook:

Open notebooks/experiments.ipynb in Jupyter.

Input Format Candidates CSV candidate_id,name,skills,experience,resume_text

Job Description CSV jd_id,role,skills_required,experience_required,jd_text

Output Format

A ranked list of candidate recommendations per job description:

candidate_id | jd_id | match_score

Sample Results

Example output from cosine similarity:

Candidate: A123
Job ID: JD01
Match Score: 0.78

Future Enhancements

Shift to transformer embeddings (BERT, Sentence-BERT).

Add experience weighting with custom domain logic.

Integrate a Flask/FastAPI REST API.

Add visualization dashboards.

Deploy to cloud (AWS/GCP/Azure).

Contributing

Pull requests are welcome. Please open an issue first to discuss proposed changes.

License

This project is open-source under the MIT License.

About

AI Hiring Recommendation System is an ML-powered tool that analyzes job descriptions and candidate profiles to generate match scores. Using NLP, vectorization, and weighted similarity, it ranks candidates based on skills and relevance, helping streamline recruitment and improve shortlisting accuracy.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors