mattritchey commited on
Commit
2a58a4e
1 Parent(s): 30b720e

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +36 -0
app.py ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ import streamlit as st
3
+ from streamlit_chat import message as st_message
4
+ from transformers import AutoModelForCausalLM, AutoTokenizer
5
+
6
+ @st.cache_resource
7
+ def get_models():
8
+ model_name = "PY007/TinyLlama-1.1B-Chat-v0.3"
9
+ tokenizer = AutoTokenizer.from_pretrained(model_name)
10
+ model = AutoModelForCausalLM.from_pretrained(model_name)
11
+ return tokenizer, model
12
+
13
+
14
+ if "history" not in st.session_state:
15
+ st.session_state.history = []
16
+
17
+ st.title("Hello Chatbot")
18
+
19
+
20
+ def generate_answer():
21
+ tokenizer, model = get_models()
22
+ user_message = st.session_state.input_text
23
+ inputs = tokenizer(st.session_state.input_text, return_tensors="pt")
24
+ result = model.generate(**inputs)
25
+ message_bot = tokenizer.decode(
26
+ result[0], skip_special_tokens=True
27
+ ) # .replace("<s>", "").replace("</s>", "")
28
+
29
+ st.session_state.history.append({"message": user_message, "is_user": True})
30
+ st.session_state.history.append({"message": message_bot, "is_user": False})
31
+
32
+
33
+ st.text_input("Talk to the bot", key="input_text", on_change=generate_answer)
34
+
35
+ for i, chat in enumerate(st.session_state.history):
36
+ st_message(**chat, key=str(i)) #unpacking