Update app.py
Browse files
app.py
CHANGED
@@ -369,10 +369,10 @@ def generate_auswahl(prompt_in, file, file_history, chatbot, history, anzahl_doc
|
|
369 |
########################################
|
370 |
# Hochladen von Dateien und Vektorstore neu erstellen
|
371 |
# Beispiel-Upload-PDF-Funktion
|
372 |
-
def upload_pdf(files):
|
373 |
status_message = ""
|
374 |
if not files:
|
375 |
-
status_message = " Keine Dateien zum Hochladen"
|
376 |
else:
|
377 |
for file in files:
|
378 |
try:
|
@@ -400,20 +400,22 @@ def upload_pdf(files):
|
|
400 |
logging.error(f"Error uploading file {file.name}: {e}")
|
401 |
status_message = "Nicht alle Dateien konnten hochgeladen werden..."
|
402 |
|
403 |
-
status_message = "Hochladen der Dateien abgeschlossen!"
|
404 |
|
405 |
-
return gr.Textbox(label="Status", visible = True), display_files()
|
406 |
|
407 |
# Nachdem alle Dateien hochgeladen wurden, den Vektorstore neu laden
|
408 |
-
def update_vectorstore():
|
409 |
try:
|
410 |
############################################
|
411 |
#Vektorstore neu....
|
412 |
############################################
|
413 |
create_vectorstore()
|
414 |
-
|
|
|
415 |
except Exception as e:
|
416 |
-
|
|
|
417 |
|
418 |
#File Input automatisch nach upload Prozess resetten
|
419 |
def reset_file_input():
|
@@ -430,9 +432,11 @@ def hide_status():
|
|
430 |
def show_status():
|
431 |
return gr.HTML(value="", label="Status", visible=True) ##gr.Textbox( label="Status", visible = True)
|
432 |
|
433 |
-
def show_text_status():
|
434 |
-
|
435 |
-
|
|
|
|
|
436 |
|
437 |
########################################
|
438 |
# Bot- test gegen schädliche Bots die die Anwendung testen...
|
@@ -462,7 +466,7 @@ def custom_css():
|
|
462 |
#################################################################################################
|
463 |
print ("Start GUI Hauptanwendung")
|
464 |
with open("custom.css", "r", encoding="utf-8") as f:
|
465 |
-
customCSS = f.read()
|
466 |
|
467 |
#Add Inputs für Tab 2
|
468 |
additional_inputs = [
|
@@ -478,6 +482,7 @@ with gr.Blocks(css=customCSS, theme=themeAlex) as demo:
|
|
478 |
# history parallel zu chatbot speichern - da in chatbot bei Bildern zum Anzeigen in der GUI die Bilder speziell formatiert werden,
|
479 |
# für die Übergabe an die ki aber der Pfad zum Bild behalten werden muss - was in der history der Fall ist!
|
480 |
history = gr.State([])
|
|
|
481 |
uploaded_file_paths= gr.State([])
|
482 |
history3 = gr.State([])
|
483 |
uploaded_file_paths3= gr.State([])
|
@@ -493,9 +498,10 @@ with gr.Blocks(css=customCSS, theme=themeAlex) as demo:
|
|
493 |
attached_file_history = gr.State(None)
|
494 |
attached_file3 = gr.State(None)
|
495 |
attached_file_history3 = gr.State(None)
|
|
|
496 |
status_display = gr.State("")
|
497 |
-
status_display2 = gr.State("")
|
498 |
-
status_display3 = gr.State("")
|
499 |
################################################
|
500 |
# Tab zum Chatbot mit Text oder Bildeingabe
|
501 |
################################################
|
@@ -660,9 +666,9 @@ with gr.Blocks(css=customCSS, theme=themeAlex) as demo:
|
|
660 |
#2ter Tab
|
661 |
#renew_button.click(fn=upload_pdf, inputs=upload_pdf_files, outputs=[output_text, file_list])
|
662 |
# Hochladen der Dateien und dann Vektorstore aktualisieren
|
663 |
-
renew_button.click(fn=upload_pdf, inputs=upload_pdf_files, outputs=[output_text, file_list]).then(
|
664 |
-
fn=update_vectorstore, inputs=
|
665 |
-
fn=reset_file_input, inputs=None, outputs=upload_pdf_files).then(fn=show_text_status, inputs=None, outputs=output_text) #.then(fn=hide_status, inputs=None, outputs=output_text, show_progress="hidden")
|
666 |
demo.load(display_files, outputs=file_list)
|
667 |
|
668 |
demo.title = "KKG-Suche"
|
|
|
369 |
########################################
|
370 |
# Hochladen von Dateien und Vektorstore neu erstellen
|
371 |
# Beispiel-Upload-PDF-Funktion
|
372 |
+
def upload_pdf(files, status):
|
373 |
status_message = ""
|
374 |
if not files:
|
375 |
+
status_message = " Keine Dateien zum Hochladen! "
|
376 |
else:
|
377 |
for file in files:
|
378 |
try:
|
|
|
400 |
logging.error(f"Error uploading file {file.name}: {e}")
|
401 |
status_message = "Nicht alle Dateien konnten hochgeladen werden..."
|
402 |
|
403 |
+
status_message = "Hochladen der Dateien abgeschlossen! "
|
404 |
|
405 |
+
return gr.Textbox(label="Status", visible = True), display_files(), status_message
|
406 |
|
407 |
# Nachdem alle Dateien hochgeladen wurden, den Vektorstore neu laden
|
408 |
+
def update_vectorstore(status):
|
409 |
try:
|
410 |
############################################
|
411 |
#Vektorstore neu....
|
412 |
############################################
|
413 |
create_vectorstore()
|
414 |
+
messaage = status + "Vektorstore wurde erneuert"
|
415 |
+
return messaage, messaage
|
416 |
except Exception as e:
|
417 |
+
messaage = status + "Fehler beim Erneuern des Vektorstores"
|
418 |
+
return messaage, messaage
|
419 |
|
420 |
#File Input automatisch nach upload Prozess resetten
|
421 |
def reset_file_input():
|
|
|
432 |
def show_status():
|
433 |
return gr.HTML(value="", label="Status", visible=True) ##gr.Textbox( label="Status", visible = True)
|
434 |
|
435 |
+
def show_text_status(status):
|
436 |
+
if status.contains("Vektorstore wurde erneuert"):
|
437 |
+
return gr.HTML(value='<div style="text-align: center; color: red;">System erfolgreich aktualisiert!</div>', label="Status", visible=True), ""
|
438 |
+
else:
|
439 |
+
return gr.HTML(value='<div style="text-align: center; color: red;">System konnte nicht aktualisiert werden!</div>', label="Status", visible=True), ""
|
440 |
|
441 |
########################################
|
442 |
# Bot- test gegen schädliche Bots die die Anwendung testen...
|
|
|
466 |
#################################################################################################
|
467 |
print ("Start GUI Hauptanwendung")
|
468 |
with open("custom.css", "r", encoding="utf-8") as f:
|
469 |
+
customCSS = f.read()
|
470 |
|
471 |
#Add Inputs für Tab 2
|
472 |
additional_inputs = [
|
|
|
482 |
# history parallel zu chatbot speichern - da in chatbot bei Bildern zum Anzeigen in der GUI die Bilder speziell formatiert werden,
|
483 |
# für die Übergabe an die ki aber der Pfad zum Bild behalten werden muss - was in der history der Fall ist!
|
484 |
history = gr.State([])
|
485 |
+
"""
|
486 |
uploaded_file_paths= gr.State([])
|
487 |
history3 = gr.State([])
|
488 |
uploaded_file_paths3= gr.State([])
|
|
|
498 |
attached_file_history = gr.State(None)
|
499 |
attached_file3 = gr.State(None)
|
500 |
attached_file_history3 = gr.State(None)
|
501 |
+
"""
|
502 |
status_display = gr.State("")
|
503 |
+
#status_display2 = gr.State("")
|
504 |
+
#status_display3 = gr.State("")
|
505 |
################################################
|
506 |
# Tab zum Chatbot mit Text oder Bildeingabe
|
507 |
################################################
|
|
|
666 |
#2ter Tab
|
667 |
#renew_button.click(fn=upload_pdf, inputs=upload_pdf_files, outputs=[output_text, file_list])
|
668 |
# Hochladen der Dateien und dann Vektorstore aktualisieren
|
669 |
+
renew_button.click(fn=upload_pdf, inputs=[upload_pdf_files], outputs=[output_text, file_list]).then(
|
670 |
+
fn=update_vectorstore, inputs=status_display, outputs=[output_text, status_display]).then(
|
671 |
+
fn=reset_file_input, inputs=None, outputs=[upload_pdf_files]).then(fn=show_text_status, inputs=None, outputs=[output_text, status_display]) #.then(fn=hide_status, inputs=None, outputs=output_text, show_progress="hidden")
|
672 |
demo.load(display_files, outputs=file_list)
|
673 |
|
674 |
demo.title = "KKG-Suche"
|