Skip to content

About

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

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

FraudSeeker

Предиктивная AI-система антифрода с модулем объяснимости Overclock Hub Hackathon 2026


О проекте

FraudSeeker - это B2B-микросервис для банков и криптобирж. Система выявляет мошеннические транзакции в реальном времени, оптимизируя ключевой конфликт финтеха: баланс между финансовыми потерями и блокировкой честных пользователей.

Главная ценность продукта это модуль XAI. Алгоритм генерирует текстовое обоснование риска (например: Риск 95%: аномальная сумма + смена геолокации + VPN), сокращая время расследования инцидентов риск-аналитиками.

Стек технологий

  • Язык: Python 3.9
  • Веб-фреймворк: FastAPI
  • База данных: PostgreSQL, SQLAlchemy 2.0
  • ML: Scikit-learn (Random Forest), Pandas, SMOTE
  • Инфраструктура: Uvicorn, ngrok (для связки с Frontendом)

API Эндпоинты

Интерактивная документация (Swagger) доступна локально по адресу /docs. Все запросы поддерживают CORS.

Метод Эндпоинт Назначение
POST /api/v1/transactions/check ML-скоринг новой транзакции. Возвращает вердикт, risk Score (0-100%) и XAI объяснение.
GET /api/v1/transactions/stats Сводная финансовая аналитика (сохраненный бюджет в ₸)
GET /api/v1/transactions/ Лента исторических транзакций с поддержкой пагинации
GET /api/v1/analytics/tradeoff Данные для графика баланса Loss vs Friction
GET /api/v1/analytics/kpis Базовые метрики для дашборда (обработано, заблокировано, безопасно)

Инструкция по развертыванию

1. Клонирование и настройка окружения

git clone <https://github.com/CodingGeek984/Overclock_hack/tree/backend-dev>
cd FraudSeeker

# Создание и активация виртуального окружения
python3.9 -m venv .venv
source .venv/bin/activate

# Установка зависимостей
pip install -r requirements.txt

2. Настройка базы данных Убедитесь, что локальный сервер PostgreSQL запущен. Создайте пустую базу данных fraudseeker_db. В файле database.py проверьте строку подключения:

DATABASE_URL = "postgresql://postgres:12345@localhost:5432/fraudseeker_db"

3. Генерация данных Для полноценной работы аналитических дашбордов требуется массив исторических данных. В корне проекта находится скрипт, который сгенерирует 100 000 реалистичных транзакций с 5% распределением фрода, и загрузит их в СУБД:

python generate_data.py

4. Запуск бэкенда

uvicorn main:app --reload --port 8080

Сервер будет доступен по адресу http://127.0.0.1:8080.

5. Проброс туннеля для Frontend-команды Чтобы клиентская часть могла отправлять запросы в обход локальных ограничений, откройте новую вкладку терминала и запустите туннель:

ngrok http 8080

Скопируйте полученный HTTP-адрес (https://unnegotiated-apocalyptically-paulette.ngrok-free.dev) и передайте его фронтенд-разработчику для установки в качестве BASE_URL API-клиента.

Хорошего пользования! :D

About

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

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages