The Problem with Modern Hiring
Most HR departments spend up to 30 hours a week just reading through unqualified resumes. Traditional ATS (Applicant Tracking Systems) rely on simple keyword matching, meaning highly qualified candidates are often rejected just because they didn't use the exact synonym the ATS was looking for.
We wanted to build an AI agent that didn't just look for keywords, but actually understood the semantic meaning of a candidate's experience.
Our Architecture: RAG + TF-IDF
To achieve 98% accuracy and eliminate hallucination, we couldn't just throw resumes into a standard LLM. We needed a deterministic scoring pipeline.
- OCR Pipeline: First, we built a robust OCR pipeline using AWS Textract to normalize messy PDFs into structured JSON.
- TF-IDF Baseline: We use Term Frequency-Inverse Document Frequency (TF-IDF) as a fast, baseline filter to remove resumes that completely lack domain relevance.
- Semantic Scoring: For the remaining resumes, we use OpenAI's embeddings to calculate semantic similarity against the Job Description.
- LLM Summarization: Finally, an LLM generates a 3-bullet-point summary explaining exactly *why* a candidate is a good fit, saving the recruiter from reading the full document.
The Results
In our initial benchmarks, the pipeline processed a batch of 500 resumes in exactly 4 minutes. It successfully identified the top 10 candidates with a 98% alignment to human recruiter selections.
This isn't just a time-saver; it's a competitive advantage for any company trying to hire top talent before their competitors do.