Skip to content
Innovialabs

AI Resume Screening for HR: Setup, Bias and Limits

Practice4 min

In short

An LLM is useful for extracting facts from CVs and matching them to predefined criteria with an explained score, but not for automatic rejection: a recruiter makes the decision, and candidate data is processed with consent and kept to a minimum.

What AI can and cannot do

LLMs handle the routine well: reading CVs in any format, extracting facts and matching them to job requirements. That saves time on the first pass through a large volume of applications.

What AI should not do:

  • reject candidates on its own;
  • judge "culture fit", personality or potential from text;
  • take age, gender, ethnicity, marital status, photos or similar attributes into account.

The model's proper role is a recruiter's assistant that prepares a structured summary and a preliminary score with reasoning.

How to set up the process

1. Define criteria before launch

The model evaluates exactly what you give it. Split the requirements:

  • must-have — for example, experience with a specific technology, a language, the right to work in the country;
  • nice-to-have — extra skills, industry background;
  • irrelevant — everything else, including university and "prestigious" past employers unless the role truly requires them.

Criteria must be verifiable from the CV text. "Good communicator" is a poor criterion; "negotiated with clients" works.

2. Extract first, then evaluate

Use two steps instead of one "rate this CV from 1 to 10":

  1. Extraction: the model returns JSON with experience, skills, languages and education — only facts found in the text.
  2. Matching: for each criterion, "met / not met / unclear" plus a quote from the CV as evidence.
{
  "criterion": "3+ years of commercial Python development",
  "status": "met",
  "evidence": "Python developer, 2020-2024, Company X"
}

Calculate the final score in code using rules rather than asking the model to invent a number. That keeps the score reproducible and explainable.

3. A human makes the decision

The recruiter sees the summary, statuses and quotes, not just a ranking. Candidates marked "unclear" on must-have criteria go to manual review, not to rejection.

How to reduce bias

Models are trained on text that contains historical skews, so discrimination can creep in unnoticed.

  • Strip protected attributes before evaluation: name, photo, date of birth, gender, marital status, address. You can split extraction and evaluation so the evaluator never sees these fields.
  • Do not feed past decisions as examples of "good candidates" unless you are sure they were fair.
  • Test with pairs: the same CV with a different name or a career gap should get the same score.
  • Watch career breaks: parental leave, military service or illness should not lower the score unless a criterion requires it.
  • Audit regularly: compare how scores are distributed across candidate groups where this is lawful and the data exists.

Candidates' personal data

CVs are personal data. Basic rules:

  • Legal basis: state in the job ad or application form that CVs are analyzed with automated tools, and obtain consent where the law requires it.
  • Model provider: choose a plan or API whose terms exclude using your data for training; check where it is stored.
  • Local requirements: Uzbekistan has a personal data law with rules on consent and storage of citizens' data; if you hire in other countries, their laws apply too. Agree on the exact setup with a lawyer.
  • Minimization: send the model only the CV text, without extra attachments or correspondence.
  • Retention: delete rejected candidates' data according to a defined rule.

Common mistakes

MistakeConsequence
Auto-rejecting low scoreslosing strong candidates, legal risk
Vague criteriarandom, unexplainable scores
Scores without quotesthe recruiter cannot verify the result
Free consumer chat service for CVspersonal data leakage
No bias testinghidden discrimination

FAQ

It is not advisable. Models make mistakes on unusual CVs, and automatic rejection without human involvement carries legal and reputational risk. It is safer to automate sorting and summaries and leave the decision to a recruiter.

We can help with this

If you'd rather get the result than figure it all out yourself — this is what we do every day.

Discuss a project

Read next

Have an idea or a task? Tell us about it

We'll reply within one business day and propose a solution. The consultation is free.