alexkueck commited on
Commit
6c175cd
1 Parent(s): df0cba5

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +12 -25
app.py CHANGED
@@ -226,6 +226,18 @@ def create_assistant(prompt, file):
226
  #Funktion wird direkt aufgerufen aus der GUI - von hier muss auch die Rückmeldung kommen....
227
  #man kann einen Text-Prompt eingeben (mit oder ohne RAG), dazu ein Image hochladen, ein Bild zu einem reinen textprompt erzeugen lassen
228
  def generate_auswahl(prompt, file, chatbot, history, rag_option, model_option, openai_api_key, k=3, top_p=0.6, temperature=0.5, max_new_tokens=4048, max_context_length_tokens=2048, repetition_penalty=1.3,):
 
 
 
 
 
 
 
 
 
 
 
 
229
  #kein Bild hochgeladen -> auf Text antworten...
230
  if (file == None):
231
  result = generate_text(prompt, chatbot, history, rag_option, model_option, openai_api_key, k=3, top_p=0.6, temperature=0.5, max_new_tokens=4048, max_context_length_tokens=2048, repetition_penalty=1.3,)
@@ -286,20 +298,11 @@ def generate_text_zu_bild(file, prompt, k, rag_option, chatbot):
286
  prompt_neu = prompt
287
  if (rag_option == "An"):
288
  print("Bild mit RAG..............................")
289
- #muss nur einmal ausgeführt werden...
290
- if not splittet:
291
- splits = document_loading_splitting()
292
- document_storage_chroma(splits)
293
- db = document_retrieval_chroma2()
294
- #mit RAG:
295
  neu_text_mit_chunks = rag_chain2(prompt, db, k)
296
  #für Chat LLM:
297
  #prompt = generate_prompt_with_history_openai(neu_text_mit_chunks, history)
298
  #als reiner prompt:
299
  prompt_neu = generate_prompt_with_history(neu_text_mit_chunks, chatbot)
300
- splittet = True
301
- else:
302
- splittet = False
303
 
304
  headers, payload = process_image(file, prompt_neu)
305
  response = requests.post("https://api.openai.com/v1/chat/completions", headers=headers, json=payload)
@@ -319,20 +322,11 @@ def generate_text_zu_doc(file, prompt, k, rag_option, chatbot):
319
  prompt_neu = prompt
320
  if (rag_option == "An"):
321
  print("Doc mit RAG..............................")
322
- #muss nur einmal ausgeführt werden...
323
- if not splittet:
324
- splits = document_loading_splitting()
325
- document_storage_chroma(splits)
326
- db = document_retrieval_chroma2()
327
- #mit RAG:
328
  neu_text_mit_chunks = rag_chain2(prompt, db, k)
329
  #für Chat LLM:
330
  #prompt = generate_prompt_with_history_openai(neu_text_mit_chunks, history)
331
  #als reiner prompt:
332
  prompt_neu = generate_prompt_with_history(neu_text_mit_chunks, chatbot)
333
- splittet = True
334
- else:
335
- splittet = False
336
 
337
  result = create_assistant(prompt_neu, file)
338
  return result
@@ -386,13 +380,6 @@ def generate_text (prompt, chatbot, history, rag_option, model_option, openai_ap
386
 
387
  #zusätzliche Dokumenten Splits aus DB zum Prompt hinzufügen (aus VektorDB - Chroma oder Mongo DB)
388
  if (rag_option == "An"):
389
- print("RAG aktiviert.......................")
390
- #muss nur einmal ausgeführt werden...
391
- if not splittet:
392
- splits = document_loading_splitting()
393
- document_storage_chroma(splits)
394
- db = document_retrieval_chroma(llm, history_text_und_prompt)
395
- splittet = True
396
  print("LLM aufrufen mit RAG: ...........")
397
  result = rag_chain(llm, history_text_und_prompt, db)
398
  #elif (rag_option == "MongoDB"):
 
226
  #Funktion wird direkt aufgerufen aus der GUI - von hier muss auch die Rückmeldung kommen....
227
  #man kann einen Text-Prompt eingeben (mit oder ohne RAG), dazu ein Image hochladen, ein Bild zu einem reinen textprompt erzeugen lassen
228
  def generate_auswahl(prompt, file, chatbot, history, rag_option, model_option, openai_api_key, k=3, top_p=0.6, temperature=0.5, max_new_tokens=4048, max_context_length_tokens=2048, repetition_penalty=1.3,):
229
+ #wenn RAG angeschaltet - Vektorstore initialisieren
230
+ #aber nur, wenn es noch nicht geshehen ist (splittet = False)
231
+ if (rag_option == "An"):
232
+ #muss nur einmal ausgeführt werden...
233
+ if not splittet:
234
+ splits = document_loading_splitting()
235
+ document_storage_chroma(splits)
236
+ db = document_retrieval_chroma2()
237
+ splittet = True
238
+ else:
239
+ splittet = False
240
+
241
  #kein Bild hochgeladen -> auf Text antworten...
242
  if (file == None):
243
  result = generate_text(prompt, chatbot, history, rag_option, model_option, openai_api_key, k=3, top_p=0.6, temperature=0.5, max_new_tokens=4048, max_context_length_tokens=2048, repetition_penalty=1.3,)
 
298
  prompt_neu = prompt
299
  if (rag_option == "An"):
300
  print("Bild mit RAG..............................")
 
 
 
 
 
 
301
  neu_text_mit_chunks = rag_chain2(prompt, db, k)
302
  #für Chat LLM:
303
  #prompt = generate_prompt_with_history_openai(neu_text_mit_chunks, history)
304
  #als reiner prompt:
305
  prompt_neu = generate_prompt_with_history(neu_text_mit_chunks, chatbot)
 
 
 
306
 
307
  headers, payload = process_image(file, prompt_neu)
308
  response = requests.post("https://api.openai.com/v1/chat/completions", headers=headers, json=payload)
 
322
  prompt_neu = prompt
323
  if (rag_option == "An"):
324
  print("Doc mit RAG..............................")
 
 
 
 
 
 
325
  neu_text_mit_chunks = rag_chain2(prompt, db, k)
326
  #für Chat LLM:
327
  #prompt = generate_prompt_with_history_openai(neu_text_mit_chunks, history)
328
  #als reiner prompt:
329
  prompt_neu = generate_prompt_with_history(neu_text_mit_chunks, chatbot)
 
 
 
330
 
331
  result = create_assistant(prompt_neu, file)
332
  return result
 
380
 
381
  #zusätzliche Dokumenten Splits aus DB zum Prompt hinzufügen (aus VektorDB - Chroma oder Mongo DB)
382
  if (rag_option == "An"):
 
 
 
 
 
 
 
383
  print("LLM aufrufen mit RAG: ...........")
384
  result = rag_chain(llm, history_text_und_prompt, db)
385
  #elif (rag_option == "MongoDB"):