Develop an AI-powered assistant for a real estate agency that assists potential buyers and renters in finding their ideal property.
The assistant should engage users in a conversation, asking questions about their preferences such as:
- location (city, neighborhood)
- budget range
- property type (apartment, house, condo)
- number of bedrooms and bathrooms
- desired amenities (parking, garden, pool)
- proximity to schools or public transportation.
POC app will have simple UI and will use local csv with possibility to specify list of external CSV files.
Formatted dataset will contain fake extra fields based on the task requirements, for demo purposes.
This table describes the columns in the DataFrame:
Column Name | Description |
---|---|
id |
Unique identifier for each record. |
city |
Name of the city where the property is located. |
type |
Type of property (e.g., apartment, house). |
square_meters |
Area of the property in square meters. |
rooms |
Number of rooms in the property. |
floor |
Floor number where the property is located. |
floor_count |
Total number of floors in the building. |
build_year |
Year the building was constructed. |
latitude |
Latitude coordinate of the property. |
longitude |
Longitude coordinate of the property. |
centre_distance |
Distance from the property to the city center. |
poi_count |
Number of Points of Interest nearby. |
school_distance |
Distance to the nearest school. |
clinic_distance |
Distance to the nearest clinic. |
post_office_distance |
Distance to the nearest post office. |
kindergarten_distance |
Distance to the nearest kindergarten. |
restaurant_distance |
Distance to the nearest restaurant. |
college_distance |
Distance to the nearest college. |
pharmacy_distance |
Distance to the nearest pharmacy. |
ownership |
Type of ownership (e.g., condominium). |
building_material |
Material used in the construction of the building. |
condition |
Condition of the property (e.g., new, good). |
has_parking_space |
Whether the property has a parking space (True /False ). |
has_balcony |
Whether the property has a balcony (True /False ). |
has_elevator |
Whether the building has an elevator (True /False ). |
has_security |
Whether the property has security (True /False ). |
has_storage_room |
Whether the property has a storage room (True /False ). |
price |
Price of the property. |
price_media |
Median price of similar properties. |
price_delta |
Difference between the property's price and price_media . |
negotiation_rate |
Possibility of negotiation (e.g., High, Medium, Low). |
bathrooms |
Number of bathrooms in the property. |
owner_name |
Name of the property owner. |
owner_phone |
Contact phone number of the property owner. |
has_garden |
Whether the property has a garden (True /False ). |
has_pool |
Whether the property has a pool (True /False ). |
has_garage |
Whether the property has a garage (True /False ). |
has_bike_room |
Whether the property has a bike room (True /False ). |
# Install pip and poetry
python -m ensurepip --upgrade
curl -sSL https://install.python-poetry.org | python3 - --version 1.7.0
# Init poetry virtual env
poetry init
poetry env use 3.11
poetry config virtualenvs.in-project true
source .venv/bin/activate
poetry config virtualenvs.prompt 'ai-real-estate-assistant'
poetry config --list
# Add deps
poetry add ...
poetry lock
git clone https://github.com/AleksNeStu/ai-real-estate-assistant.git
poetry install --no-root
source .venv/bin/activate