Skip to content

Latest commit

 

History

History
215 lines (183 loc) · 9.36 KB

File metadata and controls

215 lines (183 loc) · 9.36 KB

Utopia-Hire

1. Introduction

This project presents a modular, AI-driven platform designed to support candidates throughout the job-seeking process using advanced natural language processing and model-orchestration techniques. The solution integrates resume evaluation, job-matching intelligence, interview simulation, and career advisory features into a unified, secure system.

The application follows a privacy-by-design, security-by-design, and user-centric methodology, ensuring high accuracy, transparency, and fairness while relying on an innovative multi-adapter AI architecture.

2. High-Level Features & Functional Components

2.1 Resume Reviewer & Rewriter

  • Processes structured resume data.
  • Uses a fine-tuned LoRA adapter to:
    • Evaluate resume quality.
    • Score clarity, consistency, and relevance.
    • Suggest corrections, rewriting, and improvement guidance.
  • Outputs structured, interpretable feedback.

2.2 AI Interviewer & Candidate Profiler

  • A specialized conversational adapter simulates real-world recruiter behavior.
  • Identifies strengths, weaknesses, communication patterns, and role fit.
  • Provides insights based on typical hiring practices and competency models.

2.3 Job Matcher

  • Takes user resume data and available job listings.
  • Produces:
    • The most relevant job offer.
    • Matching rationale.
    • Confidence score.
  • Enhances regional job relevance through contextual embeddings and domain-finetuned logic.

2.4 Footprint Scanner (Public Profile Analysis)

  • Optional module designed to analyze publicly accessible digital presence:
    • Activity signals from LinkedIn or data that the user directly provides.
    • Skills inferred from wording, achievements, and professional footprints.
  • Designed under strict compliance:
    • Only uses data the user voluntarily submits.
    • No unauthorized scraping or access.
    • Transparency guaranteed.

2.5 Career Insights Report

  • Consolidates insights from all modules:
    • Competencies analysis
    • Growth opportunities
    • Job alignment
    • Market positioning recommendations
  • Fully generated through structured prompts ensuring clarity and strategic value.

3. System Design & Modular Architecture

3.1 Overview

User (Angular App)
        ↓
API Gateway & Router (Flask)
        ↓
Intent Manager
        ↓
-----------------------------------
| Base Model (Phi-3 Mini)         |
|  - General Chat                 |
|  - Career Advisor Mode          |
-----------------------------------
        ↓
LoRA Adapter Layer
| resume_eval     |
| job_match       |
| recruiter_dialog|
| latex_resume    |
-----------------------------------
        ↓
Structured Outputs

3.2 Key Architectural Innovations

A. Dynamic LoRA Adapter Switching

  • Adapters load on-demand, without reloading the base model.
  • Achieves high performance using low-resource quantization techniques.
  • Greatly reduces computational cost and memory footprint.

B. Unified Router for Intelligent Task Allocation

  • A central intent manager classifies user queries.
  • Automatically switches between:
    • Base model (general conversation)
    • Base model in career expert mode
    • Specialized LoRA adapters
  • Ensures user receives the "right kind" of intelligence with minimal friction.

C. Career-Expert Prompt Layer

  • A specialized prompt injects:
    • Hiring best practices
    • Professional development strategies
    • Role-based advice
  • Ensures consistent, expert-grade guidance.

D. Composable Output Pipeline

  • Each model produces structured outputs in JSON.
  • The system normalizes and transforms outputs into human-readable responses.
  • Strong separation between reasoning and presentation layers.

4. Technical Workflow

4.1 Data Flow

  1. User submits message through Angular frontend.
  2. API receives request, determines required module (via intent detection).
  3. Model Manager triggers:
    • Base model or
    • Specific LoRA adapter
  4. Model inference occurs, returning structured insights.
  5. Response normalization & security filtering (to avoid hallucinated sensitive info).
  6. Frontend presents clear guidance.

4.2 Testing Methodology

The system has been tested with:

  • Real and synthetic resumes
  • Simulated job postings scraped from public sources
  • Manually generated interview dialogues
  • Mocked professional footprint data

These tests were used to measure:

  • Accuracy of job matching
  • Consistency of resume scoring
  • Reliability of recruiter simulation
  • Clarity of generated career insights

5. Security, Integrity & Ethical Considerations

5.1 Privacy-by-Design

  • No user data is stored permanently unless explicitly allowed.
  • Resume and profile data processed only in-memory.
  • No unauthorized scraping.
  • Clear user consent for footprint scanning.

5.2 Security-by-Design

  • Backend communicates strictly via secured APIs.
  • Strict CORS policies enforced.
  • No direct model access from the frontend (prevents prompt injection leakage).
  • LoRA adapters sandbox tasks, isolating evaluation logic from general reasoning.

5.3 Model Integrity

  • Base model remains separate from task-specific adapters.
  • Adapters cannot override safety layers.
  • All outputs validated through a post-processing filter.

5.4 Transparency & Fairness

  • Candidate receives explanation for every evaluation.
  • Job matching includes explicit reasoning & confidence scores.
  • Interview insights based on competency taxonomy, not demographic traits.
  • No profiling based on sensitive or protected attributes.

6. Alignment with Required Criteria

Criterion How the Solution Meets It
Resume Reviewer/Rewriter Dedicated LoRA adapter trained on structured resume data; outputs scores, corrections, and rewrite suggestions.
AI Interviewer & Profiler Specialized dialog adapter simulates recruiter behavior, extracts strengths/weaknesses, and gives interview feedback.
Job Matcher LoRA adapter trained to match JSON resumes to structured job listings and explain decisions.
Footprint Scanner Privacy-preserving analyzer for user-submitted public profile data; no unauthorized access.
Career Insights Report Multi-module pipeline that consolidates resume, job fit, interview and profile signals into a strategic growth roadmap.
Modular Architecture Adapter-based, router-driven design; scalable; easy to extend with new modules.
Testing with Real/Simulated Data Resumes, recruiter dialogs, job listings and profiles tested across scenarios.
Presentation & Innovation Modular AI chaining + intent routing + adapter orchestration = a novel architectural approach.
User-centric, Privacy-by-Design Minimal data retention, transparent outputs, strict isolation of components.
Security & Professionalism Endpoint isolation, sanitization layers, safe prompting, and consistent AI ethics compliance.

7. Conclusion

The system delivers a comprehensive, secure, AI-powered career assistance solution through a highly modular architecture built around LoRA specialization and intelligent routing. Its strong privacy and security foundation, combined with multi-level AI capabilities, positions it as an innovative and scalable platform for modern job seekers.

The architecture can easily be extended with:

  • Additional adapters
  • Domain-specific evaluators
  • Multilingual support
  • More advanced scoring modules

The solution demonstrates innovation, scalability, and ethical-by-design intelligence, making it suitable for academic, industrial, or entrepreneurial deployment.


Folder Structure

assistant-flask-api/

  • Purpose: Backend API for managing user requests and routing them to the appropriate AI modules.
  • Key Files:
    • app.py: Main entry point for the Flask application.
    • router.py: Handles routing of API endpoints.
    • model_handler.py: Manages interactions with the AI models.
    • requirements.txt: Lists Python dependencies.

datasets/

  • Purpose: Contains JSONL datasets for training and testing the AI models.
  • Key Files:
    • job_match.jsonl: Dataset for job matching.
    • resume_eval.jsonl: Dataset for resume evaluation.

hiring-web/

  • Purpose: Full-stack web application for user interaction.
  • Subfolders:
    • ai-hiring-backApp/: Node.js backend for handling user authentication and CV uploads.
    • ai-hiring-frontAPP/: Angular frontend for user interaction.

flask_server/

  • Purpose: Additional Flask server for auxiliary tasks like LinkedIn scraping and PDF parsing.
  • Key Files:
    • linkedin_scrapper.py: Scrapes LinkedIn data (with user consent).
    • pdf_nlp_parser.py: Parses PDF resumes for NLP processing.

lora_adapters/

  • Purpose: Contains LoRA adapters for specialized AI tasks.
  • Subfolders:
    • resume_eval/: Adapter for resume evaluation.
    • job_match/: Adapter for job matching.
    • recruiter_dialog/: Adapter for recruiter simulation.
    • latex_resume/: Adapter for LaTeX resume generation.

latex_resume/

  • Purpose: Contains resources for generating LaTeX resumes.
  • Key Files:
    • adapter_config.json: Configuration for the LaTeX resume adapter.

lora-train.ipynb

  • Purpose: Jupyter notebook for training and fine-tuning LoRA adapters.