Screen 100 Resumes At Once: Score, Fix, and Rebuild It Against the Job (Free, On-Device)

Batch Score & Triage with Local LLMs

Download llama.cpp or Ollama and pull a 7B–8B parameter model (e.g., llama3.1:8b or nemotron-3-8b). Convert all 100 PDFs/DOCX to raw text using pypdf or python-docx in a local script; strip headers, footers, and contact info to anonymize and reduce token count. Construct a single system prompt defining the Job Description (JD) as a structured rubric: {"must_have": ["Python", "K8s", "5y exp"], "nice_to_have": ["Kafka", "Terraform"], "red_flags": ["employment gaps >1yr", "job hopping <12mo"]}. Iterate through resumes in batches of 5–10 per context window. Request strict JSON output: {"score": 0-100, "matched_must": [], "missing_must": [], "matched_nice": [], "red_flags_found": [], "summary": "2-sentence verdict"}. Parse JSON immediately; discard any response failing schema validation. Sort CSV output by score descending. Manually review only the top 20 and the "borderline" 60–75 band. This avoids API costs, keeps PII off-cloud, and processes 100 resumes in ~15 minutes on an M-series Mac or modern GPU.

Auto-Rewrite & Rebuild for Top Candidates

For the top 15–20 candidates, run a second "Rebuild" pass. Feed the original resume text + JD rubric + the previous "missing_must" list into a prompt instructing: "Rewrite this resume to explicitly address missing keywords using *only* truthful inferences from existing experience. Do not hallucinate. Output ATS-optimized Markdown." Use a lower temperature (0.1–0.2). Parse the Markdown; run a deterministic diff (e.g., difflib) against the original to flag every insertion. Present the recruiter a side-by-side view: Original | Rebuilt | Change Type (Keyword Injection / Rephrase / Quantification). Require human approval on every flagged insertion before export. Finally, pipe approved Markdown through pandoc with a clean, single-column LaTeX template (moderncv or custom) to generate standardized, comparison-ready PDFs.

Skip the DIY. VaultPDF's Screen the Stack room does exactly this — drop a folder, get a ranked sheet back, nothing ever leaves your machine.
Try it free →