Skip to content

smrgn/ab-testing-service

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📊 A/B Testing Automation Service

🧠 Описание проекта

Этот проект представляет собой аналитический сервис для автоматизации A/B-тестирования, разработанный в рамках выпускной квалификационной работы.

Сервис позволяет:

  • рассчитывать необходимые параметры для проведения A/B-теста (дизайн эксперимента),
  • валидировать метрики с помощью A/A-тестирования,
  • проводить анализ результатов с использованием z-теста пропорций и t-теста, в том числе с применением линеаризации,
  • визуализировать результаты и сохранять их в базу данных PostgreSQL.

Система локально развёртывается в Docker и использует Streamlit для создания веб-интерфейса.


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

  • 🐍 Python 3.10
  • 📊 Streamlit
  • 🐘 PostgreSQL 15
  • 🐳 Docker + Docker Compose
  • 📦 pandas, scipy, statsmodels, psycopg2

🧭 Структура проекта

ab-testing-service/
├── app/                      # основной код приложения
│   ├── main.py               # маршрутизация экранов
│   ├── design_screen.py      # расчёт объема выборки
│   ├── validation_screen.py  # проверка данных
│   ├── results_screen.py     # анализ результатов
│   ├── faq_screen.py         # справка
│   ├── home_screen.py        # главная страница
│   ├── aa_tests.py           # A/A тестирование
│   └── data_loader.py        # взаимодействие с БД
│
├── db/
│   └── init.sql              # SQL-скрипт создания таблиц
│
├── Dockerfile                # инструкция сборки образа
├── docker-compose.yml        # конфигурация сервисов
├── requirements.txt          # зависимости Python
├── .gitignore
└── README.md                 # этот файл

🚀 Как запустить

1. Установите Docker и Docker Compose

2. Клонируйте репозиторий и перейдите в папку проекта

git clone https://github.com/smrgn/ab-testing-service.git
cd ab-testing-service

3. Запустите проект

docker-compose up --build

После запуска приложение будет доступно по адресу: http://localhost:8501


🗄️ Подключение к базе данных

При первом запуске автоматически создаются таблицы:

  • experiments_history — информация об экспериментах
  • metrics — метрики пользователей и групп
  • users - информация о пользователях

Все данные, загружаемые через интерфейс, сохраняются в PostgreSQL в контейнере db.


🧪 Возможности

  • Загрузка и проверка CSV/XLSX файлов
  • Расчёт объема выборки (дизайн A/B)
  • Анализ результатов (t/z-тесты)
  • A/A тестирование на симулированных выборках
  • Интуитивный Streamlit-интерфейс
  • Локальное и безопасное хранение данных

📬 Обратная связь

Разработано в рамках ВКР Смурыгиной Викторией студенткой 4 курса РТУ МИРЭА. Профиль: Прикладная информатика — Управление данными.

Для связи: https://t.me/smrgn

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published