DrishtiSharma commited on
Commit
6e11d2a
Β·
verified Β·
1 Parent(s): d1ff93c

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +26 -15
app.py CHANGED
@@ -172,10 +172,17 @@ if st.session_state.df is not None:
172
  context=[analyze_data],
173
  )
174
 
175
- # Optimized Single Crew for Report and Conclusion
176
- crew = Crew(
177
- agents=[sql_dev, data_analyst, report_writer, conclusion_writer],
178
- tasks=[extract_data, analyze_data, write_report, write_conclusion],
 
 
 
 
 
 
 
179
  process=Process.sequential,
180
  verbose=True,
181
  )
@@ -188,18 +195,23 @@ if st.session_state.df is not None:
188
  query = st.text_area("Enter Query:", value="Provide insights into the salary of a Principal Data Scientist.")
189
  if st.button("Submit Query"):
190
  with st.spinner("Processing query..."):
191
- inputs = {"query": query}
192
- result = crew.kickoff(inputs=inputs)
 
 
 
 
 
193
 
194
- # βœ… Corrected result access
195
- main_report = result.tasks[2].output if result.tasks[2].output else "⚠️ No Report Generated."
196
- conclusion = result.tasks[3].output if result.tasks[3].output else "⚠️ No Conclusion Generated."
197
 
198
- # Step 1: Display Analysis Report
199
  st.markdown("### Analysis Report:")
200
  st.markdown(main_report)
201
 
202
- # Step 2: Generate relevant visualizations
203
  visualizations = []
204
 
205
  fig_salary = px.box(st.session_state.df, x="job_title", y="salary_in_usd",
@@ -217,12 +229,12 @@ if st.session_state.df is not None:
217
  title="Salary Distribution by Employment Type")
218
  visualizations.append(fig_employment)
219
 
220
- # Step 3: Insert Visual Insights
221
  st.markdown("## πŸ“Š Visual Insights")
222
  for fig in visualizations:
223
  st.plotly_chart(fig, use_container_width=True)
224
 
225
- # Step 4: Append the Conclusion
226
  st.markdown("## Conclusion")
227
  st.markdown(conclusion)
228
 
@@ -248,8 +260,7 @@ if st.session_state.df is not None:
248
  else:
249
  st.info("Please load a dataset to proceed.")
250
 
251
-
252
  # Sidebar Reference
253
  with st.sidebar:
254
  st.header("πŸ“š Reference:")
255
- st.markdown("[SQL Agents w CrewAI & Llama 3 - Plaban Nayak](https://github.com/plaban1981/Agents/blob/main/SQL_Agents_with_CrewAI_and_Llama_3.ipynb)")
 
172
  context=[analyze_data],
173
  )
174
 
175
+ # Crew with separate tasks for report and conclusion
176
+ crew_report = Crew(
177
+ agents=[sql_dev, data_analyst, report_writer],
178
+ tasks=[extract_data, analyze_data, write_report],
179
+ process=Process.sequential,
180
+ verbose=True,
181
+ )
182
+
183
+ crew_conclusion = Crew(
184
+ agents=[data_analyst, conclusion_writer],
185
+ tasks=[write_conclusion],
186
  process=Process.sequential,
187
  verbose=True,
188
  )
 
195
  query = st.text_area("Enter Query:", value="Provide insights into the salary of a Principal Data Scientist.")
196
  if st.button("Submit Query"):
197
  with st.spinner("Processing query..."):
198
+ # Step 1: Generate the main report (without Conclusion)
199
+ report_inputs = {"query": query}
200
+ report_result = crew_report.kickoff(inputs=report_inputs)
201
+
202
+ # Step 2: Generate ONLY the Conclusion
203
+ conclusion_inputs = {"query": query}
204
+ conclusion_result = crew_conclusion.kickoff(inputs=conclusion_inputs)
205
 
206
+ # Check if results are empty
207
+ main_report = report_result.output if report_result.output else "⚠️ No Report Generated."
208
+ conclusion = conclusion_result.output if conclusion_result.output else "⚠️ No Conclusion Generated."
209
 
210
+ # Step 3: Display the main report
211
  st.markdown("### Analysis Report:")
212
  st.markdown(main_report)
213
 
214
+ # Step 4: Generate relevant visualizations
215
  visualizations = []
216
 
217
  fig_salary = px.box(st.session_state.df, x="job_title", y="salary_in_usd",
 
229
  title="Salary Distribution by Employment Type")
230
  visualizations.append(fig_employment)
231
 
232
+ # Step 5: Insert Visual Insights
233
  st.markdown("## πŸ“Š Visual Insights")
234
  for fig in visualizations:
235
  st.plotly_chart(fig, use_container_width=True)
236
 
237
+ # Step 6: Append the Conclusion
238
  st.markdown("## Conclusion")
239
  st.markdown(conclusion)
240
 
 
260
  else:
261
  st.info("Please load a dataset to proceed.")
262
 
 
263
  # Sidebar Reference
264
  with st.sidebar:
265
  st.header("πŸ“š Reference:")
266
+ st.markdown("[SQL Agents w CrewAI & Llama 3 - Plaban Nayak](https://github.com/plaban1981/Agents/blob/main/SQL_Agents_with_CrewAI_and_Llama_3.ipynb)")