An AI-powered real estate recommendation system that generates, personalizes, and matches property listings based on user preferences.
- Property listing generation using LLM
- Vector similarity search
- Personalized property descriptions
- Preference-based matching
- Rating system for properties
- Python 3.10+
- OpenAI API key
- CUDA-capable GPU (optional, for faster embeddings)
-
Clone the repository:
git clone [email protected]:nmohanan31/Realestateagent.git
cd RealestateAgent
-
Create and activate virtual environment:
conda create -n vector_env python=3.10
conda activate vector_env -
Install required packages:
pip install -r requirements.txt
Set up OpenAI API credentials:
export OPENAI_API_KEY="your-api-key"
export OPENAI_API_BASE="https://openai.vocareum.com/v1"
RealestateAgent
├── realestate_agent.py # Main orchestration
├── generate_listings.py # Listing generation
├── listings_vector_database.py # Vector DB operations
├── userinterface_and_search.py # Search interface
└── personalising_listings.py # Personalized descriptions of Top recommendations
Run the main program:
python realestate_agent.py
cat real_estate_output.txt
- Listing Generation: Creates property listings using OpenAI's GPT model
- Vector Search: Implements similarity search using LanceDB
- Personalization: Customizes descriptions based on user preferences
- Rating System: Scores properties on a 1-10 scale across categories
- Sample Output
- Property listings with details
- Similarity search results
- Personalized recommendations
- Category-based ratings
- Error Handling
- Verify API key is set correctly
- Check API base URL
- Dependencies
- openai
- lancedb
- sentence-transformers
- pandas
- numpy