Термины

cRESUMES (version 0.2)

cRESUMES: Линейка скриптов для автоматического обновления/добавления резюме и генерация ML-фичей для них

Что это?

cRESUMES - глобально это скрипты, которые следитят за актуальностью резюме в системе ATS. Они проверяют базу данных каждую 1/2/3 минуты и обновляют, либо создают информацию о резюме кандидатов в OpenSearch.

Как работает?

  1. Проверка базы данных:
    • Каждую 1/2/3 минуты обращается к PostgreSQL/OpenSearch.
    • Ищет новые резюме или изменения в существующих.
  2. Параллельная обработка:
    • Использует несколько процессов для быстрой проверки всех резюме.
  3. Обновление в OpenSearch:
    • Если резюме уже есть в OpenSearch, проверяет, что изменилось (опыт, навыки, зарплатные ожидания, статусы) и что нужно дополнить для ML признаков.
    • Обновляет только изменённые данные.
    • Новые резюме добавляет в OpenSearch.
  4. Результат:
    • Данные всегда актуальны.
    • Поиск кандидатов становится быстрым и точным.

Зачем нужно?

Подробнее: см. раздел NLP конвейер.

cRESUMES (version 0.2)

cMAPPER (version 0.2)

cMAPPER: API для обработки и структурирования резюме

Что это?

cMAPPER - это API, которое превращает текст резюме в структурированные данные. Оно помогает извлечь из резюме ключевую информацию (опыт кандидата и персональную информацию).

Доступно по ссылке: API документация.

Как работает?

  1. Удаление конфиденциальной информации из текста резюме
  2. Извлечение данных:
    • Анализирует текст резюме.
    • Вытаскивает информацию об опыте работы и персональных данных (навыки, пол, зарплатные ожидания, образование и т.д).
  3. Создание структурированных данных:
    • Формирует BIO-разметку (для обучения AI-моделей).
    • Создаёт JSON-файл с чёткой структурой (тоже для обучения).
  4. Результат:
    • Превращает "сырой" текст в понятные и полезные данные.
    • Упрощает оценку кандидатов для подбора на вакансии.

Особенности:

Зачем нужно?

cMAPPER (version 0.2)

cVACANCY (version 0.2)

cVACANCY: Скрипт для автоматического обновления вакансий

Что это?

cVACANCY - это скрипт, который следит за актуальностью вакансий в системе ATS. Он автоматически проверяет базу данных и обновляет информацию о вакансиях.

Как работает?

  1. Проверка базы данных:
    • Запускается каждые 10 минут.
    • Обращается к PostgreSQL, чтобы найти новые или изменённые вакансии.
  2. Параллельная обработка:
    • Проверяет каждую вакансию с помощью нескольких процессов.
  3. Обновление в OpenSearch:
    • Если вакансия уже есть в OpenSearch, анализирует изменения (например, изменены зарплатные ожидания и локация).
    • Обновляет только изменённые данные.
    • Новые вакансии добавляет в OpenSearch.

Нормализация данных:

Зачем нужно?

Подробнее: см. раздел MATH TRUE/FALSE

Подробнее: см. раздел cPODBOR

Подробнее: см. раздел cRECSYS

cVACANCY (version 0.2)

cPODBOR (version 0.2.1)

cPODBOR: Скрипт для поиска подходящих резюме

Что это?

cPODBOR - это скрипт, который помогает находить подходящих кандидатов для открытых вакансий в системе ATS. Он автоматически ищет резюме, которые лучше всего подходят под вакансии, и сохраняет результаты в PostgreSQL.

Как работает?

  1. Запуск по расписанию:
    • Каждые 20 минут обращается к OpenSearch.
    • Запрашивает только открытые вакансии.
  2. Параллельный поиск:
    • Проверяет каждую вакансию с помощью нескольких процессов.
    • Сравнивает требования вакансий с данными резюме.
  3. Анализ кандидатов:
    • Проверяет навыки, опыт и другие параметры резюме.
    • Использует NLP конвейер для обработки резюме при разных значениях MATH TRUE/FALSE.
  4. Сохранение результатов:
    • Найденные кандидаты записываются в базу данных PostgreSQL.

Зачем нужно?

Подробнее: см. раздел NLP конвейер

Подробнее: см. раздел MATH TRUE/FALSE

cPODBOR (version 0.2.1)

cBOOLEAN (version 0.2)

cBOOLEAN: API для булевого поиска резюме

Что это?

cBOOLEAN - это API которое позволяет искать резюме в системе ATS с помощью булевых запросов.

Доступно по ссылке: API документация.

Как работает?

  1. Запрос через API:
    • API обрабатывает запрос и ищет подходящие резюме в базе данных.
  2. Поиск в ATS:
    • Использует булевую логику для фильтрации резюме по навыкам, опыту и другим параметрам.
  3. Результат:
    • Возвращает список applicant_id, которые соответствуют запросу.

Зачем нужно?

Подробнее: см. раздел Как улучшить свой поиск в ATS

cBOOLEAN (version 0.2)

cRECSYS (version 0.2.2)

cRECSYS коллаборативная рекомендательная система.

Что это?

cRECSYS - это вспомогательный инструмент для cPODBOR с применением обучения с подкреплением (RL). Она анализирует поведение рекрутера и параметры ранее выбранных кандидатов, чтобы предсказать и рекомендовать наиболее подходящих кандидатов на вакансию.

Как работает?

  1. Запуск по расписанию:
    • Каждые 20 минут обращается, начинается автоматизированный процесс поиска.
  2. Анализ вакансий:
    • Отбираются только открытые вакансии.
  3. Сбор кандидатов рекрутера:
    • Для каждой отобранной вакансии, происходит запрос в PostgreSQL для получения списка кандидатов, отобранных рекрутерами.
  4. Сбор и анализ параметров:
    • Выполняется дополнительный запрос в OpenSearch, в ходе которого анализируются параметры и embedding'и кандидатов рекрутера.
  5. Обработка новых кандидатов:
    • На основе полученных данных делается повторный запрос в OpenSearch для получения схожих (новых) кандидатов.
    • Новые кандидаты обрабатываются моделью RL.
  6. Обучение на обратной связи:
    • При повторых циклах модель обучается на feedback'ах рекрутера. Обучение проходит в самом начале рабочего цикла.

Тонкости cRECSYS

  1. Сбор пользовательской выборки:
    • Получение списка кандидатов, которых рекрутер уже добавил к вакансии (из PostgreSQL).
  2. Анализ и агрегация параметров:
    • Извлечение и анализ популярных и уникальных значений математических фильтров:
      • должности в резюме
      • фактический опыт
      • уровень зарплаты
      • возраст
      • формат работы
      • пол
      • гражданство
      • локация
      • языки
      • ключевые навыки и навыки в резюме
    • Формирование запроса для поиска похожих кандидатов на основе агрегированных параметров (повторный запрос в OpenSearch).
  3. Создание признакового пространства:

    • Для каждого кандидата извлекается embedding-вектор размерностью 1024.
    • Формируется векторное представление на основе embedding'ом рассматриваемого кандидата, разницы между embedding'ом рассматриваемого кандидата и усреднёнными embedding'ами кандидатов рекрутера.

      [candidate_emb, candidate_emb - mean_selected_emb] -> candidate_emb + (candidate_emb - mean_selected_emb)

  4. Ранжирование RL-моделью:

    • Применяется агент PPO в среде с размерностью 2048.
    • На основе текущего состояния (вектора признаков) агент принимает решение: отклонить кандидата (0) или выбрать его (1).
    • Кандидаты ранжируются по уровню релевантности.

Механизм обучения

Зачем нужно?

Подробнее: см. раздел cPODBOR

cRECSYS (version 0.2.2)

NLP конвейер (version 0.2)

NLP конвейер: Анализатор и оценщик резюме кандидатов

Что это?

NLP конвейер - это анализатор и оценщик резюме. Он выполняет две основные функции:

Анализатор использует обработку текста, анализ синонимов, FastText для семантического поиска, multilingual-e5-base для создания контекстуального эмбеддинга и многопроцессорную/многопоточную обработку, обеспечивая точный и быстрый анализ резюме.

Как работает?

Запуск по запросу:

Этапы работы

  1. Определение языка: Выявляет язык текста резюме.
  2. Форматирование данных: Преобразует данные резюме (опыт работы, навыки, должности) в единый текстовый формат.
  3. Анализ навыков и опыта:
    • Проверяет наличие указанных навыков, их синонимов.
    • Использует FastText для поиска семантически близких навыков.
    • Вычисляет опыт в месяцах, учитывая текущий и прошлый опыт работы.

Завершающие действия в:

cPODBOR

cRESUMES

Зачем нужно?

Подробнее: см. раздел cPODBOR.

Подробнее: см. раздел cRESUMES.

Подробнее: см. раздел MATH TRUE/FALSE.

NLP конвейер (version 0.2)

MATH TRUE/FALSE

Мы анализируем каждую вакансию с помощью cVACANCY и присваиваем ей флаг MATH: TRUE или MATH: FALSE.

MATH TRUE - всё по полочкам

Когда с помощью базы знаний и инструментов HR TECH система смогла полностью стандартизировать вакансию: все навыки, требования и параметры приведены к единому стандарту.

MATH FALSE - нужно покопаться

Когда система не смогла полностью стандартизировать параметры вакансии (например, навыки) с помощью базы знаний и инструментов HR TECH. Но всё равно получила общее представление о вакансии и выделила новые параметры.

Что будет с MATH TRUE?

Что будет с MATH FALSE?

Подробнее: см. раздел NLP конвейер

Подробнее: см. раздел cVACANCY

Подробнее: см. раздел cPODBOR

MATH TRUE/FALSE

Стек технологий

Язык программирования


Обработка естественного языка (NLP)


Машинное обучение и анализ данных


Визуализация


Веб-разработка и API


Асинхронные задачи и очереди


Работа с данными и поиск


Контейнеризация


Модели



Стек технологий