Ta repozitorij vsebuje vse podatke, cevovode za obdelavo podatkov in kodo potrebno za lokalni zagon aplikacije.
- Izdelan cevovod za pridobitev in obdelavo podatkov
- Klepetalni robot (GaMS3-12B ali GPT5.2), s katerim uporabnik lažje navigira in pridobiva informacije o kulturni dediščini
- Dovršen ti. tool-calling dostop do dopolnjenega registra. Pri modelu GaMS smo uporabili drugačen pristop k tool-callanju, ker model te zmogljivosti še ne podpira
- Dovršena vektorska baza z zapisi o kulturni dediščini preko katere klepetalnik izvaja RAG (Retrieval-Augmented Generation)
- Interaktivni zemljevid s sloji za posamezno ogroženost (poplave, plazovi, požari, onesnaženost zraka)
arnes-hackathon-backend/FastAPI API, obdelava podatkov, chat_service.py, vektorska baza Chroma, ...arnes-hackathon-frontend/React uporabniški vmesnik, sloji ogroženosti, klepetalnik, ...
arnes-hackathon-backend/main.pyarnes-hackathon-backend/rnpd_service.pyarnes-hackathon-backend/chat_service.pyarnes-hackathon-backend/makeEmbedding.pyarnes-hackathon-backend/AI/verify_enrich_geojson.py
- Python 3.11+
- Node.js 18+
- npm
Iz korena arnes-hackathon/ izvedemo:
cd arnes-hackathon-backend
python -m venv .venv
source .venv/bin/activate
pip install -r requirements-dev.txt
cp .env.example .envKer so obdelani podatki preprosto preveliki za shrambo na Github-u najprej poženemo cevovod za obogatitev, ki datoteko ustvari, če le ta še ne obstaja. Datoteka združenih zapisov s podatki iz OPSI-ja in nadmorskimi višinami ipd. je bila še dovolj majhna, da je shranjena v kd_visine.geojson, zato je za zaključek cevovoda podatkov potrebno le še:
cd arnes-hackathon-backend/AI
python verify_enrich_geojson.pyPoženemo FastAPI strežnik:
uvicorn main:app --host 0.0.0.0 --port 8787 --reloadZa klepetalnik je potrebna dodatna konfiguracija za Azure OpenAI znotraj arnes-hackathon-backend/.env.
- Nastavi
AZURE_OPENAI_BASE_URLna tvoj Azure oddaljen vir (URL) ki se konča z/openai/v1/ - Nastavi
AZURE_OPENAI_API_KEYna tvoj deljen ali pa 'per model' ključCHAT_MODEL_*_API_KEY - Nastavi ali ohrani privzete
CHAT_MODEL_*_DEPLOYMENTvrednosti da ustrezajo tvojim
Lokalno dostopno na:
- API:
http://127.0.0.1:8787 - Swagger UI:
http://127.0.0.1:8787/docs - ReDoc:
http://127.0.0.1:8787/redoc
V drugem terminalu:
cd arnes-hackathon-frontend
cp .env.example .env.local
npm install
npm run devLokalno dostopno na:
http://localhost:8080
Privzeto aplikacija zaledni del pričakuje na naslovu http://localhost:8787.
Po potrebi lahko to obnašanje tudi spremenimo z:
API_PROXY_TARGET=http://127.0.0.1:8787 npm run devAli ustvarimo arnes-hackathon-frontend/.env.local z:
VITE_API_BASE_URL=http://localhost:8787Zaledni del:
cd arnes-hackathon-backend
source .venv/bin/activate
pytestČelni del:
cd arnes-hackathon-frontend
npm testcd arnes-hackathon-frontend
npm run build
npm run previewNe odpiraj dist/index.html direktno z file:// ampak serviraj skozi HTTP strežnik.