SatyamSinghal commited on
Commit
3dac419
·
verified ·
1 Parent(s): 89839f0

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +19 -19
app.py CHANGED
@@ -79,29 +79,29 @@ def format_response(data):
79
  if not data:
80
  return "No data available for this query."
81
 
82
- # Handle nested dictionaries
83
- def flatten_dict(d, parent_key='', sep=': '):
84
- items = []
85
- for k, v in d.items():
86
- new_key = f"{parent_key}{sep}{k}" if parent_key else k
87
- if isinstance(v, dict):
88
- items.extend(flatten_dict(v, new_key, sep=sep).items())
89
- else:
90
- items.append((new_key, v))
91
- return dict(items)
92
 
93
  if isinstance(data, dict):
94
- # Flatten nested dictionaries and format the result
95
- flattened_data = flatten_dict(data)
96
- formatted_response = "### Insights:\n\n"
97
- for key, value in flattened_data.items():
98
- formatted_response += f"**{key.capitalize()}**: {value}\n\n"
 
 
 
 
 
 
 
 
 
 
 
99
  elif isinstance(data, list):
100
- # Handle list response
101
- formatted_response = "### Insights:\n\n" + "\n".join(f"{idx+1}. {item}" for idx, item in enumerate(data))
102
  else:
103
- # Handle simple string or non-dict response
104
- formatted_response = f"### Key Insights:\n\n{data}"
105
 
106
  return formatted_response.strip()
107
 
 
79
  if not data:
80
  return "No data available for this query."
81
 
82
+ formatted_response = ""
 
 
 
 
 
 
 
 
 
83
 
84
  if isinstance(data, dict):
85
+ formatted_response += "### Key Insights:\n\n"
86
+ for key, value in data.items():
87
+ if isinstance(value, dict):
88
+ # For nested dictionaries, add a heading for the sub-keys
89
+ formatted_response += f"**{key.capitalize()}**:\n"
90
+ for sub_key, sub_value in value.items():
91
+ formatted_response += f" - **{sub_key.capitalize()}**: {sub_value}\n"
92
+ elif isinstance(value, list):
93
+ # If the value is a list, show it as a bullet-point list
94
+ formatted_response += f"**{key.capitalize()}**:\n"
95
+ for idx, item in enumerate(value):
96
+ formatted_response += f" - {item}\n"
97
+ else:
98
+ # For other types of data, simply display key-value pairs
99
+ formatted_response += f"**{key.capitalize()}**: {value}\n"
100
+
101
  elif isinstance(data, list):
102
+ formatted_response += "### Insights:\n\n" + "\n".join(f"{idx+1}. {item}" for idx, item in enumerate(data))
 
103
  else:
104
+ formatted_response = f"### Key Insight:\n\n{data}"
 
105
 
106
  return formatted_response.strip()
107