Skip to content

About

AI-powered job-specific resume generation and resume intelligence platform.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

ResumeForge AI — Phase 1: Data Architecture & Pipeline

ResumeForge AI is an autonomous resume engineering system that fine-tunes domain-specialized language models to analyze job postings, evaluate candidate profiles, match skills, select impactful projects, optimize resume bullets using the STAR/XYZ framework, verify claims against verifiable evidence, and generate high-impact resume sections.


Phase 1 Implementation Overview

Phase 1 establishes the foundational data architecture, validation schemas, preprocessing pipeline, dataset stratification, and automated quality gates:

  1. Pydantic v2 Schemas (schemas/):

    • TrainingExample: Enforces strict data integrity with runtime validation for instructions, inputs, outputs, allowed task categories, allowed data sources, and provenance tracking. Rejects empty/whitespace strings and unexpected extra fields.
    • ResumeDocument, Education, Experience, Project: Structured resume schema models for structured resume representation.
  2. Synthetic Initial Dataset (data/raw/resume_training.jsonl):

    • 35 carefully authored, high-variety instruction examples across all 7 core task categories (5 examples per category).
    • Fully marked with "data_source": "synthetic", clear license (CC-BY-4.0), and zero personal data leakage.
  3. Data Processing Pipeline (training/):

    • prepare_dataset.py: Reads raw JSONL, validates schemas, normalizes whitespace and line formatting, detects duplicate IDs and duplicate content signatures, preserves provenance fields, and writes clean records to data/processed/resume_processed.jsonl.
    • validate_dataset.py: Independent schema validation audit with detailed line-by-line defect reporting and non-zero exit codes on validation failures.
    • split_dataset.py: Stratified 80:20 train/evaluation split using a fixed random seed, guaranteeing category preservation and zero duplicate/content leakage. Outputs to data/processed/train_dataset.jsonl (28 records) and data/evaluation/evaluation_dataset.jsonl (7 records).
    • dataset_statistics.py: Calculates comprehensive metrics (record counts, category distributions, data sources, character and word length statistics, train/eval splits) and writes reports/dataset_report.json.
  4. Testing Suite (tests/):

    • 55 automated pytest tests covering schemas, data validation, preprocessing, deduplication, whitespace normalization, deterministic splitting, and zero-leakage verification.

Project Structure

ResumeForge-AI/
├── data/
│   ├── raw/
│   │   └── resume_training.jsonl           # 35 raw authored training examples
│   ├── processed/
│   │   ├── resume_processed.jsonl          # Cleaned & normalized dataset
│   │   └── train_dataset.jsonl             # 80% stratified training split (28 records)
│   └── evaluation/
│       └── evaluation_dataset.jsonl        # 20% stratified evaluation split (7 records)
├── documentation/
│   ├── AI_ARCHITECTURE.md                  # System architecture & model fine-tuning strategy
│   ├── DATASET_GUIDELINES.md               # Data authoring, provenance & quality guidelines
│   └── PROJECT_OVERVIEW.md                 # Project roadmap, milestones & governance
├── reports/
│   └── dataset_report.json                 # Auto-generated dataset statistics report
├── schemas/
│   ├── __init__.py
│   ├── resume_schema.py                    # ResumeDocument, Education, Experience, Project
│   └── training_schema.py                  # TrainingExample, TaskCategory, DataSource
├── tests/
│   ├── test_dataset_split.py               # Splitting, stratification & zero-leakage tests
│   ├── test_preprocessing.py               # Preprocessing, normalization & deduplication tests
│   ├── test_schema.py                      # Schema validation & type checking tests
│   └── test_validation.py                  # Dataset validation & error reporting tests
├── training/
│   ├── __init__.py
│   ├── dataset_statistics.py               # Statistics aggregation & reporting
│   ├── evaluate.py                         # Evaluation runner stub (Phase 2)
│   ├── generate_initial_data.py            # Initial dataset authoring script
│   ├── prepare_dataset.py                  # Ingestion, validation & normalization
│   ├── split_dataset.py                    # Stratified train/eval split
│   ├── train.py                            # Model fine-tuning stub (Phase 2)
│   └── validate_dataset.py                 # Standalone validation CLI
├── pyproject.toml
└── README.md

Allowed Task Categories

  • job_analysis: Deconstructing job descriptions into must-haves, preferred qualifications, and core responsibilities.
  • profile_analysis: Assessing candidate backgrounds, career trajectory, core strengths, and transition paths.
  • skill_matching: Calculating technical match coverage, gap analysis, and transferable skill equivalencies.
  • project_selection: Selecting the highest-leverage portfolio projects tailored to a specific target role.
  • resume_optimization: Rewriting bullets into quantified Google XYZ / STAR format with measured impact.
  • evidence_verification: Fact-checking claims against evidence, auditing plausibility, and flagging unverified claims.
  • resume_generation: Synthesizing targeted professional summaries, core competencies, and experience sections.

Quickstart & Reproduction Commands

1. Run Data Preparation & Normalization

uv run python training/prepare_dataset.py

2. Run Dataset Validation Audit

uv run python training/validate_dataset.py

3. Run Stratified Dataset Splitting

uv run python training/split_dataset.py

4. Generate Dataset Statistics Report

uv run python training/dataset_statistics.py

5. Run Complete Test Suite

uv run pytest -v

About

AI-powered job-specific resume generation and resume intelligence platform.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages