14462e8c10269ee479762d10a210ba26d66c5e4f
- etl/normalize/matcher.py — каскад код→точное→эмбеддинги→fuzzy→unmatched - etl/validate/rules.py — правила ТЗ §4.4; проверено: 15588 done / 11 needs_review - etl/extractors/vision.py — Gemini Vision для битых/нестандартных PDF - замер % автонормализации — после установки модели эмбеддингов Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
medtech-hackathon
Terricon Valley · Medtech Hackathon (26–28.06.2026) · Кейс 1 — автоматическая обработка архива прайсов клиник-партнёров.
Превращаем архив разнородных прайс-листов клиник (Excel / PDF / скан / фото / .doc, RU/KZ/EN, грязные данные) в единый сравнимый каталог услуга → клиника → цена с поиском, сравнением цен и экспортом.
Стек
- ETL/бэкенд: Python + FastAPI (pandas для Excel, LLM-vision для грязного, pdfplumber, Tesseract
kaz+rusfallback) - Канонизация услуг: sentence-transformers + pgvector + детерминированная матрица конфликтов (см. словарик)
- БД: PostgreSQL + pgvector
- Фронт: Next.js + Tailwind + shadcn/ui (дизайн на фирменной палитре)
- Деплой: Docker Compose + Caddy →
med.secondbrain.tools(Selectel KZ)
Языки
KAZ / RUS / ENG — сквозное требование (данные и UI).
Структура (план)
contracts/ — модель данных + Zod-схемы + openapi.yaml (агент A)
db/ — миграции (агент A)
etl/ — парсинг и нормализация (агент B)
api/ — REST API поиска/сравнения (агент C)
web/ — Next.js UI (агент D)
infra/ — docker-compose, Caddyfile (агент E)
docs/ — документация, ADR (агент F)
pitch/ — слайды и демо-сценарий (агент F)
fixtures/ — синтетические + эталонные данные
Скелет кода поднимается в Фазе 0 хакатона после заморозки контрактов.
Полный план
В хранилище Obsidian: Base/_Inbox/Хакатон Medtech/ (план, словарик нормализации, дизайн-система, памятка).
Description
Languages
Python
60.5%
HTML
37.5%
CSS
0.7%
Dockerfile
0.5%
TypeScript
0.5%
Other
0.3%