-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
64 lines (52 loc) · 2.33 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# import streamlit as st
# from streamlit_chat import message
# from utils import find_match, get_conversation_string
# st.subheader("IIIT ChatBot")
# if 'responses' not in st.session_state:
# st.session_state['responses'] = ["How can I assist you?"]
# if 'requests' not in st.session_state:
# st.session_state['requests'] = []
# # container for chat history
# response_container = st.container()
# # container for text box
# textcontainer = st.container()
# with textcontainer:
# query = st.text_input("Query: ", key="input")
# if query:
# with st.spinner("typing..."):
# context = find_match(query)
# response = f"Context:\n{context}\n\nQuery:\n{query}\n\nAnswer:\n{context}"
# st.session_state.requests.append(query)
# st.session_state.responses.append(response)
# with response_container:
# if st.session_state['responses']:
# for i in range(len(st.session_state['responses'])):
# message(st.session_state['responses'][i], key=str(i))
# if i < len(st.session_state['requests']):
# message(st.session_state["requests"][i], is_user=True, key=str(i) + '_user')
import streamlit as st
from streamlit_chat import message
from utils import find_match, generate_response
st.subheader("IIIT ChatBot")
if 'responses' not in st.session_state:
st.session_state['responses'] = ["How can I assist you?"]
if 'requests' not in st.session_state:
st.session_state['requests'] = []
# container for chat history
response_container = st.container()
# container for text box
textcontainer = st.container()
with textcontainer:
query = st.text_input("Query: ", key="input")
if query:
with st.spinner("typing..."):
context = find_match(query)
response = generate_response(f"Context:\n{context}\n\nQuery:\n{query}")
st.session_state.requests.append(query)
st.session_state.responses.append(response)
with response_container:
if st.session_state['responses']:
for i in range(len(st.session_state['responses'])):
message(st.session_state['responses'][i], key=str(i))
if i < len(st.session_state['requests']):
message(st.session_state["requests"][i], is_user=True, key=str(i) + '_user')