destinyebuka commited on
Commit
9b90b36
Β·
1 Parent(s): 6168c9e
Files changed (1) hide show
  1. app/ai/agent/brain.py +11 -8
app/ai/agent/brain.py CHANGED
@@ -144,6 +144,7 @@ User Location: {state.user_location or 'Unknown'}
144
  8. NEVER set show_data:true for edit_listing - only show the single listing being edited.
145
  9. If user already saw their listings and asks about something else, show_data should be FALSE.
146
  10. For follow-up questions after showing listings (like "thanks", "edit this one"), show_data: false.
 
147
 
148
  === YOUR TASK ===
149
  Think through this:
@@ -153,21 +154,23 @@ Think through this:
153
 
154
  Return JSON:
155
  {{
156
- "thinking": "Your step-by-step reasoning",
157
  "tool": "tool_name or null",
158
  "params": {{}},
159
- "response": "Your response to user",
160
  "is_final": true or false,
161
  "show_data": true or false // ONLY true for FIRST TIME showing search/listings
162
  }}
163
 
 
 
 
 
 
164
  EXAMPLES:
165
- - User: "Hello" β†’ Greet them, no tool, show_data: false
166
- - User: "Who are you?" (after greeting) β†’ Explain who you are, no tool, show_data: false
167
- - User: "Show my listings" β†’ Use get_my_listings tool, show_data: true
168
- - User: "Thanks" (after you showed listings) β†’ Just say "You're welcome!", no tool, show_data: false
169
- - User: "edit listing abc123" β†’ Use edit_listing tool, show_data: false (only show that listing)
170
- - User: "What's the weather?" (after showing listings) β†’ Answer question, no tool, show_data: false"""
171
 
172
  return prompt
173
 
 
144
  8. NEVER set show_data:true for edit_listing - only show the single listing being edited.
145
  9. If user already saw their listings and asks about something else, show_data should be FALSE.
146
  10. For follow-up questions after showing listings (like "thanks", "edit this one"), show_data: false.
147
+ 11. **OFF-TOPIC QUESTIONS DURING LISTING FLOW**: If user is in the middle of updating/editing a listing but asks something UNRELATED (e.g., "What time is it?", "Who is Elon Musk?", "What's the weather?"), ANSWER their question correctly BUT set show_data: false. Do NOT re-display the listing card for off-topic questions.
148
 
149
  === YOUR TASK ===
150
  Think through this:
 
154
 
155
  Return JSON:
156
  {{
157
+ "thinking": "Your internal reasoning (user will NOT see this)",
158
  "tool": "tool_name or null",
159
  "params": {{}},
160
+ "response": "REQUIRED: The actual friendly message you want to show the user (e.g., 'You're welcome! 😊 Let me know if you need anything else.')",
161
  "is_final": true or false,
162
  "show_data": true or false // ONLY true for FIRST TIME showing search/listings
163
  }}
164
 
165
+ CRITICAL:
166
+ - The "response" field is MANDATORY. This is what the user will see.
167
+ - The "thinking" field is internal only - user never sees it.
168
+ - Always write a friendly, natural response in the "response" field.
169
+
170
  EXAMPLES:
171
+ - User: "Hello" β†’ {{"thinking": "User greeting", "response": "Hey there! πŸ‘‹ I'm AIDA, your real estate assistant. How can I help you today?", "tool": null, "is_final": true, "show_data": false}}
172
+ - User: "Thanks" β†’ {{"thinking": "User thanking me", "response": "You're welcome! 😊 Is there anything else I can help you with?", "tool": null, "is_final": true, "show_data": false}}
173
+ - User: "Show my listings" β†’ {{"thinking": "User wants listings", "response": "Here are your listings!", "tool": "get_my_listings", "is_final": true, "show_data": true}}"""
 
 
 
174
 
175
  return prompt
176