anhkhoiphan commited on
Commit
bd6eec3
·
verified ·
1 Parent(s): 53c5c86

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +17 -14
app.py CHANGED
@@ -1,10 +1,19 @@
 
1
  import streamlit as st
2
  from chatbot.core import get_chat_response
3
 
4
- # Cấu hình giao diện Streamlit
5
- st.set_page_config(page_title="Explorer Chatbot", layout="wide")
 
 
 
 
 
 
 
 
 
6
 
7
- # Tiêu đề ứng dụng
8
  st.markdown(
9
  """
10
  <style>
@@ -19,34 +28,28 @@ st.markdown(
19
  unsafe_allow_html=True
20
  )
21
 
22
- # Khởi tạo session state để lưu lịch sử chat
23
  if "messages" not in st.session_state:
24
  st.session_state.messages = []
25
 
26
- # Hiển thị lịch sử chat
27
  for message in st.session_state.messages:
28
- # Check role to optionally assign an avatar
29
  if message["role"] == "assistant":
30
- # Provide the URL of your chatbot avatar
31
- avatar = "https://example.com/path/to/chatbot_avatar.png"
32
  else:
33
  avatar = None
34
  with st.chat_message(message["role"], avatar=avatar):
35
  st.markdown(message["content"])
36
 
37
- # Ô nhập liệu chat
38
  user_input = st.chat_input("Nhập tin nhắn của bạn...")
39
 
40
  if user_input:
41
- # Hiển thị tin nhắn của user
42
  st.session_state.messages.append({"role": "user", "content": user_input})
43
  with st.chat_message("user"):
44
  st.markdown(user_input)
45
 
46
- # Gọi chatbot để lấy phản hồi
47
  response = get_chat_response(user_input)
48
-
49
- # Hiển thị phản hồi của chatbot với avatar
50
  st.session_state.messages.append({"role": "assistant", "content": response})
51
- with st.chat_message("assistant", avatar="avatar.png"):
52
  st.markdown(response)
 
1
+ import base64
2
  import streamlit as st
3
  from chatbot.core import get_chat_response
4
 
5
+ # Helper function to load and convert image to base64
6
+ def load_image_as_base64(image_path):
7
+ with open(image_path, "rb") as img_file:
8
+ img_bytes = img_file.read()
9
+ encoded = base64.b64encode(img_bytes).decode("utf-8")
10
+ return f"data:image/png;base64,{encoded}"
11
+
12
+ # Convert your local avatar image (make sure it's in the same directory or adjust the path)
13
+ avatar_base64 = load_image_as_base64("avatar.png")
14
+
15
+ st.set_page_config(page_title="Kumiko v1 Assistant", layout="wide")
16
 
 
17
  st.markdown(
18
  """
19
  <style>
 
28
  unsafe_allow_html=True
29
  )
30
 
 
31
  if "messages" not in st.session_state:
32
  st.session_state.messages = []
33
 
34
+ # Display chat history
35
  for message in st.session_state.messages:
 
36
  if message["role"] == "assistant":
37
+ avatar = avatar_base64 # Use the base64 avatar for assistant messages
 
38
  else:
39
  avatar = None
40
  with st.chat_message(message["role"], avatar=avatar):
41
  st.markdown(message["content"])
42
 
43
+ # Chat input
44
  user_input = st.chat_input("Nhập tin nhắn của bạn...")
45
 
46
  if user_input:
 
47
  st.session_state.messages.append({"role": "user", "content": user_input})
48
  with st.chat_message("user"):
49
  st.markdown(user_input)
50
 
 
51
  response = get_chat_response(user_input)
52
+
 
53
  st.session_state.messages.append({"role": "assistant", "content": response})
54
+ with st.chat_message("assistant", avatar=avatar_base64):
55
  st.markdown(response)