MGV12's picture
Upload 2 files
28149c3 verified
import openai, os
openai.api_key = "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"
# openai.api_key = os.environ["OPENAI_API_KEY"]
from llama_index.core import SimpleDirectoryReader
documents = SimpleDirectoryReader(
input_files = ["./HFNWAY.pdf"]
).load_data()
from llama_index.core.schema import Document
document = Document(text = "\n\n".join([doc.text for doc in documents]))
# above step merges it the 218 different documents into 1 document
from llama_index.core import VectorStoreIndex
from llama_index.core import ServiceContext
from llama_index.llms.openai import OpenAI
# resp = OpenAI().complete("Lord Ram is ")
# print(resp)
# does not need api key
# the embedding model we use is hugging face bge small
# the service context class already hass this
llm = OpenAI(model= "gpt-3.5-turbo", temperature=0.2)
service_context = ServiceContext.from_defaults(
llm = llm, embed_model = "local:BAAI/bge-small-en-v1.5"
)
# https://huggingface.co/BAAI/bge-small-en
index = VectorStoreIndex.from_documents([document], service_context=service_context)
# pip install llama-index-embeddings-huggingface
# this cell takes care of chunking embedding, indexing
query_engine = index.as_query_engine()
import gradio as gr
def chat_interface(message, history):
# Update history with the current message
# Call the query function with the user's message
response = str(query_engine.query(message))
# Update history with the bot's response
history.append([message, response])
return response
# Initialize an empty history
history = []
# Create the chat interface using gr.ChatInterface
interface = gr.ChatInterface(chat_interface, examples = ["Who is DAAJI?", "What is Heartfulness way of meditation all about?"] , title = "HFN BOT")
# Launch the interface
interface.launch()