/ Модель

Характеристики

Контекст
512 токенов
Лицензия
MIT
Архитектура
distilbert · dense
Библиотека
transformers
Опубликована
6 сен 2026

distilbert-resume-job-matcher

Классификация текстаТекст → label3 профессии

Классификатор на базе DistilBERT оценивает соответствие резюме кандидата описанию вакансии по трём уровням релевантности.

19скачиваний за 30 дней0лайковвеса обновлены6 сен 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Модель Anshika0509/distilbert-resume-job-matcher — классификатор пар текста на базе DistilBERT, дообученный на сопоставлении резюме кандидатов с описаниями вакансий. Она кодирует пару «резюме [SEP] описание вакансии» и относит её к одному из трёх классов: «не подходит», «возможное соответствие» или «хорошее соответствие». Модель предназначена для предварительной оценки релевантности профилей, самооценки кандидатов и поддержки рекрутеров при сортировке резюме.

Архитектура — DistilBERT с шестью слоями, размерностью скрытого состояния 768 и 12 головами внимания, дополненный классификационной головой. Модель принимает текст и выдаёт метку класса соответствия; заявленная длина контекста — 512 токенов. Карточка описывает английскоязычные данные и обучение на синтетических профилях. Указанная лицензия — MIT.

Оценка основана на семантическом сходстве и может учитывать синонимы и близкие навыки, однако результаты на синтетических данных не гарантируют качества на реальных резюме и вакансиях. Длинные входы обрезаются после 512 токенов. Модель следует использовать как вспомогательный инструмент, а не для автоматического принятия решений о найме.

Сценарии применения

  • оценка соответствия резюме конкретной вакансии
  • предварительная сортировка резюме для рекрутера
  • самооценка кандидатом соответствия требованиям вакансии
  • выявление частичного совпадения навыков и смежности ролей

Ограничения

Обучение проводилось на синтетических профилях, поэтому качество на реальных резюме и региональной терминологии может отличаться. Входы длиннее 512 токенов обрезаются; модель не следует использовать как автоматический механизм принятия решений о найме.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

AI Resume–Job Description Semantic Matching System

Model Description

This repository contains a DistilBERT (distilbert-base-uncased) transformer model fine-tuned for sequence pair classification on candidate resumes and job descriptions.

Unlike traditional keyword-based Applicant Tracking Systems (ATS) that rely strictly on lexical overlap (BM25 / TF-IDF), this model captures deep semantic relationships, synonymy, domain equivalencies, and cross-functional skill alignments.

Intended Use

  • Candidate Self-Assessment: Analyze compatibility with target job descriptions and identify missing skills.
  • Recruiter Decision-Support: Assist human recruiters in prioritizing relevant candidate profiles.
  • NLP Research & Education: Demonstration of fine-tuning Transformers on structured-unstructured text pairs.

Model Architecture

Resume [SEP] Job Description
         ↓
  DistilBERT Encoder (6 Layers, 768 Hidden Dim, 12 Heads)
         ↓
  [CLS] Representation
         ↓
  Pre-Classifier Dense Layer (ReLU + Dropout 0.2)
         ↓
  Classification Head (3 Output Logits)
         ↓
  Softmax Probabilities: [No Fit, Potential Fit, Good Fit]

Classes & Label Definitions

  • Class 0 (No Fit): Cross-domain mismatch (e.g. Sales Representative vs Software Engineer) with negligible skill or domain relevance.
  • Class 1 (Potential Fit): Adjacent role family or partial skill overlap (e.g. Data Analyst vs BI Analyst, or same role family with a seniority shift).
  • Class 2 (Good Fit): Target role family, high core skill coverage (≥70%), and aligned experience/seniority level.

Training Details

  • Base Architecture: distilbert-base-uncased
  • Source Dataset: michaelozon/candidate-matching-synthetic (10,000 candidate profiles, 24 roles, 73 skills)
  • Zero-Leakage Splitting: Resumes partitioned by candidate ID before pair generation (70% Train, 15% Val, 15% Test)
  • Optimizer: AdamW (Learning Rate: 2e-5, Weight Decay: 0.01)
  • Batch Size: 8–16 with Warmup
  • Sequence Length: 512 (Max Truncation)
  • Epochs: 2–3

Evaluation Results

ModelAccuracyPrecisionRecallMacro F1Weighted F1
TF-IDF Cosine Similarity Baseline0.96470.96470.96470.96470.9647
TF-IDF + Logistic Regression Baseline0.99490.99490.99490.99490.9949
DistilBERT (Fine-Tuned Transformer)0.99+0.99+0.99+0.99+0.99+

How to Use with Transformers

from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

model_id = "anshika-saklani/resume-job-distilbert"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForSequenceClassification.from_pretrained(model_id)

resume = "Senior Python Engineer with 6 years experience in Django, REST APIs, Docker, and PostgreSQL."
job_desc = "Seeking Senior Backend Engineer with Python, Docker, Kubernetes, and REST API architecture experience."

inputs = tokenizer(
    resume,
    job_desc,
    truncation=True,
    max_length=512,
    return_tensors="pt"
)

with torch.no_grad():
    logits = model(**inputs).logits
    probs = torch.softmax(logits, dim=-1).squeeze().tolist()

id2label = {0: "No Fit", 1: "Potential Fit", 2: "Good Fit"}
for idx, prob in enumerate(probs):
    print(f"{id2label[idx]}: {prob * 100:.2f}%")

Ethical Considerations & Limitations

  • Synthetic Data: The training corpus is derived from synthetic candidate profiles. Real-world resumes contain unstructured formatting, idiosyncrasies, and regional terminology differences.
  • Fairness & Non-Discrimination: This tool evaluates lexical and semantic relevance only. It MUST NOT be used as an automated hiring decision-maker.
  • Truncation: Inputs exceeding 512 subword tokens are truncated, which may omit details in multi-page resumes.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers · text-classification

Можно запустить

Подбираем GPU…

Класс архитектуры
DistilBertForSequenceClassification
Ревизия весов
af8fa47

0 моделей