CoolFace
Apppublic

wangzerui/Home_Design_Agent

sourceHugging Faceupdated 1y agoView on Hugging Face
0likes
state.py65 linesDownload Raw Back to root
1from typing import Dict, List, Optional, Any2from typing_extensions import TypedDict3 4 5class UserRequirements(TypedDict):6    """User's home design requirements"""7    budget: Optional[float]8    location: Optional[str]9    family_size: Optional[int]10    lifestyle_preferences: List[str]11    special_needs: List[str]12 13 14class FloorplanRequirements(TypedDict):15    """Floorplan-specific requirements"""16    num_floors: Optional[int]17    total_sqft: Optional[int]18    lot_shape: Optional[str]19    lot_dimensions: Optional[str]20    rooms: List[Dict[str, Any]]  # [{"type": "bedroom", "count": 3, "min_size": 120}]21 22 23class DetailedFloorplan(TypedDict):24    """Detailed floorplan design from architectural analysis"""25    design_analysis: Optional[Dict[str, Any]]26    detailed_rooms: List[Dict[str, Any]]  # Each room with exact dimensions, placement, features27    structural_elements: List[Dict[str, Any]]  # Walls, doors, windows28    circulation_plan: Dict[str, Any]  # Hallways, stairs, traffic flow29    lot_utilization: Dict[str, Any]  # How the building sits on the lot30    architectural_features: List[str]  # Special design elements31 32 33class BudgetBreakdown(TypedDict):34    """Detailed construction cost breakdown"""35    site_preparation: Optional[float]36    foundation: Optional[float]37    framing: Optional[float]38    roofing: Optional[float]39    exterior_finishes: Optional[float]40    interior_finishes: Optional[float]41    mechanical_systems: Optional[float]42    electrical_systems: Optional[float]43    plumbing_systems: Optional[float]44    permits_fees: Optional[float]45    professional_services: Optional[float]46    contingency: Optional[float]47    total_construction_cost: Optional[float]48    cost_per_sqft: Optional[float]49    budget_analysis: Optional[str]50 51 52class ConversationState(TypedDict):53    """Overall conversation state with enhanced multi-agent memory"""54    messages: List[Dict[str, str]]55    current_topic: Optional[str]  # "general", "budget", "floorplan"56    user_requirements: UserRequirements57    floorplan_requirements: FloorplanRequirements58    detailed_floorplan: DetailedFloorplan59    budget_breakdown: BudgetBreakdown60    conversation_history: List[str]61    agent_recommendations: List[str]62    agent_memory: Dict[str, Any]  # Shared memory between agents63    next_agent: Optional[str]64    floorplan_ready: bool65    budget_ready: bool