Python backend / FastAPI / Django / боты / автоматизация

Денис Третьяков strongtretyakov

Рейтинг: 1 753
Паспорт верифицирован
Всего отзывов: 0
  • Работ в портфолио: 3
  • Типовых услуг: 3
  • Работ на продажу: 0
  • Стаж работы: 5 лет
  • Зарегистрирован: 07.03.2022
  • Образование: Среднее профессиональное
  • Юридический статус:Частное лицо
  • Стоимость услуг (руб): 800 за час 100 000 за месяц
Был на сайте:

Telegram-бот с AI и голосовым управлением (Hermes Agent)

Используемые навыки:

Описание

Разработал и задеплоил Telegram-бота с AI-чатом и голосовым управлением. Бот понимает текстовые и голосовые сообщения — речь распознаётся через faster-whisper локально, без облачных API. Интегрирован с HH.ru через OAuth 2.0 для работы с вакансиями. Бот общается через собственное Hermes API (FastAPI), которое маршрутизирует запросы к deepseek-v4-pro.

Развёрнут на собственном VPS: Docker-контейнер, systemd-автозапуск, healthcheck-эндпоинт, логирование.

Стек: Python 3.10+, aiogram 3.x, FastAPI, faster-whisper, HH OAuth 2.0, deepseek-v4-pro API, Docker, systemd

Ключевые фичи: — Голосовой ввод (Whisper base, CPU, int8) — AI-диалог с потоковым ответом, кнопка Stop — HH OAuth 2.0: авторизация, поиск вакансий — /status — мониторинг uptime и состояния — Продакшен-деплой: Docker + systemd + auto-restart

Решение

Спроектировал архитектуру сервиса из трёх слоёв: Telegram-бот (aiogram 3.x) → Hermes API (FastAPI) → внешние API (deepseek-v4-pro, HH.ru).

Бот написан на aiogram 3.x с разделением на роутеры (команды, голосовые сообщения, текстовый чат). Для голосового ввода интегрировал faster-whisper локально — модель base на CPU с квантованием int8, без облачных API. Инициализация lazy singleton, чтобы не тратить память при старте.

Hermes API на FastAPI: эндпоинты /chat, /health, /status. Маршрутизация запросов к deepseek-v4-pro с потоковым ответом (streaming). Кнопка Stop для прерывания генерации.

HH OAuth 2.0: полный флоу — генерация authorize URL, обмен authorization code на access token, запрос /me для профиля. Токены хранятся в .env.

Деплой: Docker-контейнер, docker-compose, systemd-сервис с auto-restart и healthcheck-эндпоинтом. Логирование через стандартный logging с ротацией.

Результат

Бот работает 24/7 на VPS . Принимает текстовые и голосовые сообщения — распознавание речи занимает ~1 секунду для 10-секундного аудио на CPU. AI-диалог через deepseek-v4-pro с возможностью остановки генерации в любой момент.

Интегрирован с HH.ru: пользователь авторизуется через OAuth и получает доступ к поиску вакансий прямо в Telegram.

Отказоустойчивость: systemd автоматически перезапускает контейнер при падении. Мониторинг через /status — uptime, версия, состояние.

Проект активно развивается: добавлены новые фичи (голос, OAuth), проведён рефакторинг (переименование сервиса, чистка кода). Код открыт на GitHub, ведётся документация.

Презентация проекта

Снимок_экрана_от_2026_06_11_21_47_06.png

Оценили проект:

0