krishna-resumatch-7b

A fine-tuned Qwen2.5-7B-Instruct model specialized for resume tailoring from job descriptions. Given a job description, it generates an ATS-optimized 1-line professional bio and 6 categorized technical skill sections matched to the JD's requirements.

Key Details

Base model Qwen/Qwen2.5-7B-Instruct
Method QLoRA (4-bit NF4, rank 16, alpha 16)
Library Unsloth + TRL SFTTrainer
Dataset Custom JD-to-resume pairs (seed dataset)
Hardware NVIDIA RTX A5000 (24GB VRAM) on RunPod
Training time ~6.5 minutes (300 steps)
Final loss 0.218
Parameters trained 40.4M of 7.66B (0.53%)
Format ChatML (<|im_start|> / <|im_end|>)
Output Merged 16-bit safetensors

What It Does

Input: A job description with role title, company context, and technical requirements.

Output: A structured resume optimization containing:

  1. A 1-line professional bio emphasizing quantifiable business impact
  2. Exactly 6 technical skill headers, each populated with relevant skills matched to the JD

The model is trained to think like an ATS (Applicant Tracking System) and a technical recruiter simultaneously — maximizing keyword alignment while keeping skills grounded in realistic engineering experience.

Usage

Transformers

from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained("sriksven/krishna-resumatch-7b")
tokenizer = AutoTokenizer.from_pretrained("sriksven/krishna-resumatch-7b")

messages = [
    {
        "role": "system",
        "content": (
            "You are a resume optimization expert. Given a job description, generate "
            "a tailored 1-line bio mentioning $1.5M USD impact and exactly 6 purely "
            "technical skill headers with relevant skills for each. No soft skills. "
            "Start the bio with Engineer."
        ),
    },
    {
        "role": "user",
        "content": (
            "Given this job description, generate a tailored 1-line resume bio and "
            "6 technical skill headers with relevant skills for each.\n\n"
            "Job Description: AI Engineer at a healthcare startup. Requirements: "
            "LangChain, RAG pipelines, FastAPI, Docker, PostgreSQL, OpenAI API, "
            "vector databases, Python, CI/CD, model evaluation."
        ),
    },
]

inputs = tokenizer.apply_chat_template(messages, return_tensors="pt", add_generation_prompt=True)
outputs = model.generate(inputs, max_new_tokens=512)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

Expected Output Format

Bio: Engineer with production ML and AI systems experience delivering $1.5M USD
in business impact through scalable architectures and data-driven solutions.

Skills:
LLM & Agent Frameworks: LangChain, OpenAI API, GPT-4, Prompt Engineering, RAG Pipelines, Model Evaluation
Vector Databases & Retrieval: ChromaDB, Qdrant, FAISS, Semantic Search, Embedding Models
Backend & APIs: FastAPI, REST APIs, Python, PostgreSQL, Redis
Cloud & DevOps: Docker, CI/CD, GitHub Actions, AWS, Deployment Automation
Data Engineering: ETL Pipelines, SQL, Data Modeling, Data Validation
Testing & Monitoring: Pytest, Unit Testing, Logging, Observability, CloudWatch

Unsloth (faster inference)

from unsloth import FastLanguageModel

model, tokenizer = FastLanguageModel.from_pretrained(
    model_name="sriksven/krishna-resumatch-7b",
    max_seq_length=2048,
    load_in_4bit=True,
)
FastLanguageModel.for_inference(model)

Design Philosophy

The model follows strict resume optimization rules:

  • Bio: Always 1 line, starts with "Engineer", mentions $1.5M USD impact, no years of experience, no skills listed in bio
  • Skills: Exactly 6 headers, all purely technical, no soft skills, no qualifiers like "Expert"
  • ATS alignment: Skills are selected to maximize keyword match with the job description
  • Grounded: Only includes skills that map to realistic ML/data/software engineering experience

Intended Use

  • Automated resume tailoring for job applications
  • ATS keyword optimization tools
  • Career coaching and job search platforms
  • Research on instruction-following for structured document generation

Limitations

  • Trained on a small seed dataset — may not generalize perfectly to all JD categories
  • Outputs are templated to a specific resume style (bio + 6 skill headers)
  • Does not generate full resumes (experience bullets, education, projects)
  • Skill suggestions are based on training patterns, not verified against actual candidate background
  • Best results with the specific system prompt format used during training

Training Infrastructure

GPU NVIDIA RTX A5000 24GB
Cloud RunPod ($0.27/hr)
Framework Unsloth 2026.5.2 + TRL + Transformers 5.5.0
Precision BF16 training, 4-bit NF4 base quantization
Optimizer AdamW 8-bit
Learning rate 1e-4, cosine decay
Batch size 8 effective (2 per device × 4 accumulation)
Packing Disabled (small dataset)
Steps 300 (150 epochs over seed data)

Source Code

Training scripts and configs: github.com/sriksven/LLM-FineTune-Suite

License

Apache 2.0

Downloads last month
1
Safetensors
Model size
8B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for sriksven/ResumeForge-8b

Base model

Qwen/Qwen2.5-7B
Finetuned
(3316)
this model