GIGAParviz commited on
Commit
b7f5af4
·
verified ·
1 Parent(s): 4fd36e5

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +4 -6
app.py CHANGED
@@ -7,12 +7,14 @@ from langchain.embeddings import HuggingFaceEmbeddings
7
  from langchain.vectorstores import FAISS
8
  from langchain_core.vectorstores import InMemoryVectorStore
9
  from groq import Groq
 
10
 
11
  logging.basicConfig(level=logging.INFO)
12
  logger = logging.getLogger(__name__)
13
 
14
  client = Groq(api_key="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")
15
 
 
16
 
17
  embeddings = HuggingFaceEmbeddings(model_name="heydariAI/persian-embeddings")
18
  vector_store = InMemoryVectorStore(embeddings)
@@ -24,7 +26,7 @@ def process_pdf_with_langchain(pdf_path):
24
  text_splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=50)
25
  split_documents = text_splitter.split_documents(documents)
26
 
27
- vectorstore = FAISS.from_documents(split_documents, embedding_model)
28
  retriever = vectorstore.as_retriever(search_kwargs={"k": 3})
29
  return retriever
30
  except Exception as e:
@@ -49,7 +51,6 @@ def generate_response(query, retriever=None):
49
 
50
  context += f"\n\nYou: {query}\nParvizGPT:"
51
 
52
- # ابتدا یک پیام موقت نمایش داده شود
53
  response = "در حال پردازش..."
54
 
55
  retries = 3
@@ -71,9 +72,6 @@ def generate_response(query, retriever=None):
71
  logger.error(f"Error generating response: {e}")
72
  return f"Error: {e}"
73
 
74
-
75
-
76
-
77
  def gradio_interface(user_message, chat_box, pdf_file=None):
78
  global retriever
79
  if pdf_file is not None:
@@ -108,4 +106,4 @@ with gr.Blocks() as interface:
108
  user_message.submit(gradio_interface, inputs=[user_message, chat_box, pdf_file], outputs=chat_box)
109
  clear_memory_btn.click(clear_memory, inputs=[], outputs=chat_box)
110
 
111
- interface.launch()
 
7
  from langchain.vectorstores import FAISS
8
  from langchain_core.vectorstores import InMemoryVectorStore
9
  from groq import Groq
10
+ from langchain.memory import ConversationBufferMemory # Import memory
11
 
12
  logging.basicConfig(level=logging.INFO)
13
  logger = logging.getLogger(__name__)
14
 
15
  client = Groq(api_key="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")
16
 
17
+ memory = ConversationBufferMemory()
18
 
19
  embeddings = HuggingFaceEmbeddings(model_name="heydariAI/persian-embeddings")
20
  vector_store = InMemoryVectorStore(embeddings)
 
26
  text_splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=50)
27
  split_documents = text_splitter.split_documents(documents)
28
 
29
+ vectorstore = FAISS.from_documents(split_documents, embeddings)
30
  retriever = vectorstore.as_retriever(search_kwargs={"k": 3})
31
  return retriever
32
  except Exception as e:
 
51
 
52
  context += f"\n\nYou: {query}\nParvizGPT:"
53
 
 
54
  response = "در حال پردازش..."
55
 
56
  retries = 3
 
72
  logger.error(f"Error generating response: {e}")
73
  return f"Error: {e}"
74
 
 
 
 
75
  def gradio_interface(user_message, chat_box, pdf_file=None):
76
  global retriever
77
  if pdf_file is not None:
 
106
  user_message.submit(gradio_interface, inputs=[user_message, chat_box, pdf_file], outputs=chat_box)
107
  clear_memory_btn.click(clear_memory, inputs=[], outputs=chat_box)
108
 
109
+ interface.launch()