How adhamhesham07/estately_ai_system works
Estately is a real-estate assistant combining property recommendations, market analysis, and conversational help. Users can search or ask questions through the API or chatbot interfaces; the system also exposes fair-price and market-pulse analysis. The recommender and analyzer share cleaned property data backed by SQLite. The graph preserves the documented agent, booking, and knowledge capabilities, but source excerpts do not show the agent graph’s internal routing or all interface wiring, so those links are omitted rather than inferred.
Main entry points: main.py FastAPI · 2_data_bridge.py Agent Data Bridge · preprocessing_engine.py Shared Preprocessing · db_adapter.py Property Data Adapter
Components 30
User Interfaces
- FastAPI
5.APIs/main.py - API Schemas
5.APIs/schemas.py - Web Chat UI
6.GUI/chatbot.js - Gradio UI
agent_gui.py
Conversational Agent
- Conversation State
1.Agent/3_state_definition.py - Agent Graph
1.Agent/4_graph_builder.py - Intent Extraction
1.Agent/2_nodes/1_intent_node.py - Tool Execution
1.Agent/2_nodes/2_tool_node.py - Response Translation
1.Agent/2_nodes/3_translator.py - Response Audit
1.Agent/2_nodes/4_auditor.py - Entity Extraction
1.Agent/2_nodes/entity_extractor.py - Viewing Booking
1.Agent/3_sceduler/booking_logic.py - Agent Data Bridge
1.Agent/2_data_bridge.py
Property Recommendations
- Search Adapter
2.Recommender/5_query_adapter.py - Recommendation Pipeline
2.Recommender/4_main_orchestration.py - Ranking Features
2.Recommender/2_math_and_features.py - Ranker Training
2.Recommender/3_teacher.py
Analysis and Data
- Market Statistics
3.Analyzer/3_market_engine.py - Preference Analysis
3.Analyzer/4_preference_engine.py - Insight Synthesis
3.Analyzer/5_insight_builder.py - Fair Price Evaluation
3.Analyzer/6_analyzer_evaluator.py - Market Knowledge
3.Analyzer/7_knowledge_engine.py - Analysis Language Model
3.Analyzer/8_analyzer_llm.py - Analyzer Ingestion
3.Analyzer/2_ingestion_adapter.py - Shared Preprocessing
4.Data/preprocessing_engine.py - Property Data Adapter
4.Data/2_DataBase/db_adapter.py - SQLite Connector
4.Data/2_DataBase/db_connector.py - Property Database
4.Data/2_DataBase/RealEstate.db - Knowledge Loader
4.Data/3_market_knowledge/knowledge_loader.py
Other components
- User
Connections 12
- User → FastAPI: submits requests
5.APIs/main.py - FastAPI → API Schemas: validates with
5.APIs/main.py - FastAPI → Search Adapter: searches through
5.APIs/main.py - FastAPI → Fair Price Evaluation: evaluates prices with
5.APIs/main.py - FastAPI → Market Statistics: fetches market pulse
5.APIs/main.py - Agent Data Bridge → Recommendation Pipeline: executes recommendations
1.Agent/2_data_bridge.py - Agent Data Bridge → Market Statistics: requests fair-price estimate
1.Agent/2_data_bridge.py - Agent Data Bridge → Insight Synthesis: formats price context
1.Agent/2_data_bridge.py - Analyzer Ingestion → Shared Preprocessing: loads cleaned catalog
3.Analyzer/2_ingestion_adapter.py - Shared Preprocessing → Property Data Adapter: fetches properties
4.Data/preprocessing_engine.py - Property Data Adapter → SQLite Connector: gets database engine
4.Data/2_DataBase/db_adapter.py - SQLite Connector → Property Database: connects to
4.Data/2_DataBase/db_connector.py