European municipalities have access to billions in EU funding but lack the resources to navigate hundreds of grant programmes. Parallax matches a city's development plan against available grants using semantic search, then explains each match through SHAP/LIME, counterfactual analysis, and LLM-generated narratives: tailored to three audience levels (citizen, analyst, auditor).
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txtBuild embeddings and run matching:
python -m src.preprocessing.pipelineBuild knowledge graph:
python -m src.knowledge_graph.builderLaunch the app:
uvicorn src.app.api:app --reloadsrc/
├── models.py # data models
├── data_collection/ # data loading
├── preprocessing/ # text cleaning, chunking
├── retrieval/ # embeddings, semantic matching
├── knowledge_graph/ # domain graph
├── xai/ # SHAP, LIME, counterfactual, RAG
├── analysis/ # gap analysis, bias detection, confidence
└── app/ # FastAPI + frontend
Company: EY — AI Explainability Challenge