Basic Scorer
BasicScorer
Bases: BaseScorer
Basic ATS scorer that evaluates resumes using keyword and skills matching.
This scorer provides a lightweight alternative to ProScorer, focusing on: - Keyword matching (40% weight): Matches keywords from job description - Skills matching (60% weight): Matches required and preferred skills
The BasicScorer does not use machine learning models, making it faster and requiring fewer dependencies. It's ideal for: - Quick scoring without ML overhead - Environments without GPU support - Basic keyword/skills matching requirements
Attributes:
| Name | Type | Description |
|---|---|---|
keyword_analyzer |
Analyzer for keyword matching |
|
skills_analyzer |
Analyzer for skills matching |
|
weights |
Dictionary mapping score categories to their weights |
Example
Initialize the BasicScorer with default analyzers and weights.
Source code in at_scorer/scorers/basic.py
Functions
score
Score a resume against a job description using basic keyword and skills matching.
This method performs a lightweight analysis focusing on: 1. Keyword matching: Checks if job keywords appear in the resume 2. Skills matching: Compares required and preferred skills with resume skills
The final score is a weighted combination of these two factors.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
resume
|
ResumeData
|
The resume data to be scored. |
required |
job
|
JobDescription
|
The job description to score against (structured or text-based). |
required |
Returns:
| Type | Description |
|---|---|
ScoreResult
|
ScoreResult containing: - overall_score: Weighted score (0-100) combining keyword (40%) and skills (60%) - breakdown: Individual scores for keywords and skills - recommendations: Suggestions for missing keywords and skills - matched_keywords: Keywords found in the resume - matched_skills: Skills that match job requirements (required + preferred) - missing_skills: Required skills not found in the resume |