Интеграция ИИ для автоматизации HR-процессов через Telegram-ботов
Почему это важно?
HR-специалисты тратят массу времени на рутинные задачи: первичный отбор резюме, анкетирование кандидатов, проведение собеседований. А что если часть этой работы делегировать Telegram-боту с искусственным интеллектом?
✅ Быстрая фильтрация кандидатов ✅ Автоматическое анкетирование и тестирование ✅ 24/7 доступность для соискателей ✅ Минимизация человеческого фактора на первом этапе
Давайте разберем, как создать такого бота!
Что потребуется?
- Аккаунт Telegram (для создания бота)
- API-токен Telegram (получаем у BotFather)
- OpenAI API-ключ (для работы ChatGPT)
- Python и библиотеки aiogram, openai
- Сервер/VPS или локальный компьютер для запуска
- Google Sheets / База данных (опционально) для хранения анкет
Шаг 1: Создание бота в Telegram
- В Telegram ищем BotFather и пишем /newbot
- Придумываем название и @username
- Получаем API-токен для дальнейшего использования
Шаг 2: Настройка OpenAI для обработки ответов
- Регистрируемся на OpenAI
- Создаем API-ключ в разделе API Keys
- Сохраняем его в .env файле:
TELEGRAM_BOT_TOKEN=твой_токен_бота
OPENAI_API_KEY=твой_api_ключ
Шаг 3: Установка зависимостей и настройка кода
Устанавливаем нужные библиотеки:
pip install aiogram openai python-dotenv
Пишем код для HR-бота:
import openai
import os
from aiogram import Bot, Dispatcher, types
from aiogram.utils import executor
from dotenv import load_dotenv
load_dotenv()
TELEGRAM_BOT_TOKEN = os.getenv("TELEGRAM_BOT_TOKEN")
OPENAI_API_KEY = os.getenv("OPENAI_API_KEY")
bot = Bot(token=TELEGRAM_BOT_TOKEN)
dp = Dispatcher(bot)
openai.api_key = OPENAI_API_KEY
@dp.message_handler(commands=['start'])
async def welcome(message: types.Message):
await message.reply("Привет! Я HR-бот. Готов помочь с подбором сотрудников. Напишите 'анкетирование', чтобы начать.")
@dp.message_handler(lambda message: message.text.lower() == 'анкетирование')
async def ask_questions(message: types.Message):
questions = [
"Как вас зовут?",
"На какую должность вы претендуете?",
"Какой у вас опыт работы в этой сфере?",
"Какие у вас ключевые навыки?",
"Какие ожидания по зарплате?"
]
for question in questions:
await message.answer(question)
@dp.message_handler()
async def chat_with_gpt(message: types.Message):
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[{"role": "user", "content": message.text}]
)
await message.reply(response["choices"][0]["message"]["content"])
if __name__ == "__main__":
executor.start_polling(dp, skip_updates=True)
Шаг 4: Запуск бота
- Сохраняем код в файл hr_bot.py
- Запускаем командой:
python hr_bot.py
- Проверяем: бот должен отвечать в Telegram!
Шаг 5: Улучшаем функционал
Добавляем кнопки для удобства
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton
@dp.message_handler(commands=['start'])
async def welcome(message: types.Message):
keyboard = ReplyKeyboardMarkup(resize_keyboard=True)
keyboard.add(KeyboardButton("Анкетирование"))
keyboard.add(KeyboardButton("Проверить вакансию"))
await message.reply("Выберите действие:", reply_markup=keyboard)
Сохраняем анкеты в Google Sheets (через gspread):
import gspread
sa = gspread.service_account(filename="credentials.json")
sheet = sa.open("HR_Anketi").sheet1
def save_to_sheets(data):
sheet.append_row(data)
Добавляем первичное собеседование с ChatGPT
@dp.message_handler(lambda message: message.text.lower() == 'собеседование')
async def interview(message: types.Message):
await message.reply("Отвечайте на вопросы, как на реальном интервью!")
questions = [
"Расскажите о себе",
"Почему вы хотите работать у нас?",
"Опишите сложную задачу, которую вы решали"
]
for question in questions:
await message.answer(question)
Итог
Теперь у вас есть Telegram-бот, который автоматизирует HR-процессы:
- Собирает анкеты от кандидатов
- Проводит предварительное собеседование с помощью ИИ
- Сохраняет данные в Google Sheets
🔹 Хотите еще больше полезных гайдов? Подписывайтесь на наш Telegram-канал — там только самые актуальные фишки по автоматизации и AI в HR!
Начать дискуссию