Update utils.py
Browse files
utils.py
CHANGED
|
@@ -28,7 +28,8 @@ from pygments import highlight
|
|
| 28 |
from pygments.lexers import guess_lexer,get_lexer_by_name
|
| 29 |
from pygments.formatters import HtmlFormatter
|
| 30 |
|
| 31 |
-
from langchain.chains import LLMChain, RetrievalQA
|
|
|
|
| 32 |
from langchain_community.document_loaders import PyPDFLoader, UnstructuredWordDocumentLoader, DirectoryLoader
|
| 33 |
#from langchain.document_loaders.blob_loaders.youtube_audio import YoutubeAudioLoader
|
| 34 |
#from langchain.document_loaders import GenericLoader
|
|
@@ -301,14 +302,21 @@ def llm_chain2(llm, prompt):
|
|
| 301 |
def rag_chain(llm, prompt, retriever):
|
| 302 |
#Langgraph nutzen für ein wenig mehr Intelligenz beim Dokumente suchen
|
| 303 |
relevant_docs=[]
|
| 304 |
-
filtered_docs=[]
|
| 305 |
relevant_docs = retriever.get_relevant_documents(prompt)
|
|
|
|
| 306 |
print("releant docs1......................")
|
| 307 |
if (len(relevant_docs)>0):
|
| 308 |
print("releant docs2......................")
|
| 309 |
print(relevant_docs)
|
| 310 |
-
llm_chain = LLMChain(llm = llm, prompt = RAG_CHAIN_PROMPT)
|
| 311 |
-
result = llm_chain.run({"context": relevant_docs, "question": prompt})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 312 |
else:
|
| 313 |
# keine relevanten Dokumente gefunden
|
| 314 |
result = "Keine relevanten Dokumente gefunden"
|
|
|
|
| 28 |
from pygments.lexers import guess_lexer,get_lexer_by_name
|
| 29 |
from pygments.formatters import HtmlFormatter
|
| 30 |
|
| 31 |
+
from langchain.chains import LLMChain, RetrievalQA, RunnableSequence
|
| 32 |
+
from langchain.prompts import PromptTemplate
|
| 33 |
from langchain_community.document_loaders import PyPDFLoader, UnstructuredWordDocumentLoader, DirectoryLoader
|
| 34 |
#from langchain.document_loaders.blob_loaders.youtube_audio import YoutubeAudioLoader
|
| 35 |
#from langchain.document_loaders import GenericLoader
|
|
|
|
| 302 |
def rag_chain(llm, prompt, retriever):
|
| 303 |
#Langgraph nutzen für ein wenig mehr Intelligenz beim Dokumente suchen
|
| 304 |
relevant_docs=[]
|
|
|
|
| 305 |
relevant_docs = retriever.get_relevant_documents(prompt)
|
| 306 |
+
|
| 307 |
print("releant docs1......................")
|
| 308 |
if (len(relevant_docs)>0):
|
| 309 |
print("releant docs2......................")
|
| 310 |
print(relevant_docs)
|
| 311 |
+
#llm_chain = LLMChain(llm = llm, prompt = RAG_CHAIN_PROMPT)
|
| 312 |
+
#result = llm_chain.run({"context": relevant_docs, "question": prompt})
|
| 313 |
+
# Erstelle ein PromptTemplate mit Platzhaltern für Kontext und Frage
|
| 314 |
+
#RAG_CHAIN_PROMPT = PromptTemplate(template="Context: {context}\n\nQuestion: {question}\n\nAnswer:")
|
| 315 |
+
|
| 316 |
+
# Erstelle eine RunnableSequence
|
| 317 |
+
chain = RunnableSequence(steps=[RAG_CHAIN_PROMPT, llm])
|
| 318 |
+
# Verwende die Kette
|
| 319 |
+
result = chain.invoke({"context": relevant_docs, "question": prompt})
|
| 320 |
else:
|
| 321 |
# keine relevanten Dokumente gefunden
|
| 322 |
result = "Keine relevanten Dokumente gefunden"
|