alexkueck commited on
Commit
e0923f2
1 Parent(s): c7b43b5

Update utils.py

Browse files
Files changed (1) hide show
  1. utils.py +11 -3
utils.py CHANGED
@@ -20,7 +20,7 @@ from io import BytesIO
20
  import urllib.parse
21
  import tempfile
22
 
23
- from transformers import pipeline, AutoModelForSeq2SeqLM, AutoTokenizer, AutoModelForCausalLM, GPTNeoForCausalLM, GPT2Tokenizer
24
  from sentence_transformers import SentenceTransformer, util
25
  from typing import List, Dict
26
 
@@ -152,12 +152,18 @@ EMBEDDING_MODELL = "sentence-transformers/all-mpnet-base-v2"
152
 
153
  #Modell und Tokenizer, um die Summary über die relevanten Texte zu machen
154
  #mögliche Modelle: "HuggingFaceH4/zephyr-7b-alpha" #"t5-small" #"meta-llama/Meta-Llama-3-8B-Instruct" #"mistralai/Mistral-7B-Instruct-v0.3" #"microsoft/Phi-3-mini-4k-instruct" #"HuggingFaceH4/zephyr-7b-alpha"
 
 
 
 
 
 
 
155
  HF_MODELL ="EleutherAI/gpt-neo-2.7B"
156
  modell_rag = GPTNeoForCausalLM.from_pretrained(HF_MODELL)
157
  tokenizer_rag = GPT2Tokenizer.from_pretrained(HF_MODELL)
158
  tokenizer_rag.pad_token = tokenizer_rag.eos_token
159
 
160
- """
161
  HF_MODELL = "microsoft/Phi-3-mini-4k-instruct"
162
  # Laden des Modells und Tokenizers
163
  modell_rag = AutoModelForCausalLM.from_pretrained(HF_MODELL)
@@ -438,7 +444,7 @@ def rag_chain(llm, prompt, retriever):
438
  #für die Zusammenfassung
439
  #############################################
440
  #1. Alternative, wenn llm direkt übergeben....................................
441
- answer = llm_chain2(prompt, combined_content)
442
 
443
  #Formuliere die Eingabe für das Generierungsmodell
444
  #input_text = f"frage: {prompt} kontext: {combined_content}"
@@ -448,6 +454,8 @@ def rag_chain(llm, prompt, retriever):
448
  #3. Alternative: mit pipeline
449
  #für summarizatiuon
450
  #answer = llm(input_text,max_length=1024, min_length=150, do_sample=False)
 
 
451
 
452
  # Erstelle das Ergebnis-Dictionary
453
  result = {
 
20
  import urllib.parse
21
  import tempfile
22
 
23
+ from transformers import pipeline, AutoModelForSeq2SeqLM, AutoTokenizer, AutoModelForCausalLM, GPTNeoForCausalLM, GPT2Tokenizer, DistilBertTokenizer, DistilBertForQuestionAnswering
24
  from sentence_transformers import SentenceTransformer, util
25
  from typing import List, Dict
26
 
 
152
 
153
  #Modell und Tokenizer, um die Summary über die relevanten Texte zu machen
154
  #mögliche Modelle: "HuggingFaceH4/zephyr-7b-alpha" #"t5-small" #"meta-llama/Meta-Llama-3-8B-Instruct" #"mistralai/Mistral-7B-Instruct-v0.3" #"microsoft/Phi-3-mini-4k-instruct" #"HuggingFaceH4/zephyr-7b-alpha"
155
+ HF_MODELL = "distilbert-base-uncased-distilled-squad"
156
+ modell_rag = DistilBertForQuestionAnswering.from_pretrained(HF_MODELL)
157
+ tokenizer_rag = DistilBertTokenizer.from_pretrained(HF_MODELL)
158
+ qa_pipeline = pipeline("question-answering", model=modell_rag, tokenizer=tokenizer_rag)
159
+
160
+
161
+ """
162
  HF_MODELL ="EleutherAI/gpt-neo-2.7B"
163
  modell_rag = GPTNeoForCausalLM.from_pretrained(HF_MODELL)
164
  tokenizer_rag = GPT2Tokenizer.from_pretrained(HF_MODELL)
165
  tokenizer_rag.pad_token = tokenizer_rag.eos_token
166
 
 
167
  HF_MODELL = "microsoft/Phi-3-mini-4k-instruct"
168
  # Laden des Modells und Tokenizers
169
  modell_rag = AutoModelForCausalLM.from_pretrained(HF_MODELL)
 
444
  #für die Zusammenfassung
445
  #############################################
446
  #1. Alternative, wenn llm direkt übergeben....................................
447
+ #answer = llm_chain2(prompt, combined_content)
448
 
449
  #Formuliere die Eingabe für das Generierungsmodell
450
  #input_text = f"frage: {prompt} kontext: {combined_content}"
 
454
  #3. Alternative: mit pipeline
455
  #für summarizatiuon
456
  #answer = llm(input_text,max_length=1024, min_length=150, do_sample=False)
457
+ result = qa_pipeline(question=prompt, context=combined_content)
458
+ answer=result['answer']
459
 
460
  # Erstelle das Ergebnis-Dictionary
461
  result = {