Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -359,6 +359,27 @@ def main():
|
|
359 |
st.header("π Individual Paper Summaries")
|
360 |
|
361 |
# Generate summaries if not already done
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
362 |
if st.session_state.summaries is not None:
|
363 |
col1, col2 = st.columns(2)
|
364 |
with col1:
|
@@ -380,6 +401,7 @@ def main():
|
|
380 |
else:
|
381 |
ascending = True # Default for other columns
|
382 |
|
|
|
383 |
# Create display dataframe
|
384 |
display_df = df.copy()
|
385 |
display_df['Summary'] = st.session_state.summaries
|
@@ -391,21 +413,11 @@ def main():
|
|
391 |
filtered_df = create_filter_controls(display_df, sort_column)
|
392 |
|
393 |
# Apply sorting
|
394 |
-
if sort_column
|
395 |
-
sorted_df = filtered_df.sort_values(by=sort_column, ascending=ascending)
|
396 |
-
elif sort_column == 'Article Title':
|
397 |
sorted_df = filtered_df.sort_values(by=sort_column, ascending=ascending)
|
398 |
else:
|
399 |
sorted_df = filtered_df
|
400 |
|
401 |
-
if sort_column == 'Article Title':
|
402 |
-
# Sort alphabetically
|
403 |
-
sorted_df = filtered_df.sort_values(by=sort_column, ascending=ascending)
|
404 |
-
else:
|
405 |
-
# Keep original order for other columns after filtering
|
406 |
-
# Keep original order for other columns after filtering
|
407 |
-
sorted_df = filtered_df
|
408 |
-
|
409 |
# Show number of filtered results
|
410 |
if len(sorted_df) != len(display_df):
|
411 |
st.write(f"Showing {len(sorted_df)} of {len(display_df)} papers")
|
|
|
359 |
st.header("π Individual Paper Summaries")
|
360 |
|
361 |
# Generate summaries if not already done
|
362 |
+
if st.session_state.summaries is None:
|
363 |
+
try:
|
364 |
+
with st.spinner("Generating individual paper summaries..."):
|
365 |
+
model, tokenizer = load_model("summarize")
|
366 |
+
summaries = []
|
367 |
+
progress_bar = st.progress(0)
|
368 |
+
|
369 |
+
for idx, abstract in enumerate(df['Abstract']):
|
370 |
+
summary = improve_summary_generation(abstract, model, tokenizer)
|
371 |
+
summaries.append(summary)
|
372 |
+
progress_bar.progress((idx + 1) / len(df))
|
373 |
+
|
374 |
+
st.session_state.summaries = summaries
|
375 |
+
cleanup_model(model, tokenizer)
|
376 |
+
progress_bar.empty()
|
377 |
+
|
378 |
+
except Exception as e:
|
379 |
+
st.error(f"Error generating summaries: {str(e)}")
|
380 |
+
st.session_state.processing_started = False
|
381 |
+
|
382 |
+
# Display summaries if they exist
|
383 |
if st.session_state.summaries is not None:
|
384 |
col1, col2 = st.columns(2)
|
385 |
with col1:
|
|
|
401 |
else:
|
402 |
ascending = True # Default for other columns
|
403 |
|
404 |
+
# Create display dataframe
|
405 |
# Create display dataframe
|
406 |
display_df = df.copy()
|
407 |
display_df['Summary'] = st.session_state.summaries
|
|
|
413 |
filtered_df = create_filter_controls(display_df, sort_column)
|
414 |
|
415 |
# Apply sorting
|
416 |
+
if sort_column in ['Times Cited', 'Article Title']:
|
|
|
|
|
417 |
sorted_df = filtered_df.sort_values(by=sort_column, ascending=ascending)
|
418 |
else:
|
419 |
sorted_df = filtered_df
|
420 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
421 |
# Show number of filtered results
|
422 |
if len(sorted_df) != len(display_df):
|
423 |
st.write(f"Showing {len(sorted_df)} of {len(display_df)} papers")
|