Agentic data acquisition and Multi-Model Prediction of Real Estate properties in Tunisia
# EstateMind
EstateMind is a Tunisia-focused real-estate valuation platform combining tabular modeling, image understanding, NLP sentiment, comparables, and confidence estimation.
It exposes:
- FastAPI backend for programmatic valuation
- Streamlit frontend for interactive estimation and reporting
- Django unified backend scaffold for valuation + listings routing (`django_backend/`)
- React frontend scaffold for listings and valuation flow (`frontend_react/`)
- Offline training/evaluation scripts for model refresh and benchmarking
## 1. End-to-End Pipeline
1. Input capture
- Structured features: property type, transaction type, size, rooms, condition, amenities, location
- Optional listing description
- Optional property images
2. Request mapping
- `src/inference/request_mapper.py` normalizes API payloads into internal feature format
3. Vision processing
- `src/vision/type_classifier.py` classifies images (ResNet first, CLIP feature inference fallback)
- `src/vision/image_quality.py` evaluates image coverage/quality
- `src/vision/feature_aggregation.py` aggregates image-level signals to listing-level features
- If the user does not manually choose a property type, the backend can auto-detect it from uploaded images and return a structured guidance prompt.
- If the user manually selects a property type that conflicts with the image evidence, the backend returns a confirmation warning so the UI can prompt the user to correct it.
- Amenity selections are also cross-checked against uploaded photos: missing visible amenities are suggested, while selected amenities that are not visible trigger a prompt to review the selection or upload more images.
- If the effective property type is `Terrain`, the backend disables all amenities (`has_pool`, `has_garden`, `has_parking`, `sea_view`, `elevator`) and returns guidance indicating those amenities are not applicable.
- As soon as at least one image is uploaded, image-guidance checks are activated and surfaced in the respon …