Resume_analysis_RAG / web /README.md
DEEPAN-C's picture
Upload folder using huggingface_hub
e4f4981 verified
|
Raw
History Blame Contribute Delete
7.48 kB

๐Ÿš€ ResumeAnalyse RAG Architecture

ResumeAnalyse Banner

Advanced AI-powered resume matching with RAG architecture

GitHub Stars License Python React

๐ŸŒŸ Overview

ResumeAnalyse RAG Architecture is a cutting-edge solution that revolutionizes resume screening and candidate matching using Retrieval-Augmented Generation (RAG) technology. Our system combines the power of vector databases, large language models, and modern web technologies to deliver intelligent, accurate, and efficient resume analysis.

๐ŸŽฏ Key Features

  • ๐Ÿ” Intelligent Resume Matching: Advanced vector similarity search with customizable thresholds
  • ๐Ÿ’ฌ AI-Powered Chat Assistant: Interactive analysis with LLM-driven insights
  • ๐Ÿ“Š Real-time Analytics: Dynamic scoring and ranking of candidate matches
  • ๐ŸŽจ Modern UI/UX: Futuristic design with glassmorphism effects and smooth animations
  • โšก High Performance: Optimized for speed with efficient document processing
  • ๐Ÿ”ง Flexible Configuration: Customizable matching parameters and preview modes

๐Ÿ› ๏ธ Tech Stack

Backend

  • Python 3.8+ - Core application logic
  • LangChain - LLM orchestration and document processing
  • ChromaDB - Vector database for semantic search
  • Ollama/Mistral - Local LLM integration
  • FastAPI - High-performance API framework
  • PyPDF2 - PDF document processing

Frontend

  • React 18 - Modern component-based UI
  • TypeScript - Type-safe development
  • Vite - Lightning-fast build tool
  • TailwindCSS - Utility-first styling
  • Framer Motion - Smooth animations
  • Three.js - 3D visualizations
  • shadcn/ui - Premium UI components

Infrastructure

  • Docker - Containerization (optional)
  • Git - Version control
  • GitHub Actions - CI/CD pipeline

๐Ÿš€ Quick Start

Prerequisites

  • Python 3.8 or higher
  • Node.js 16 or higher
  • npm or yarn package manager
  • Git

1. Clone Repository

git clone https://github.com/deepanmpc/ResumeAnalyse_RAG-Architecture.git
cd ResumeAnalyse_RAG-Architecture

2. Backend Setup

# Create virtual environment
python -m venv venv

# Activate virtual environment
# On Windows:
venv\Scripts\activate
# On macOS/Linux:
source venv/bin/activate

# Install dependencies
pip install -r requirements.txt

3. Environment Configuration

# Copy environment template
cp .env.example .env

# Edit .env with your configurations
# Add your LLM API keys if needed

4. Frontend Setup

# Install frontend dependencies
npm install

# Start development server
npm run dev

5. Run the Application

# Start the backend server
python app.py

# Backend will be available at http://localhost:8000
# Frontend will be available at http://localhost:5173

๐Ÿ“‹ Usage

1. Upload Documents

  • Navigate to the Resume Matching Dashboard
  • Upload your job description PDF
  • Upload candidate resume PDFs (supports multiple files)

2. Configure Matching Parameters

  • Top N Matches: Select how many top candidates to display (3, 5, or 10)
  • Similarity Threshold: Set minimum match score (0-100%)
  • Display Mode: Choose between Preview or Full Text mode

3. Analyze Results

  • Click "Analyze Matches" to process documents
  • View ranked candidates with match scores
  • Explore detailed skill breakdowns and highlights

4. Interactive Chat

  • Use the AI assistant for deeper insights
  • Ask questions like:
    • "Summarize Alex Chen's strengths"
    • "What are the top skills across all candidates?"
    • "Compare the top 3 candidates"
    • "Identify skill gaps in the candidate pool"

๐ŸŽฎ Features Walkthrough

Smart Resume Matching

Our RAG architecture processes job descriptions and resumes to create semantic embeddings, enabling intelligent matching that goes beyond keyword searches.

Resume Matching Demo

AI Chat Assistant

Interactive conversational AI that provides deep insights into candidate profiles, skill analyses, and recruitment recommendations.

Chat Assistant Demo

Real-time Analytics

Dynamic visualization of match scores, skill distributions, and candidate rankings with beautiful animations.

Analytics Demo

๐Ÿ”ง Configuration

Model Configuration

Edit config.py to customize:

  • LLM model selection (Ollama, OpenAI, etc.)
  • Vector database settings
  • Similarity thresholds
  • Processing parameters

UI Customization

Modify the design system in:

  • src/index.css - Color schemes and themes
  • tailwind.config.ts - Custom animations and utilities
  • Component files - Individual styling and behavior

๐Ÿณ Docker Deployment

# Build and run with Docker Compose
docker-compose up --build

# Or run individual services
docker build -t resume-analyser .
docker run -p 8000:8000 resume-analyser

๐Ÿงช Testing

# Run backend tests
pytest tests/

# Run frontend tests
npm run test

# Run E2E tests
npm run test:e2e

๐Ÿ“Š Performance Metrics

  • Document Processing: < 2 seconds per resume
  • Vector Search: Sub-millisecond query times
  • UI Responsiveness: 60 FPS animations
  • Memory Usage: Optimized for large document sets

๐Ÿค Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ™ Acknowledgments

  • LangChain team for the excellent RAG framework
  • ChromaDB for the powerful vector database
  • Ollama for local LLM deployment
  • shadcn/ui for the beautiful UI components
  • Framer Motion for smooth animations

๐Ÿ“ž Support


Made with โค๏ธ by the ResumeAnalyse Team

โญ Star this repo โ€ข ๐Ÿด Fork โ€ข ๐Ÿ“ข Share