**PROJECT OVERVIEW** **Project Name:** AI-Powered Property Recommendation via Contact Request \& CRM\*\* **Overview** This project builds an AI-driven recommendation system that responds to user property requests submitted through the \*\*Contact Us\*\* form on a real estate website. When a user submits a request specifying budget, location, property type, and preferences, the request is: 1\. Stored in the **CRM** as a lead 2\. Processed by the backend 3\. Passed into a vector search engine 4\. Used to retrieve the most relevant property listings 5\. Returned to the user via the **website chat interface** as recommended property links This system improves lead response speed, relevance, and conversion by providing instant, intelligent property suggestions **MVP(Minimal Viable Product) DEFINITION** **MVP Goal** Deliver **instant property recommendations** based on user specifications from the Contact Us form, while logging the request in the CRM **MVP Scope (Phase 1)** User Flow 1\. User clicks **Contact Us** 2\. User submits:   \* property type   \* location preference   \* budget   \* specifications 3\. Request is:   saved in CRM   sent to recommendation engine 4\. User receives:   5–10 recommended property links in chat  **Components** * Contact Us form * Backend API to receive lead * CRM lead ingestion * Vector search–based recommendation engine * Chat response with property cards or links **Recommendation Logic (MVP)** * **Hard filters:** budget, listing type, location * **Vector similarity:** semantic matching of property descriptions * **Re-ranking:** closeness to budget + preference match **Out of Scope (For MVP)** * Personalized long-term user profiles * Payment or booking * Mobile app * Analytics dashboard * Agent assignment logic **MVP Success Criteria** * Recommendation response time < 2 seconds * At least 70% relevance in manual review * Works with ≥ 1,000 property listings * CRM successfully stores every request **ROLE ASSIGNMENT (TEAM OF 4–5)** **AI / ML Lead** Responsibilities: * Define recommendation strategy * Design embedding \& vector search pipeline * Build Colab notebooks * Define input/output schemas * Validate recommendation quality Ownership: * Vector index * Query logic * Recommendation relevance **Backend Engineer** Responsibilities: * Contact Us API endpoint * CRM ingestion * Recommendation service orchestration * Chat response handling Ownership: * API contracts * Service reliability **Frontend Engineer** Responsibilities: * Contact Us form UI * Chat interface UI * Rendering recommendation cards/links Ownership: * User experience * API integration **Data / Infra Engineer (Optional but valuable)** Responsibilities: * Property dataset preparation * Data cleaning \& normalization * Storage \& deployment setup Ownership: * Data quality * Environment stability **Leadership rule:** You own decision clarity, not all the code. **DATASET PREPARATION (YOUR FIRST TECH TASK)** **Required Property Dataset Fields** Each property listing **must** include: | Field | Description | | ------------- | ------------------------------ | | property\_id | Unique identifier | | title | Short property title | | description | Full description | | listing\_type | sale / rent / shortlet | | property\_type | apartment / duplex / land | | price | Numeric value | | location | City / area | | bedrooms | Integer | | bathrooms | Integer | | amenities | List (parking, security, etc.) | | url | Public listing link | | status | available / unavailable | **Fields Used for Vector Embeddings** These fields are **combined into one semantic text**: * title * description * amenities * location * property\_type * listing\_type Example combined text: > “3 bedroom furnished apartment in Lekki Phase 1 with parking, 24-hour security, close to the beach.” Fields Used for Filtering (NOT embeddings) * price * listing\_type * location * bedrooms (if strict) **Dataset Sources** * Existing company database * Export from CMS * Scraped listings (if approved) * Mock dataset (for early MVP) **Output of Dataset Preparation** * Cleaned property table * Text field for embeddings * Metadata table for filters * Ready for FAISS indexing **CRM INTEGRATION (MVP VIEW)** CRM Receives: * User contact info * Property request specs * Timestamp * Recommendation IDs returned Why this matters: * Agents can see what was recommended * Follow-up becomes context-aware * Better conversion tracking