Подбор и фильтрация резюме на HH с помощью ИИ. hh.ru.. hh.ru. ИИ.. hh.ru. ИИ. искусственный интеллект.. hh.ru. ИИ. искусственный интеллект. искуственный интеллект.. hh.ru. ИИ. искусственный интеллект. искуственный интеллект. сезон ии в разработке.

Часть 4. Как я научился делать грубую фильтрацию разюме с помощью API HH.ru и Gemini

 Привет! На связи снова Евгений.

 Это четвертая часть цикла о моем самописном инструменте (написанным человеком, который далек от программирования), который вырос из простого поисковика по Excel-файлам в полноценную систему управления бизнес-процессами.

 Чтобы вы понимали контекст:

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

И как всегда аппетит растет во время еды. В малом бизнесе часто нет отдельного HR-специалиста. Эту функцию выполняет собственник или руководители отделов. И это всегда привносит определенные неудобства.

 Процесс найма обычно выглядит так:

Ты публикуешь вакансию на HeadHunter.

За день прилетает 50–100 откликов.

Ты начинаешь их открывать.

Через час у тебя дергается глаз.

Половина кандидатов вообще не читала описание вакансии. Люди откликаются веерно: «Авось куда-то возьмут». Ты ищешь менеджера в B2B со знанием тендеров, а тебе присылают резюме продавца-консультанта из салона сотовой связи. Формально и то, и то — «продажи», но по факту — разные вселенные.

Чтобы найти одного достойного кандидата, нужно просеять сотни анкет. Это часы монотонной работы, которая отвлекает от реальных дел. Я посмотрел на свой инструмент, где уже успешно трудились нейросети Gemini, и подумал: «Если ИИ может понять, подходит ли этот товар под запрос клиента, почему он не может понять, подходит ли резюме человека под нашу вакансию?»

Так началась разработка модуля «Поиск резюме (HH.ru)».

Задача был достаточно простой: построить эффективную воронку отбора

Стандартный поиск на работных сайтах — это набор фильтров. Это работает, но грубо. Мне нужен был инструмент, который бы автоматизировал не просто поиск, а весь процесс первичного отсева, работая по принципу умной воронки: от широкого захвата к глубокому анализу только лучших (ну или хотя бы отсеять ненужные резюме).

 Вот как я это реализовал.

Интеграция с HeadHunter

Первым делом нужно было научить мое Python-приложение общаться с HH.ru. Я зарегистрировал приложение в кабинете разработчика HeadHunter, получил Client ID и Client Secret.

В интерфейсе своего инструмента я добавил кнопку авторизации. Работает это через стандартный протокол OAuth. Я нажимаю «Войти через HH». Открывается окно браузера, где я подтверждаю доступ. Приложение получает токен и сохраняет его (в зашифрованном виде, разумеется). Теперь мой скрипт может официально делать запросы к базе резюме от моего имени.

Подбор и фильтрация резюме на HH с помощью ИИ - 1

Предварительный поиск

Я сознательно отказался от сложных интерфейсов. Вместо этого — два простых поля: Город и Текстовый запрос. В поле запроса я пишу так, как сказал бы живому рекрутеру.

Пример: «Нужен активный менеджер по продажам спецодежды. Обязателен опыт работы с юрлицами (B2B), понимание 44-ФЗ и тендеров. Желательно наличие автомобиля».

 Как это работает под капотом:

 Скрипт берет точный текст моего запроса и город. Он находит ID города (например, Москва — это 1, Краснодар — 53) для API.

Затем он делает запрос к HH.ru, прося выдать до 200 самых свежих резюме, которые соответствуют поисковой фразе в указанном регионе.

Сразу после получения списка, запускается строгий локальный фильтр. API HH.ru может выдать кандидатов из всего края или тех, кто готов к переезду. Мой скрипт проверяет поле «Город» в каждом резюме и отбрасывает всех, у кого оно не совпадает с введенным мной названием.

На выходе мы получаем отфильтрованный список кандидатов строго из нужного нам города.

Подбор и фильтрация резюме на HH с помощью ИИ - 2

«Умный сканер» — двухэтапный AI-скоринг для точного отбора

Анализировать все 150–200 резюме с помощью мощной и дорогой модели Gemini — неэффективно. Поэтому я кардинально переработал этап предварительной сортировки, превратив его из простого «сканера» в умную двухэтапную систему фильтрации.

Этап 1: AI-аналитик разбирает мой запрос

Теперь мой текстовый запрос («Нужен активный менеджер по продажам спецодежды…») не просто разбивается на ключевые слова. Он отправляется специальной, легковесной модели Gemini с ролью «HH-Concept-Extractor». Её задача — понять смысл запроса и разложить его на концептуальные группы с синонимами.

Например, для запроса «Активный менеджер по оптовым продажам спецодежды (B2B)» AI вернет не просто набор слов, а структурированные данные:

[["менеджер по продажам", "sales manager"], ["оптовым", "опт", "b2b"], ["спецодежда", "сиз"]]

Это позволяет системе искать не только «менеджера по продажам», но и «sales manager», не только «оптовым», но и «b2b», что кардинально повышает полноту поиска.

Этап 2: Взвешенный скоринг резюме

На этом этапе происходит самое интересное — «встреча» гибкого запроса и фактических данных из резюме. Для каждого из 200 кандидатов система:

  • Нормализует данные резюме. Все текстовые поля (заголовок, навыки, описание опыта) приводятся к начальной форме (лемматизируются). «Занимался продажами» превращается в [заниматься, продажа].

  • Проводит взвешенную оценку. Система берет группы концепций из моего запроса и ищет их леммы в нормализованных данных резюме. При этом очки начисляются с разным весом:

    • Совпадение в заголовке резюме дает больше всего баллов (вес x3).

    • Совпадение в ключевых навыках — меньше (вес x2).

    • Совпадение в описании опыта работы — еще меньше (вес x1).

Такой подход гарантирует, что кандидат с должностью «Менеджер по продажам» получит гораздо более высокий балл, чем «Оператор call-центра», даже если у обоих в описании опыта встречается слово «продажи».

На выходе я получаю список, отсортированный по этому новому, умному рейтингу, где наверху находятся самые релевантные кандидаты. И только они отправляются на следующий, глубокий этап анализа.

 Глубокий анализ лучших с помощью Gemini

Вот здесь и начинается ИИ-магия. Система берет топ-50 (или меньше, в зависимости от настроек) кандидатов из предварительно отсортированного списка и только для них запускает глубокий анализ.  Для этих 50 кандидатов скачиваются их полные резюме: весь опыт работы, обязанности, достижения, раздел «Обо мне». Далее, для каждого кандидата, этот массив текста отправляется модели Gemini (роль «HH-Analyst»). В промпте для нее заложены инструкции опытного HR-директора.

ИИ делает следующее:

Сравнивает профиль с запросом. Он проверяет, действительно ли опыт кандидата релевантен. Если человек 10 лет продавал, но не в B2B, а в рознице — ИИ это заметит и снизит балл. Выставляет оценку. От 1 до 10 баллов по шкале соответствия моей вакансии. Пишет саммари (Summary). Это краткая выжимка в 2-3 предложения. Например: «Кандидат с сильным профилем в продажах, знает наш рынок. Из минусов — часто меняет работу (4 места за 2 года)».

Генерирует вопросы для собеседования. Это доп фича для руководителя. ИИ видит пробелы или интересные места в резюме и формулирует конкретные вопросы. Пример: «Вы указали, что выиграли крупный тендер в 2023 году. Какова была ваша роль в подготовке документации?»

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

Результат: Как это выглядит на экране

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

 В карточке я сразу вижу:

 ФИО, возраст, город.

Вердикт ИИ: Оценка и обоснование (почему этот кандидат подходит или нет).

Опыт работы

Вопросы: Готовый список, который можно распечатать перед звонком.

Подбор и фильтрация резюме на HH с помощью ИИ - 3

Если мне нравится кандидат, я нажимаю «Показать опыт работы», и разворачивается детализация, где уже подсвечены ключевые навыки, которые я искал.

Экспорт и работа с командой

К примеру, мне нужно показать кандидатов руководителю отдела продаж. Скидывать ссылки в мессенджер неудобно. Поэтому я добавил кнопку «Скачать отчет в Excel». Система формирует аккуратную таблицу. В ней есть колонки: ФИО, Ссылка, Зарплата, Телефон и, самое главное, — Комментарий ИИ и Вопросы.

Подбор и фильтрация резюме на HH с помощью ИИ - 4

Детекция ИИ Резюме
В связи с тем, что в последнее время многие использую ИИ для составления резюме, я добавил ИИ-детектор. Использовать ИИ при составлении резюме не хорошо и не плохо, но об этом полезно знать. Теперь, если система с высокой долей вероятности определит, что текст резюме был написан или «причесан» с помощью нейросети, рядом с заголовком появится иконка робота. Это не фильтрует кандидата, а просто дает дополнительную информацию для размышления.

Подбор и фильтрация резюме на HH с помощью ИИ - 5

Итоги внедрения

Потенциальный эффект: что может измениться в нашем найме?

Внедрение такого автоматизированного подхода может кардинально изменить процесс подбора персонала в компании, особенно там, где нет выделенного HR-отдела. Скорость найма. Больше не нужно копить резюме днями, чтобы выделить время на их чтение. Запустили скрипт, ушли пить кофе, вернулись — список лучших кандидатов готов.

 Качество кандидатов. Снижается риск пропустить хороших специалистов, у которых просто неидеально оформлено резюме (хотя тут большой вопрос, если он не может продать себя, как он будет продавать что-то еще). ИИ видит суть опыта, даже если он описан корявым языком, и находит скрытые таланты.

 Уровень собеседований. Даже если интервью проводит не профессиональный рекрутер, а линейный руководитель, у него перед глазами будет список умных, предметных вопросов, сгенерированных ИИ на основе анализа конкретного резюме. Разговор сразу становится более глубоким и по делу.

 Конечно, ИИ не заменит личного общения. Он не оценит адекватность человека, его харизму и то, как он вольется в коллектив. Но он может снять с руководителей огромный пласт рутинной работы по первичному отсеву. В результате можно тратить свою энергию и время только на тех, кто этого действительно стоит.

Всех благодарю за прочтение. Всем успехов в ваших начинаниях!
оригинал статьи

P.S.: в ходе обсуждений пришел к тому, что необходимо внедрить ИИ детектинг резюме. То есть определять резюме, которые были написаны с помощью ИИ. Это не говорит, что их нужно отфильтровать, но знать об этом не помешало бы.

Автор: RS_AI

Источник

Rambler's Top100