How AI Reads Resumes: Semantic Matching Explained

For decades, applicant tracking systems have worked the same way: a recruiter pastes in keywords, and the software returns resumes that contain those exact words. If your resume said "led a team of eight engineers" and the job description said "engineering management experience," you didn't match. Even though, to any human reader, you obviously did.

Generative AI changes this completely. Instead of comparing words, it compares meaning. Here's how that actually works.

From words to vectors

When Mosaic AI ingests a resume, the first thing it does is convert the text into a vector embedding. An embedding is a list of numbers — typically 1,536 of them — that represents the semantic content of the text. You can think of it as a coordinate in a very high-dimensional space where "meaning" is the geometry.

Two resumes that describe similar work end up close together in that space, even if they share zero exact words. "Built a distributed payment system handling 10M transactions per day" and "Architected scalable financial infrastructure for high-volume processing" live in roughly the same neighborhood. A keyword filter sees two completely different sentences. A vector embedding sees the same idea expressed twice.

From vectors to matches

The job description goes through the same process. Now you have two vectors — one for the role, one for the candidate — and finding the match is a single mathematical operation called cosine similarity. It returns a number between 0 and 1 that tells you how conceptually close the two are.

This is why Mosaic AI can surface a Site Reliability Engineer for a DevOps role, or recognize that a "Customer Success Manager" with the right responsibilities might be perfect for an "Account Executive" opening. The titles differ. The keywords differ. The meaning matches.

Why LLMs make this even better

Embeddings handle the matching. Large language models (LLMs) handle the reasoning. Once Mosaic AI has identified candidates whose experience semantically matches a role, an LLM reads the actual resume and job description together and explains why the match works — and where the gaps are.

This is what lets a recruiter ask: "Out of these five candidates, who has the strongest experience leading distributed teams?" and get back a real answer, with citations from the resumes themselves. It's the difference between a search engine and an assistant.

What this means for your hiring

Three things change when you move from keyword matching to semantic AI matching:

  • You see more qualified candidates. The ones who describe their work in unexpected ways stop falling through the cracks.
  • You waste less time on bad matches. A resume with the right keywords but the wrong actual experience no longer ranks high.
  • You get explanations, not just scores. Every match comes with reasoning, so you understand the "why" before you reach out.

The technology behind Mosaic AI's recruiting assistant is the same family of models powering ChatGPT and Claude — applied specifically to the problem of understanding people and jobs. If you want to see what semantic matching looks like with your own resumes and requisitions, book a demo.