Spaces:
Runtime error
Runtime error
| from PyPDF2 import PdfReader | |
| from langchain.embeddings.openai import OpenAIEmbeddings | |
| from langchain.text_splitter import CharacterTextSplitter | |
| from langchain.vectorstores import FAISS | |
| import os | |
| OPENAI_API_KEY="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" | |
| os.environ["OPENAI_API_KEY"] = OPENAI_API_KEY | |
| pdfreader = PdfReader('csp.pdf') | |
| from typing_extensions import Concatenate | |
| # read text from pdf | |
| raw_text = '' | |
| for i, page in enumerate(pdfreader.pages): | |
| content = page.extract_text() | |
| if content: | |
| raw_text += content | |
| raw_text | |
| text_splitter = CharacterTextSplitter( | |
| separator = "\n", | |
| chunk_size = 800, | |
| chunk_overlap = 200, | |
| length_function = len, | |
| ) | |
| texts = text_splitter.split_text(raw_text) | |
| len(texts) | |
| embeddings = OpenAIEmbeddings() | |
| document_search = FAISS.from_texts(texts, embeddings) | |
| document_search | |
| from langchain.chains.question_answering import load_qa_chain | |
| from langchain.llms import OpenAI | |
| chain = load_qa_chain(OpenAI(), chain_type="stuff") | |
| import gradio as gr | |
| # Define function to process user query | |
| def process_query(query): | |
| # Perform similarity search to retrieve relevant documents | |
| docs = document_search.similarity_search(query) | |
| # Run question-answering process with retrieved documents and user query | |
| response = chain.run(input_documents=docs, question=query) | |
| # Return the response | |
| return response | |
| # Define Gradio interface | |
| iface = gr.Interface( | |
| fn=process_query, | |
| inputs="text", | |
| outputs="text", | |
| title="Woxsenite", | |
| description="Hi! How can I help you?" | |
| ) | |
| # Launch the interface | |
| iface.launch() |