resume_parser.mp4
This repository contains the Resume Intelligence AI, a sophisticated platform designed to bridge the gap between resume claims and actual technical ability. By integrating automated verification of digital footprints and AI-driven interviewing, we transform static documents into a comprehensive "Recruiter Intelligence" report.
- Resume Parsing: Accurately extracting key qualifications using NLP.
- URL Discovery & Web Crawling: Identifying relevant online portfolios and gathering real-time data from public sources.
- Code Insight Extraction: Leveraging AI to analyze repositories for tech stacks and contribution complexity.
- AI Interviewing: Contextual assessments designed to reflect true candidate abilities.
The application operates in two primary modes:
- Resume Analyzer: Uses Mindee for OCR, PyMuPDF for link extraction, and Firecrawl for web scraping to build a rich user profile via OpenRouter LLMs.
- ATS Scorer: Uses
sentence-transformersto calculate a semantic match percentage between your profile and a job description.
Ensure you have Python 3.11+ installed. You will also need API keys for the following services:
- Mindee: For resume parsing.
- Firecrawl: For scraping external links (GitHub, LinkedIn, Portfolio).
- OpenRouter: To access AI models (e.g.,
arcee-ai/trinity-large-preview).
Clone the repository and install the required dependencies:
pip install -r requirements.txt
Create a .streamlit/secrets.toml file or set environment variables for the following keys:
MINDEE_API_KEY = "your_mindee_key"
FIRECRAWL_API_KEY = "your_firecrawl_key"
OPENROUTER_API_KEY = "your_openrouter_key"
Run the interactive dashboard to test the full workflow visually:
streamlit run app_ui.py
- Tab 1 (Analyzer): Upload a PDF resume. The system will parse text, find links, scrape their content, and generate a recruiter-ready profile.
- Tab 2 (Scorer): Paste the generated profile and a target Job Description. The system will generate a match score and a gauge chart.
You can also run the backend as a standalone service:
uvicorn main:app --reload
- Health Check:
GET / - Process Resume:
POST /process_resumewith a JSON body{"pdf_path": "path/to/resume.pdf"}. - Score Resume:
POST /score_resumewith{"user_summary": "...", "jd_summary": "..."}.
app_ui.py: Streamlit frontend implementation.main.py: FastAPI orchestrator for the backend.mindee_service.py: Logic for extracting structured data from PDFs.pdf_service.py: Extracts HTTP/HTTPS links from resume files.firecrawl_service.py: Scrapes content from portfolio or social links.transformer_service.py: Computes semantic similarity scores.openrouter_service.py: Manages multi-turn AI reasoning for profile generation.
Test the deployed application here: Resume Intelligence AI