Dricz commited on
Commit
5123bff
·
verified ·
1 Parent(s): 7078d38

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +19 -4
app.py CHANGED
@@ -1,16 +1,31 @@
1
  import gradio as gr
2
  import os
3
- from langchain_community.chat_models import ChatOpenAI
4
  from langchain_community.document_loaders import TextLoader
 
 
 
 
 
5
 
6
  OpenAIModel = "gpt-3.5-turbo"
7
  OPENAI_API_KEY = os.environ["OPENAI_API_KEY"]
8
  llm = ChatOpenAI(model=OpenAIModel, temperature=0.1, openai_api_key=OPENAI_API_KEY)
9
 
10
- def greet(name):
11
- return "Hello " + name + "!!"
 
12
 
13
  loader = TextLoader("test.txt")
14
  data = loader.load()
15
- iface = gr.Interface(fn=greet, inputs="text", outputs="text")
 
 
 
 
 
 
 
 
 
16
  iface.launch()
 
1
  import gradio as gr
2
  import os
3
+
4
  from langchain_community.document_loaders import TextLoader
5
+ from langchain_openai import ChatOpenAI
6
+ from langchain.text_splitter import RecursiveCharacterTextSplitter
7
+ from langchain_community.vectorstores import FAISS
8
+ from langchain.chains import RetrievalQA
9
+ from langchain.chains import ConversationalRetrievalChain
10
 
11
  OpenAIModel = "gpt-3.5-turbo"
12
  OPENAI_API_KEY = os.environ["OPENAI_API_KEY"]
13
  llm = ChatOpenAI(model=OpenAIModel, temperature=0.1, openai_api_key=OPENAI_API_KEY)
14
 
15
+ def ask(text):
16
+ answer = qa.run(text)
17
+ return answer
18
 
19
  loader = TextLoader("test.txt")
20
  data = loader.load()
21
+
22
+ embeddings = OpenAIEmbeddings(openai_api_key=OPENAI_API_KEY)
23
+
24
+ text_splitter = RecursiveCharacterTextSplitter(chunk_size=100, chunk_overlap=50)
25
+ all_splits = text_splitter.split_documents(data)
26
+ db2 = FAISS.from_documents(all_splits, embeddings)
27
+
28
+ qa = RetrievalQA.from_chain_type(llm=llm, retriever=db2.as_retriever())
29
+
30
+ iface = gr.Interface(ask,gr.Textbox(label="Question"),gr.Textbox(label="Answer"), title="BiMah Customer Service Chatbot",description="A chatbot that can answer things related to BiMah (Bimbel Mahasiswa)", examples=["How BiMah can enforce students to be better?","Siapa CEO BiMah?", "Bagaimana langkah-langkah pendaftaran di BiMah?"])
31
  iface.launch()