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
<div align="center">
![ResumeAnalyse Banner](https://via.placeholder.com/800x200/1a1a2e/3b82f6?text=ResumeAnalyse+RAG+Architecture)
**Advanced AI-powered resume matching with RAG architecture**
[![GitHub Stars](https://img.shields.io/github/stars/deepanmpc/ResumeAnalyse_RAG-Architecture?style=for-the-badge)](https://github.com/deepanmpc/ResumeAnalyse_RAG-Architecture)
[![License](https://img.shields.io/badge/License-MIT-blue?style=for-the-badge)](LICENSE)
[![Python](https://img.shields.io/badge/Python-3.8+-green?style=for-the-badge&logo=python)](https://python.org)
[![React](https://img.shields.io/badge/React-18+-blue?style=for-the-badge&logo=react)](https://reactjs.org)
</div>
## ๐ŸŒŸ 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
```bash
git clone https://github.com/deepanmpc/ResumeAnalyse_RAG-Architecture.git
cd ResumeAnalyse_RAG-Architecture
```
### 2. Backend Setup
```bash
# 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
```bash
# Copy environment template
cp .env.example .env
# Edit .env with your configurations
# Add your LLM API keys if needed
```
### 4. Frontend Setup
```bash
# Install frontend dependencies
npm install
# Start development server
npm run dev
```
### 5. Run the Application
```bash
# 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](https://via.placeholder.com/600x300/1a1a2e/3b82f6?text=Resume+Matching+Dashboard)
### AI Chat Assistant
Interactive conversational AI that provides deep insights into candidate profiles, skill analyses, and recruitment recommendations.
![Chat Assistant Demo](https://via.placeholder.com/600x300/1a1a2e/7c3aed?text=AI+Chat+Assistant)
### Real-time Analytics
Dynamic visualization of match scores, skill distributions, and candidate rankings with beautiful animations.
![Analytics Demo](https://via.placeholder.com/600x300/1a1a2e/06b6d4?text=Analytics+Dashboard)
## ๐Ÿ”ง 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
```bash
# 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
```bash
# 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](CONTRIBUTING.md) 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](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
- ๐Ÿ“ง Email: support@resumeanalyse.com
- ๐Ÿ’ฌ Discord: [Join our community](https://discord.gg/resumeanalyse)
- ๐Ÿ“– Documentation: [docs.resumeanalyse.com](https://docs.resumeanalyse.com)
- ๐Ÿ› Issues: [GitHub Issues](https://github.com/deepanmpc/ResumeAnalyse_RAG-Architecture/issues)
---
<div align="center">
**Made with โค๏ธ by the ResumeAnalyse Team**
[โญ Star this repo](https://github.com/deepanmpc/ResumeAnalyse_RAG-Architecture) โ€ข [๐Ÿด Fork](https://github.com/deepanmpc/ResumeAnalyse_RAG-Architecture/fork) โ€ข [๐Ÿ“ข Share](https://twitter.com/intent/tweet?text=Check%20out%20this%20amazing%20RAG-powered%20resume%20analysis%20tool!&url=https://github.com/deepanmpc/ResumeAnalyse_RAG-Architecture)
</div>