HomeMatch / personalization.py
Joe-ElM's picture
Update personalization.py
37f1f10 verified
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain
personalization_template = """
You are a helpful and professional real estate assistant. Rewrite the following property listing to align with the buyer's preferences.
Buyer’s profile and preferences:
{buyer_profile}
Original property listing:
{listing_description}
Guidelines:
- Start with a clear and engaging title for the listing.
- Keep the description concise and to the point (around 3 to 5 sentences).
- Focus only on factual details and features relevant to the buyer’s preferences.
- Do not invent or assume details that are not in the original listing.
- Avoid flowery or exaggerated language or fabrications..
- Ensure the final description is practical and helpful.
- After the description, include fictional broker details at the end of each listing:
- Broker name (invent a realistic name).
- Contact phone number (invent a professional-looking number).
- Email address (invent a realistic-looking professional email).
Example broker info:
Broker: Sarah Thompson, Future Homes Realty
Contact: (555) 123-4567 | sarah.thompson@futurehomes.com
Generate the personalized listing below:
"""
personalization_prompt = PromptTemplate(
input_variables = ["buyer_profile", "listing_description"],
template = personalization_template,
)
def get_personalization_chain(llm):
return LLMChain(llm = llm,
prompt = personalization_prompt)