---
Конкретный момент: обсуждение в Slack, которое вызвало изменения
Во время недавнего обсуждения в Slack один из наших рекрутеров поделился разочарованием из-за несоответствия профилей кандидатов. Кандидат с сильной квалификацией не рассматривался на роли, которые казались идеальными. Это вызвало обсуждение нашего алгоритма сопоставления кандидатов с ИИ и его недостатков. Мы понимали, что нам нужно глубже разобраться в механике нашего процента сопоставления.
Понимание проблемы
Важность эффективного сопоставления кандидатов сложно переоценить. Для наших рекрутеров ставки высоки; их успех зависит от того, чтобы представить правильных кандидатов компаниям. Несоответствие не только вызывает разочарование у рекрутеров, но и ставит под угрозу возможности кандидатов. Мы остро ощущали это давление, стремясь упростить процесс найма как для кандидатов, так и для компаний, использующих нашу платформу.
Основная проблема: несоответствие навыков
Конкретный сценарий подчеркнул нашу проблему: старший разработчик программного обеспечения был проигнорирован на роль из-за того, что наш алгоритм неверно интерпретировал его навыки. Наш алгоритм испытывал трудности с синонимами навыков; такие термины, как «разработка программного обеспечения» и «программирование», не всегда вызывали одинаковый балл совпадения, что приводило к путанице. Это несоответствие означало, что квалифицированные кандидаты не отображались в соответствующих вакансиях, и наша система сопоставления не выполняла свою задачу.
Первоначальные попытки: ложные старты и неудачи
В наших первоначальных попытках исправить ситуацию мы рассматривали возможность добавления более детерминированных фильтров на основе жестко закодированных наборов навыков. Это казалось простым, но в конечном итоге не решало основную проблему семантического понимания. Один из наших бэкенд-разработчиков быстро заметил, что этот подход ограничивал гибкость и не учитывал нюансы человеческого языка. Мы поняли, что нам нужно более сложное решение.
Новый технический подход: повторная сортировка с помощью LLM
Мы переключились на внедрение модели большого языка (LLM) для повторной сортировки кандидатов после начальной фазы извлечения совпадений. Процесс включает два основных этапа:
- Извлечение: кандидаты изначально сопоставляются на основе детерминированных фильтров — навыков, опыта и образования.
- Повторная сортировка: затем LLM оценивает совпадения, учитывая синонимы, контекст и актуальность, чтобы предоставить окончательный балл.
# Пример повторной сортировки с помощью LLM
re_ranked_candidates = llm_model.rank(candidates, job_description)
Этот метод значительно улучшил нашу способность находить кандидатов, чьи навыки могли бы быть упущены из-за различий в терминологии.
Наблюдаемые изменения в нашем продукте
После внедрения нового алгоритма мы заметили значительные изменения. Кандидаты начали получать более релевантные рекомендации по вакансиям, что улучшило их опыт на нашей платформе. Рекрутеры также сообщили о повышении удовлетворенности качеством совпадений кандидатов, что привело к более быстрым размещениям и снижению времени на найм. Эти улучшения можно увидеть на наших страницах /jobs и /for-companies, где рекрутеры теперь имеют доступ к более отфильтрованному пулу кандидатов.
Основные выводы из нашего опыта
- Язык имеет значение: синонимы и вариации в описаниях навыков могут значительно повлиять на результаты сопоставления.
- Гибкость имеет решающее значение: полагание исключительно на детерминированные фильтры может ограничить адаптивность алгоритма к реальному языковому использованию.
- Обратная связь пользователей бесценна: прямой отзыв от рекрутеров и кандидатов помог нам выявить проблемы, которые мы могли бы не заметить изначально.
Последствия для кандидатов
С точки зрения кандидата это улучшение означает лучшую вероятность сопоставления с ролями, где они действительно подходят. Кандидаты могут ожидать увидеть возможности, которые более точно соответствуют их навыкам и опыту, что приводит к более удовлетворительному процессу поиска работы.
Последствия для рекрутеров
Рекрутеры теперь могут полагаться на более надежный алгоритм сопоставления, который учитывает нюансы языка и профили кандидатов. Это означает повышенную эффективность в поиске кандидатов, что в конечном итоге приносит пользу их целям по найму и компаниям, которым они служат.
Взгляд в будущее: открытые вопросы и направления
Хотя мы добились значительных успехов, мы понимаем, что еще много работы впереди. Мы продолжаем следить за устойчивыми проблемами, такими как инфляция старшинства и чрезмерное использование ключевых слов, которые все еще могут искажать проценты совпадения. Если бы нам пришлось отменить один аспект, это, вероятно, были бы чрезмерно жесткие начальные фильтры, которые ограничивали нашу гибкость. Мы стремимся к совершенствованию нашего подхода и исследованию того, как мы можем еще больше улучшить наш алгоритм. ---