stivenDR14
commited on
Commit
·
dd1aad4
1
Parent(s):
c5e1a17
update embeding model
Browse files- app.py +0 -1
- pdf_processor.py +1 -6
app.py
CHANGED
@@ -1,5 +1,4 @@
|
|
1 |
import gradio as gr
|
2 |
-
import spaces
|
3 |
from pdf_processor import PDFProcessor
|
4 |
from utils import AI_MODELS, TRANSLATIONS
|
5 |
|
|
|
1 |
import gradio as gr
|
|
|
2 |
from pdf_processor import PDFProcessor
|
3 |
from utils import AI_MODELS, TRANSLATIONS
|
4 |
|
pdf_processor.py
CHANGED
@@ -1,5 +1,4 @@
|
|
1 |
import json
|
2 |
-
import spaces
|
3 |
from langchain_community.document_loaders import PyPDFLoader
|
4 |
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
5 |
from langchain_ollama import OllamaEmbeddings
|
@@ -150,7 +149,7 @@ class PDFProcessor:
|
|
150 |
max_length=2048,
|
151 |
)
|
152 |
embeding_model = HuggingFaceEmbeddings(
|
153 |
-
model_name="ibm-granite/granite-embedding-
|
154 |
)
|
155 |
return current_llm, embeding_model
|
156 |
|
@@ -208,7 +207,6 @@ class PDFProcessor:
|
|
208 |
else:
|
209 |
return TRANSLATIONS[self.language]["load_pdf_first"], None
|
210 |
|
211 |
-
@spaces.GPU
|
212 |
def get_qa_response(self, vectorstore, message, history, ai_model, type_model, api_key, project_id_watsonx, k=4):
|
213 |
current_llm, _ = self.set_llm(ai_model, type_model, api_key, project_id_watsonx)
|
214 |
|
@@ -232,7 +230,6 @@ class PDFProcessor:
|
|
232 |
|
233 |
return result["result"] + "\n\nSources: " + page_labels_text
|
234 |
|
235 |
-
@spaces.GPU
|
236 |
def summarizer_by_k_top_n(self, vectorstore, ai_model, type_model, api_key, project_id_watsonx, k, summary_prompt, just_get_documments=False):
|
237 |
print("Summarizer by k top n in language: ", self.language)
|
238 |
if not vectorstore:
|
@@ -250,7 +247,6 @@ class PDFProcessor:
|
|
250 |
final_summary = summary_chain.invoke({"texts": "\n".join([doc.page_content for doc in documents]), "language": self.language})
|
251 |
return final_summary
|
252 |
|
253 |
-
@spaces.GPU
|
254 |
def get_summary(self, vectorstore, ai_model, type_model, api_key, project_id_watsonx, just_get_documments=False, k=10):
|
255 |
|
256 |
final_summary_prompt = PromptTemplate(
|
@@ -270,7 +266,6 @@ class PDFProcessor:
|
|
270 |
return self.summarizer_by_k_top_n(vectorstore, ai_model, type_model, api_key, project_id_watsonx, k, final_summary_prompt, just_get_documments)
|
271 |
|
272 |
|
273 |
-
@spaces.GPU
|
274 |
def get_specialist_opinion(self, vectorstore, ai_model, type_model, api_key, project_id_watsonx, specialist_prompt):
|
275 |
questions_prompt = PromptTemplate(
|
276 |
input_variables=["text", "specialist_prompt", "language"],
|
|
|
1 |
import json
|
|
|
2 |
from langchain_community.document_loaders import PyPDFLoader
|
3 |
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
4 |
from langchain_ollama import OllamaEmbeddings
|
|
|
149 |
max_length=2048,
|
150 |
)
|
151 |
embeding_model = HuggingFaceEmbeddings(
|
152 |
+
model_name="ibm-granite/granite-embedding-278m-multilingual",
|
153 |
)
|
154 |
return current_llm, embeding_model
|
155 |
|
|
|
207 |
else:
|
208 |
return TRANSLATIONS[self.language]["load_pdf_first"], None
|
209 |
|
|
|
210 |
def get_qa_response(self, vectorstore, message, history, ai_model, type_model, api_key, project_id_watsonx, k=4):
|
211 |
current_llm, _ = self.set_llm(ai_model, type_model, api_key, project_id_watsonx)
|
212 |
|
|
|
230 |
|
231 |
return result["result"] + "\n\nSources: " + page_labels_text
|
232 |
|
|
|
233 |
def summarizer_by_k_top_n(self, vectorstore, ai_model, type_model, api_key, project_id_watsonx, k, summary_prompt, just_get_documments=False):
|
234 |
print("Summarizer by k top n in language: ", self.language)
|
235 |
if not vectorstore:
|
|
|
247 |
final_summary = summary_chain.invoke({"texts": "\n".join([doc.page_content for doc in documents]), "language": self.language})
|
248 |
return final_summary
|
249 |
|
|
|
250 |
def get_summary(self, vectorstore, ai_model, type_model, api_key, project_id_watsonx, just_get_documments=False, k=10):
|
251 |
|
252 |
final_summary_prompt = PromptTemplate(
|
|
|
266 |
return self.summarizer_by_k_top_n(vectorstore, ai_model, type_model, api_key, project_id_watsonx, k, final_summary_prompt, just_get_documments)
|
267 |
|
268 |
|
|
|
269 |
def get_specialist_opinion(self, vectorstore, ai_model, type_model, api_key, project_id_watsonx, specialist_prompt):
|
270 |
questions_prompt = PromptTemplate(
|
271 |
input_variables=["text", "specialist_prompt", "language"],
|