Spaces:
Runtime error
Runtime error
import gradio as gr | |
import getpass | |
import os | |
if "HUGGINGFACEHUB_API_TOKEN" not in os.environ: | |
os.environ["HUGGINGFACEHUB_API_TOKEN"] = os.getenv('hf_token') | |
from langchain.document_loaders import TextLoader | |
loader = TextLoader('./Agentville Academy.txt') | |
documents = loader.load() | |
import textwrap | |
def wrap_text_preserve_newlines(text, width=110): | |
# Split the input text into lines based on newline characters | |
lines = text.split('\n') | |
# Wrap each line individually | |
wrapped_lines = [textwrap.fill(line, width=width) for line in lines] | |
# Join the wrapped lines back together using newline characters | |
wrapped_text = '\n'.join(wrapped_lines) | |
return wrapped_text | |
# Text Splitter | |
from langchain.text_splitter import CharacterTextSplitter | |
text_splitter = CharacterTextSplitter(chunk_size=1000, chunk_overlap=0) | |
docs = text_splitter.split_documents(documents) | |
# Embeddings | |
from langchain.embeddings import HuggingFaceEmbeddings | |
embeddings = HuggingFaceEmbeddings() | |
# Vectorstore: https://python.langchain.com/en/latest/modules/indexes/vectorstores.html | |
from langchain.vectorstores import FAISS | |
db = FAISS.from_documents(docs, embeddings) | |
def get_answer(query): | |
docs = db.similarity_search(query) | |
return wrap_text_preserve_newlines(str(docs[0].page_content)) | |
demo = gr.Interface(fn=get_answer, inputs="text", outputs="text") | |
demo.launch() | |