bluenevus commited on
Commit
5788fdd
·
verified ·
1 Parent(s): 229097a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -3
app.py CHANGED
@@ -129,7 +129,7 @@ def generate_red_document(document: str, compliance_report: str) -> str:
129
  response = model.generate_content(prompt)
130
  return response.text
131
 
132
- def generate_loe(document: str) -> Tuple[str, pd.DataFrame]:
133
  prompt = f"""
134
  Analyze the following document and provide a Level of Effort (LOE) breakdown:
135
 
@@ -148,6 +148,7 @@ def generate_loe(document: str) -> Tuple[str, pd.DataFrame]:
148
  - Total Hours
149
 
150
  Present the detailed breakdown first, followed by the summary table.
 
151
  """
152
  response = model.generate_content(prompt)
153
 
@@ -157,8 +158,13 @@ def generate_loe(document: str) -> Tuple[str, pd.DataFrame]:
157
  table_text = response.text[table_start:table_end]
158
 
159
  # Convert the table to a pandas DataFrame
160
- df = pd.read_csv(io.StringIO(table_text), sep='|', skipinitialspace=True).dropna(axis=1, how='all')
161
- df.columns = df.columns.str.strip()
 
 
 
 
 
162
 
163
  return response.text, df
164
 
 
129
  response = model.generate_content(prompt)
130
  return response.text
131
 
132
+ ddef generate_loe(document: str) -> Tuple[str, pd.DataFrame]:
133
  prompt = f"""
134
  Analyze the following document and provide a Level of Effort (LOE) breakdown:
135
 
 
148
  - Total Hours
149
 
150
  Present the detailed breakdown first, followed by the summary table.
151
+ Ensure the table is properly formatted with | as column separators and a header row.
152
  """
153
  response = model.generate_content(prompt)
154
 
 
158
  table_text = response.text[table_start:table_end]
159
 
160
  # Convert the table to a pandas DataFrame
161
+ try:
162
+ df = pd.read_csv(StringIO(table_text), sep='|', skipinitialspace=True).dropna(axis=1, how='all')
163
+ df.columns = df.columns.str.strip()
164
+ except pd.errors.EmptyDataError:
165
+ # If no table is found or it's empty, create a default DataFrame
166
+ df = pd.DataFrame(columns=['Task Summary', 'Labor Categories', 'Hours per Labor Category', 'Total Hours'])
167
+ response.text += "\n\nNote: No detailed LOE table could be generated from the AI response."
168
 
169
  return response.text, df
170