diff --git a/sk1/README.md b/sk1/README.md deleted file mode 100644 index efd94ec..0000000 --- a/sk1/README.md +++ /dev/null @@ -1,124 +0,0 @@ -# 🧠 Detekcia nenávistnej reči - -Webová aplikácia na klasifikáciu textov a detekciu nenávistnej alebo toxickej reči. - ---- - -## Čo aplikácia robí - -- Umožňuje používateľovi zadať text cez frontend (React) -- Text sa odosiela na backend (Flask API), kde je analyzovaný pomocou ML modelu -- Výsledok predikcie („Pravdepodobne toxický“ alebo „Neutrálny text“) sa zobrazí používateľovi -- Každá požiadavka sa uloží do `history.json` spolu s časovou pečiatkou -- Endpoint `/api/history` vracia históriu predikcií vo formáte JSON - ---- - -## Použité technológie - -### Cloud infraštruktúra – [Railway](https://railway.app) -- Automatizované nasadenie z GitHub -- Predkonfigurovaný HTTPS a verejná doména -- Automatická správa buildov, reštartov a logovania - -### Docker -- Backend kontajnerizovaný vlastným `Dockerfile` (Flask + model) -- Frontend ako samostatná React služba (build cez Nixpacks alebo Docker) -- Podpora manuálneho spustenia cez `Docker Compose` - -### Lokálna a dočasná perzistencia -- `history.json`: lokálna databáza vo forme JSON -- Uchováva: vstupný text, predikciu a čas -- Endpoint: `GET /api/history` - ---- - -## Štruktúra projektu -``` -. -├── backend/ -│ ├── app.py # Flask API endpointy -│ ├── Dockerfile # Konfigurácia kontajnera pre backend -│ └── history.json # Perzistencia predikcií -├── frontend/ -│ └── vite.config.js # Railway doménová konfigurácia -├── docker-compose.yaml # Definuje služby pre frontend a backend -├── prepare-app.sh # Spustenie Docker kontajnerov -├── remove-app.sh # Zastavenie a odstránenie kontajnerov -└── README.md # Dokumentácia projektu -``` - -## Ako aplikáciu použiť - -1. Otvor frontend: - [https://hate-frontend-production.up.railway.app](https://hate-frontend-production.up.railway.app) - -2. Zadaj text do vstupného poľa - -3. Klikni na tlačidlo ✈️ - -4. Výsledok sa zobrazí a zároveň uloží do histórie - -5. Históriu si môžeš pozrieť cez: - [https://hate-backend-production.up.railway.app/api/history](https://hate-backend-production.up.railway.app/api/history) - -### Lokálne spustenie - -**Požiadavky:** -- OS: Linux/macOS alebo WSL -- Docker + Docker Compose - -```bash -chmod +x prepare-app.sh start-app.sh stop-app.sh remove-app.sh -./prepare-app.sh # Build a príprava kontajnerov -./start-app.sh # Spustenie aplikácie -./stop-app.sh # Zastavenie aplikácie -./remove-app.sh # Úplné vyčistenie aplikácie a odstránenie všetkých kontajnerov -``` - -## API Endpointy - -- `POST /api/predict` – predikcia toxickosti zadaného textu -- `GET /api/history` – výpis histórie všetkých analyzovaných textov -- `GET /api/history/raw` - surový obsah history.json -- `POST /api/history/reset` - resetovanie a vyčistenie histórie - -## Model strojového učenia - -- **Názov:** [`tetianamohorian/hate_speech_model`](https://huggingface.co/tetianamohorian/hate_speech_model) -- **Architektúra:** vlastný klasifikačný model trénovaný na báze Slovak-T5-base-small.Model bol vlastnoručne fine-tunovaný na binárnu klasifikáciu textov (toxický vs. neutrálny) s použitím dátovej množiny určenenej na detekciu nenávistnej reči [`TUKE-KEMT/hate_speech_slovak`](https://huggingface.co/datasets/TUKE-KEMT/hate_speech_slovak). -- **Typ:** Encoder-decoder transformer, finetunovaný na binárnu klasifikáciu (toxický / neutrálny) - - -## Použité knižnice - -- `transformers` – práca s Hugging Face modelmi - -- `torch` – tensorový backend - -- `flask` – API backend - -- `flask_cors` – povolenie CORS - -- `flask_caching` – cache výsledkov - -## Funkcionality - -Projekt demonštruje: - -- Nasadenie do cloudu (Railway) ✅ - -- HTTPS certifikát ✅ - -- Docker kontajnery pre frontend a backend ✅ - -- Ukladanie predikcií (JSON) ✅ - -- Automatické reštarty ✅ - -- API testovanie ✅ - -- Kvalitná dokumentácia ✅ - - -