Update app.py
Browse files
app.py
CHANGED
@@ -88,11 +88,15 @@ def extract_db_to_excel():
|
|
88 |
data = [{"page_content": doc.page_content, "metadata": json.dumps(doc.metadata)} for doc in documents]
|
89 |
df = pd.DataFrame(data)
|
90 |
|
91 |
-
|
92 |
-
|
|
|
|
|
|
|
93 |
|
94 |
-
return
|
95 |
|
|
|
96 |
with gr.Blocks() as demo:
|
97 |
gr.Markdown("# Chat with your PDF documents")
|
98 |
|
@@ -111,8 +115,8 @@ with gr.Blocks() as demo:
|
|
111 |
submit_button.click(ask_question, inputs=[question_input], outputs=answer_output)
|
112 |
|
113 |
extract_button = gr.Button("Extract Database to Excel")
|
114 |
-
|
115 |
-
extract_button.click(extract_db_to_excel, inputs=[], outputs=
|
116 |
|
117 |
if __name__ == "__main__":
|
118 |
demo.launch()
|
|
|
88 |
data = [{"page_content": doc.page_content, "metadata": json.dumps(doc.metadata)} for doc in documents]
|
89 |
df = pd.DataFrame(data)
|
90 |
|
91 |
+
# Save DataFrame to an in-memory Excel file
|
92 |
+
output = io.BytesIO()
|
93 |
+
with pd.ExcelWriter(output, engine='openpyxl') as writer:
|
94 |
+
df.to_excel(writer, index=False)
|
95 |
+
output.seek(0)
|
96 |
|
97 |
+
return output
|
98 |
|
99 |
+
# Modify the Gradio interface
|
100 |
with gr.Blocks() as demo:
|
101 |
gr.Markdown("# Chat with your PDF documents")
|
102 |
|
|
|
115 |
submit_button.click(ask_question, inputs=[question_input], outputs=answer_output)
|
116 |
|
117 |
extract_button = gr.Button("Extract Database to Excel")
|
118 |
+
excel_output = gr.File(label="Download Excel File")
|
119 |
+
extract_button.click(extract_db_to_excel, inputs=[], outputs=excel_output)
|
120 |
|
121 |
if __name__ == "__main__":
|
122 |
demo.launch()
|