AAYMA
RU
Войти

Sandyq Qadam

Python-пайплайн пополнения склада: прогноз спроса с поправкой на аномалии и дефицит, расчёт страхового запаса и объёмов заказа с группировкой по…

Рабочий MVP
Команда «Sandyq Qadam» 15💬 0 комментариевс 23 сентября 2026 г.

О проекте

Команда: Sandyq Qadam
Кейс HackAlem.ai: Логистика — Электрокомплект · ekt.kz
Стадия: Рабочий MVP

Задача кейса: Автоматический расчёт заказов поставщикам для пополнения склада, с утверждением менеджером

Суть

Python-пайплайн пополнения склада: прогноз спроса с поправкой на аномалии и дефицит, расчёт страхового запаса и объёмов заказа с группировкой по поставщикам, дашборд на Streamlit.

Как устроено

Загрузка и предобработка розничных данных, обнаружение и корректировка разовых крупных заказов клиентов (anomaly_detection), коррекция спроса на периоды отсутствия товара (stockout_correction). Далее сезонный прогноз сравнивается с простым baseline. Модуль inventory считает страховой запас, риски дефицита и количество к заказу, группирует позиции по поставщикам и формирует объяснения; всё это отдаётся через сервисный контракт в Streamlit-приложение. Шаг утверждения менеджером по карточке не виден.

Ключевые решения

  • сезонный прогноз спроса
  • baseline-сравнение
  • детекция разовых заказов
  • коррекция на stockout
  • safety stock
  • группировка по поставщикам

Особенности

Спрос очищается до прогноза: отдельно выявляются разовые заказы клиентов и корректируются периоды, когда товара не было на складе. В репозитории есть CI с backend-тестами.

Стек

Python · Streamlit · pytest · GitHub Actions


Проект создан за 5 часов на финале хакатона HackAlem.ai (23 сентября 2026, Астана). Код — BAITC-Hacks/hack-c35f7328-sandyq-qadam.

README

README.md

hack-c35f7328-sandyq-qadam

Hackathon team repository for Sandyq Qadam

Звёзды
⭐ 0
Форки
0
Язык
—
Последний push
в прошлом месяце
Коммиты
30
Авторы
3
Файлы
46
Ветки
5

Авторы коммитов

BluePhoenix500 13artem-anokhin 12aanokhin 5

История коммитов

  • 2026-09-23 17:57Update README with branch information for reviewersaanokhin
  • 2026-09-23 17:57Update README.mdaanokhin
  • 2026-09-23 17:54Merge pull request #5 from BAITC-Hacks/feature/frontendBluePhoenix500
  • 2026-09-23 17:53Update README.mdaanokhin
  • 2026-09-23 17:42ci: verify synchronized dev history and run backend testsBluePhoenix500
  • 2026-09-23 17:38Merge remote-tracking branch 'origin/dev' into feature/inventoryartem-anokhin
  • 2026-09-23 17:26docs(backend): add frontend handoff and real-data smoke demoBluePhoenix500
  • 2026-09-23 17:25test(inventory): cover public backend contract and validationBluePhoenix500
Все коммиты (30)
  • 2026-09-23 17:24feat(inventory): expose real forecast recommendation serviceBluePhoenix500
  • 2026-09-23 16:53docs(frontend): explain setup and integration limitsBluePhoenix500
  • 2026-09-23 16:53test(frontend): cover UI and team integrationBluePhoenix500
  • 2026-09-23 16:52feat(pipeline): connect forecasting and inventoryBluePhoenix500
  • 2026-09-23 16:51fix(frontend): polish Adelya dashboard and correct demo risksBluePhoenix500
  • 2026-09-23 16:18Merge pull request #2 from BAITC-Hacks/feature/data-forecastingaanokhin
  • 2026-09-23 16:11feat: finalize forecasting contract and testsartem-anokhin
  • 2026-09-23 16:08test: add forecasting pipeline testsartem-anokhin
  • 2026-09-23 16:03feat: add stockout-adjusted demand forecastingartem-anokhin
  • 2026-09-23 15:58docs(inventory): document integration and add runnable demoBluePhoenix500
  • 2026-09-23 15:57test(inventory): cover order quantities risks and supplier groupingBluePhoenix500
  • 2026-09-23 15:57test(inventory): add reproducible warehouse and forecast fixturesBluePhoenix500
  • 2026-09-23 15:54feat(inventory): calculate replenishment orders and group suppliersBluePhoenix500
  • 2026-09-23 15:53feat: compare seasonal forecast with simple baselineartem-anokhin
  • 2026-09-23 15:38feat: add anomaly-adjusted seasonal demand forecastartem-anokhin
  • 2026-09-23 15:36feat: detect and adjust one-off customer ordersartem-anokhin
  • 2026-09-23 15:29feat: add one-off order detectionartem-anokhin
  • 2026-09-23 15:23feat: prepare forecasting datasetartem-anokhin
  • 2026-09-23 15:12Merge pull request #1 from BAITC-Hacks/feature/data-forecastingaanokhin
  • 2026-09-23 15:09feat: add retail data loading and preprocessingartem-anokhin
  • 2026-09-23 14:47chore: configure python environmentartem-anokhin
  • 2026-09-23 14:37chore: initialize project structureartem-anokhin
Структура репозитория (46 файлов)
.env.example
.github/workflows/backend-tests.yml
.gitignore
README.md
README_BACKEND.md
README_INVENTORY.md
app/streamlit_app.py
data/processed/.gitkeep
data/raw/.gitkeep
data/synthetic/.gitkeep
data/synthetic/inventory.csv
data/synthetic/mock_forecasts.csv
demo_backend.py
demo_inventory.py
outputs/forecasts/.gitkeep
outputs/recommendations/.gitkeep
pytest.ini
requirements-backend.txt
requirements-inventory.txt
requirements.txt
src/__init__.py
src/data/__init__.py
src/data/anomaly_detection.py
src/data/load_data.py
src/data/preprocess.py
src/data/stockout_correction.py
src/forecasting/__init__.py
src/forecasting/baseline.py
src/forecasting/evaluate.py
src/forecasting/features.py
src/forecasting/model.py
src/inventory/__init__.py
src/inventory/contracts.py
src/inventory/explanation.py
src/inventory/order_calculator.py
src/inventory/pipeline.py
src/inventory/risk.py
src/inventory/safety_stock.py
src/inventory/service.py
src/inventory/stockout.py
src/inventory/supplier_grouping.py
src/inventory/synthetic.py
src/pipeline.py
tests/test_forecasting.py
tests/test_inventory.py
tests/test_inventory_service.py
Ветки (5)

Обсуждение 0 комментариев

Войдите, чтобы комментировать

Пока нет комментариев — будьте первым.