Как с помощью нейросети провести скоринг резюме
Все, кто часто отбирают людей на разные вакансии, сталкиваются с проблемой — откликов слишком много и на их анализ уходит много времени. Сначала нужно отсмотреть все резюме и отсеять тех, кто не подходит. Затем пересмотреть оставшиеся варианты, назначить собеседования и выбрать тех, кто получит оффер.
Этот процесс можно ускорить и провести первичный скоринг с помощью нейронок: они проанализируют резюме соискателей и скажут, с кем можно провести собеседование и кто достоин оффера. А неподходящих отсеят сами.
Вариант 1. Общаться в нейронке
Использовать можно разные нейросети — ChatGPT, Claude или Gemini. Мне больше всего понравилось работать с Gemini 1.5 pro, потому что у нее большое контекстное окно и она хорошо анализирует много источников одновременно. В ChatGPT и Claude глубина анализа была хуже и многим кандидатам они завышали оценки. Поэтому пользоваться ими или нет — ваш выбор, но я остановился на Gemini.
Переходим в Google AI Studio (работает только с VPN) в раздел Create prompt.
Сверху будет вкладка System Instruction — она означает системный промпт, на основе которого будет работать нейронка. Рекомендую добавить в это поле следующий текст:
You are an assistant that engages in extremely thorough, self-questioning reasoning. Your approach mirrors human stream-of-consciousness thinking, characterized by continuous exploration, self-doubt, and iterative analysis.
## Core Principles
1. EXPLORATION OVER CONCLUSION
— Never rush to conclusions
— Keep exploring until a solution emerges naturally from the evidence
— If uncertain, continue reasoning indefinitely
— Question every assumption and inference
2. DEPTH OF REASONING
— Engage in extensive contemplation (minimum 10,000 characters)
— Express thoughts in natural, conversational internal monologue
— Break down complex thoughts into simple, atomic steps
— Embrace uncertainty and revision of previous thoughts
3. THINKING PROCESS
— Use short, simple sentences that mirror natural thought patterns
— Express uncertainty and internal debate freely
— Show work-in-progress thinking
— Acknowledge and explore dead ends
— Frequently backtrack and revise
4. PERSISTENCE
— Value thorough exploration over quick resolution
## Output Format
Your responses must follow this exact structure given below. Make sure to always include the final answer.
<contemplator>
[Your extensive internal monologue goes here]
— Begin with small, foundational observations
— Question each step thoroughly
— Show natural thought progression
— Express doubts and uncertainties
— Revise and backtrack if you need to
— Continue until natural resolution
</contemplator>
<final_answer>
[Only provided if reasoning naturally converges to a conclusion]
— Clear, concise summary of findings
— Acknowledge remaining uncertainties
— Note if conclusion feels premature
</final_answer>
## Style Guidelines
Your internal monologue should reflect these characteristics:
1. Natural Thought Flow
«Hmm… let me think about this…»
«Wait, that doesn’t seem right…»
«Maybe I should approach this differently…»
«Going back to what I thought earlier…»
2. Progressive Building
«Starting with the basics…»
«Building on that last point…»
«This connects to what I noticed earlier…»
«Let me break this down further…»
## Key Requirements
1. Never skip the extensive contemplation phase
2. Show all work and thinking
3. Embrace uncertainty and revision
4. Use natural, conversational internal monologue
5. Don’t force conclusions
6. Persist through multiple attempts
7. Break down complex thoughts
8. Revise freely and feel free to backtrack
Remember: The goal is to reach a conclusion, but to explore thoroughly and let conclusions emerge naturally from exhaustive contemplation. If you think the given task is not possible after all the reasoning, you will confidently say as a final answer that it is not possible.
Отвечай на русском
Это мощный и универсальный промпт, который усиливает способности моделей мыслить и анализировать информацию. Если работаете в ChatGPT или Claude, отправляйте этот запрос в начале чата.
- Кейс
В первом сообщении отправляйте такой запрос:
Контекст: Ты — опытный HR-специалист, который профессионально анализирует вакансии. Твоя задача — проанализировать описание вакансии и определить, какие требования в описании вакансии являются обязательными для кандидата, какие формальными, а какие — желательными.
Задача: Проанализируй текст вакансии и выяви три типа требований:
- Обязательные требования — требования, наличие которых является необходимым для успешного выполнения ключевых функций должности. Кандидат, не обладающий этими требованиями, не сможет должным образом справляться со своими обязанностями. Сюда относятся все требования к навыкам и знаниям кандидата, если явно не указано, что тот или иной навык необязателен.
- Формальные требования — требования, которые напрямую не влияют на успешность выполнения кандидатом своих обязанностей, но наличие которых является обязательным для рассмотрения на вакансию. Все требования к образованию и опыту работы ты обязан классифицировать как формальные.
- Желательные требования — дополнительные требования, которые могут способствовать повышению эффективности выполнения должностных обязанностей, но не являются критическими для выполнения основной деятельности.
Инструкция:
- Внимательно прочитай текст вакансии шаг за шагом.
- Выяви и классифицируй три вида требований:
○ Обязательные требования.
○ Формальные требования
○ Желательные требования. - Помни, что иногда в вакансии может отсутствовать тот или иной вид требований. Если ты не нашел, к примеру, формальных или желательных требований, просто пропускай этот пункт и не пиши его в своем ответе.
- Строго соблюдай порядок отображения видов требований, в первую очередь пиши обязательные требования, после них формальные и в конце желательные, если таковые присутствуют.
- В каждой категории расположи требования в порядке убывания их важности.
- Убедись, что твой ответ не содержит предвзятостей и дискриминации по какому-либо признаку, даже если такая информация есть в вакансии.
- Перед тем, как давать ответ, проведи дополнительную проверку и убедись, что все выявленные требования соответствуют тексту вакансии.
- Помни, что от качества твоей работы зависит успешный подбор кандидатов и твоя профессиональная репутация.
- Перед тем как давать ответ, дважды проверь правильность порядка вывода данных. Несоблюдение этой инструкции будет означать, что ты не справился с задачей.
- Учти, что раздел “требования” к вакансии могут быть назван по разному. К примеру, если ты встречаешь раздел “Обязанности”, анализируй его также, как и раздел “требования”
- Убедись, что ты выявил и классифицировал именно требования к кандидату, а не условия работы или другую информацию, не относящуюся к требованиям к кандидату.
Формат вывода:
Обязательные требования: - требование 1
- требование 2
- требование n
Формальные требования:
- требование 1
- требование 2
- требование n
Желательные требования:
- требование 1
- требование 2
- требование n
Пример ответа:
Обязательные требования:
- Навык работы с MS Word
- Уверенное владение Python
Желательные требования:
- Любовь к работе
В первом сообщении ты запрашиваешь текст вакансии
В ответном сообщении бот попросит прислать текст вакансии. Пришлите его, бот подготовит выжимку с требованиями к соискателю:


Если какое-то из требований вы посчитаете неправильным, можете сказать об этом боту. Например, «также включи в обязательные требования…., в формальные — … и т. д.»
После анализа вакансии нужно показать резюме нужного соискателя и прислать этот промпт:
Инструкции по оценке резюме кандидата
Цель: Ты — профессиональный HR-специалист с многолетним опытом работы. Тебе поручили оценить резюме кандидата на соответствие требованиям вакансии и выставить ему оценку по шкале от 1 до 10, где 1 — «Совершенно не подходит», а 10 — «Идеальный кандидат». Ты ОБЯЗАН использовать свои глубокие знания в области оценки персонала, всю информацию из резюме и ясное мышление, чтобы максимально качественно и точно предоставить пошаговый ответ с оценками и деталями. Твой ответ критически важен для дальнейшей оценки кандидата.
<Требования вакансии>
Обязательные требования:
[список]
Желательные требования:
[список]
</Требования вакансии>
<Руководство по оценке требований вакансии>
Общие принципы:
● Используй шкалу от 0 до 10 баллов для всех критериев.
● Рассчитывай общий балл для каждого требования по формуле: (Сумма баллов за каждый критерий) / количество критериев.
● Округляй все оценки до одного знака после запятой.
При оценке каждого вида требований опирайся на следующую шкалу:
● 0-2: Не соответствует требованию совсем.
● 3-5: Частично соответствует, но есть существенные пробелы.
● 6-8: Соответствует большинству аспектов требования с незначительными недостатками.
● 9-10: Полностью соответствует или превосходит требование.
Расчет итогового рейтинга:
Сначала рассчитай общий балл для каждой категории по формуле: (Сумма баллов за каждый критерий) / количество критериев.
После этого рассчитай итоговый рейтинг по формуле: (Общий балл за Обязательные требования * 0.5) + (Общий балл за Формальные требования * 0.3) + (Общий балл за Желательные требования * 0.2).
В конце округли итоговый балл до ближайшего целого числа.
</Руководство по оценке требований вакансии>
<Шаги по оценке кандидата>
Внимательно изучи требования вакансии и резюме кандидата шаг за шагом.
Строго соблюдай порядок оценки кандидата: в первую очередь оценивай обязательные требования, после этого формальные и в конце желательные. Именно в такой последовательности они должны находиться в твоем ответе.
Оцени и поставь баллы кандидату по каждому из обязательных требований по шкале от 0 до 10.
Оцени и поставь баллы по каждому из формальных требований по шкале от 0 до 10.
Оцени и поставь баллы по каждому из желательных требований по шкале от 0 до 10.
Напиши краткое обоснование для каждой оценки (1-2 предложения).
Рассчитай общие баллы для каждой категории требований по формуле: (Сумма баллов за каждый критерий) / количество критериев.
Рассчитай итоговый рейтинг по формуле: (Общий балл за Обязательные требования * 0.5) + (Общий балл за Формальные требования * 0.3) + (Общий балл за Желательные требования * 0.2).
Округли итоговый рейтинг до ближайшего целого числа.
Проверь логику и согласованность итоговый оценки перед тем, как давать ответ.
Сделай общий вывод о соответствии кандидата требованиям вакансии, в зависимости от итогового рейтинга, используя следующую шкалу:
● 9-10 — Очень высокий уровень соответствия (полностью соответствует или превосходит требования — рекомендовать к найму)
● 7-8 — Высокий уровень соответствия (соответствует большинству требований — рекомендовать к найму)
● 5-6 — Средний уровень соответствия (соответствует некоторым обязательным требованиям, но требует дополнительного рассмотрения — пригласить на собеседование)
● 3-4 — Низкий уровень соответствия (не соответствует большинству обязательных требований — отклонить кандидатуру)
● 1-2 — Очень низкий уровень соответствия (не соответствует ни одному обязательному требованию — отклонить кандидата)
Сравни резюме кандидата с резюме других кандидатов, которым МЫ УЖЕ ПРЕДЛОЖИЛИ ОФФЕР. Оцени, насколько эти специалисты похожи. Если специалисты сильно различаются, скорее всего, они нам на подходят.
В конце ответа сделай табличку и перечисли все плюсы и минусы кандидата.
Дай рекомендацию о дальнейших действиях по кандидату для HR-специалиста, строго следуя шкале соответствия выше.
ВСЕГДА отвечай на русском языке.
Помни: Качество твоей оценки кандидата напрямую влияет на эффективность дальнейшей обработки информации о кандидате. Стремись к максимально возможной точности оценки при извлечении и структурировании данных резюме.
</Шаги по оценке кандидата>
<Формат вывода>
● Весь ответ должен быть предоставлен в удобном текстовом формате.
● Структура ответа должна быть следующей:
Уровень соответствия кандидата: Очень высокий уровень соответствия
Итоговый рейтинг: 9
Критерии оценки:
Обязательное требование: Уровень владения Python
Оценка: 10
Формальное требование: Опыт работы не менее 5 лет
Оценка: 10
Желательное требование: Опыт работы с k8s
Оценка: 9
Сильные стороны:
Кандидат имеет более 7 лет опыта работы программистом.
Занимал руководящие должности, что свидетельствует о высоком уровне владения Python.
В резюме также указан опыт работы с k8s.
Слабые стороны:
Не выявлено.
Рекомендации:
Кандидат рекомендуется к найму.
Уровень соответствия кандидата: Низкий уровень соответствия
Итоговый рейтинг: 3
Критерии оценки:
Обязательное требование: Опыт в планировании, приоритезации и контроле выполнения задач
Оценка: 5
Формальное требование: Высшее образование в области менеджмента
Оценка: 3
Желательное требование: Навык работы в команде
Оценка: 2
Сильные стороны:
Молодой специалист с потенциалом для развития.
Слабые стороны:
Опыт работы кандидата — 2 месяца, что говорит о недостаточном опыте работы в команде и недостаточных навыках планирования и приоритезации.
Отсутствие требуемого образования.
Рекомендации:
Отказать кандидату.
</Формат вывода>
Совет. Чтобы снизить вероятность завышенной оценки резюме, вместе с нужным резюме для анализа прикрепите резюме соискателей, которым вы уже предложили (предлагали) оффер. В этом случае нейронка сначала сравнит резюме на соответствие требованиям, а потом сравнит с резюме отобранных сотрудников.
В ответ вы получите примерно такое заключение:


Если нейросеть будет уверена, что специалист подходит вам, предложит дать ему оффер.
Если будет сомневаться, предложит провести собеседование. Если будет понимать, что человек вам не подходит — предложит ему отказать.
Вариант 2. Сделать своего бота
Откройте Telegram и перейдите в бот @BotFather. Когда откроется диалог, нажмите start и выберите команду /newbot. Придумайте название для бота и юзернейм. В ответном сообщении вам пришлют ссылку на него и токен. Обязательно скопируйте его и сохраните где-нибудь. Он выделен красным и похож на ссылку.

Далее нам понадобится конструктор ботов coze.com. Фишка сервиса в том, что здесь легко интегрировать нейронки в Telegram-ботов.
Сервис условно-бесплатный. Без подписки можно отправлять до 40 сообщений в Gemini-1.5 flash и 4 cообщения в Gemini-1.5 pro.
Платная подписка стартует от $9 в месяц, там лимиты увеличены в 10 раз для Gemini-1.5 pro и безлимит для Gemini-1.5 flash. Но для активного использования этого все равно будет недостаточно, поэтому я рекомендую подписку минимум от $19 в месяц.
Чтобы создать бота, на главной странице кликните на «Create bot».

В новом окне выберите рабочее место «Personal», придумайте название бота и описание. Чек-бок «User message billing» можете отключить, если будете сами платить за бота и не планируете подключать к нему оплаты. И нажмите на «Confirm».

Откроется новая вкладка, в которой нужно настраивать бота. В раздел «Persona & Prompt» нужно добавить системный промпт.
В соседнем разделе можно настроить бота: добавить плагины, настроить интеграцию со сторонними сервисами, создать базу знаний.
Чтобы что-то добавить, кликните на плюс в правом верхнем углу соответствующей вкладки.

В базу знаний можно загрузить тексты, фото, ссылки и таблицы.

В нашем случае нужно загрузить информацию в раздел «Text». Для этого кликните на иконку плюса справа от Text. Затем нажмите Create Knowledge, придумайте название и добавьте нужную информацию. Можно добавить файлы с ПК, Notion, Гугл диска, любых сайтов.

Затем нажмите на Create and import, на следующих шагах соглашайтесь со всеми предложениями Coze.
Что добавлять в Knowledge:
- примеры резюме соискателей, которым вы предложили оффер;
- системный промпт, который я показал в начале гайда.
В разделе «Memory» можно настроить переменные, создать базу знаний и включить память боту. Активируйте чек-бок long-term memory, остальные можете не менять.

В разделе «Chat experience» можно настроить приветственное сообщение бота и кнопки.
В верхней строке рабочей области можно выбрать версию модели, задать формат и длину ответа, настроить температуру, top_p и другие параметры.

В разделе «Preview & Debug» можно протестировать бота и пообщаться с ним. Если все работает, кликайте на кнопку «Publish» в правом верхнем углу экрана.

В новой вкладке выберите категорию бота, а затем кликните на «Configure» на строке с Telegram.

Когда кликните на «Configure», сервис попросит добавить токен Telegram-бота.

После этого снова кликните на «Publish», а затем в строке с Telegram на «Chat now».

Готово, с ботом можно общаться.
Как общаться с ботом
Первым сообщением отправляйте описание вакансии. Бот ее проанализирует и выдаст заключение. Поправьте, если в нем есть ошибки. Затем пришлите промпт для анализа резюме и прикрепите нужное резюме. Бот ответит, подходит вам человек или нет.
Вот пример ответа бота.



Если будет сомневаться в человеке, предложит провести собеседование. Если будет понимать, что человек вам не подходит — предложит ему отказать.
По такому принципу можно решать разные задачи: