Truong-Phuc Nguyen commited on
Commit
83194b8
1 Parent(s): 0c711da

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +17 -5
app.py CHANGED
@@ -2,19 +2,25 @@ import streamlit as st
2
  import torch
3
  from transformers import pipeline
4
 
5
- st.set_page_config(page_title="ChatViLD", page_icon="./app/static/ai.png", layout="centered", initial_sidebar_state="expanded")
6
 
7
  with open("./static/styles.css") as f:
8
  st.markdown(f"<style>{f.read()}</style>", unsafe_allow_html=True)
9
 
10
- st.markdown("<h1 style='text-align: center;'>ChatViLD: Hệ thống hỏi đáp trực tuyến cho văn bản pháp luật Việt Nam</h1>", unsafe_allow_html=True)
 
 
 
 
 
 
11
 
12
  context = st.sidebar.text_area(label='Nội dung văn bản pháp luật Việt Nam:', placeholder='Vui lòng nhập nội dung văn bản pháp luật Việt Nam tại đây...', height=925)
13
 
14
  device = 0 if torch.cuda.is_available() else -1
15
  if 'model' not in st.session_state:
16
  print('Some errors occurred!')
17
- st.session_state.model = pipeline("question-answering", model='./model', device=device)
18
 
19
  def get_answer(context, question):
20
  return st.session_state.model(context=context, question=question, max_answer_len=512)
@@ -38,7 +44,7 @@ for message in st.session_state.messages:
38
  </div>
39
  """, unsafe_allow_html=True)
40
 
41
- if prompt := st.chat_input(placeholder='Xin chào, tôi có thể giúp được gì cho bạn?'):
42
  st.markdown(f"""
43
  <div class="user-message">
44
  <img src="./app/static/human.png" class="user-avatar" />
@@ -49,10 +55,16 @@ if prompt := st.chat_input(placeholder='Xin chào, tôi có thể giúp được
49
 
50
  respond = get_answer(context=context, question=prompt)['answer']
51
 
 
 
 
 
 
 
52
  st.markdown(f"""
53
  <div class="assistant-message">
54
  <img src="./app/static/ai.png" class="assistant-avatar" />
55
  <div class="stMarkdown">{respond}</div>
56
  </div>
57
  """, unsafe_allow_html=True)
58
- st.session_state.messages.append({'role': 'assistant', 'content': respond})
 
2
  import torch
3
  from transformers import pipeline
4
 
5
+ st.set_page_config(page_title="ViBidLawQA - Hệ thống hỏi đáp trực tuyến luật Việt Nam", page_icon="./app/static/ai.png", layout="centered", initial_sidebar_state="expanded")
6
 
7
  with open("./static/styles.css") as f:
8
  st.markdown(f"<style>{f.read()}</style>", unsafe_allow_html=True)
9
 
10
+ st.markdown(f"""
11
+ <div class=logo_area>
12
+ <img src="./app/static/ai.png"/>
13
+ </div>
14
+ """, unsafe_allow_html=True)
15
+ st.markdown("<h2 style='text-align: center;'>ViBidLawQA</h2>", unsafe_allow_html=True)
16
+
17
 
18
  context = st.sidebar.text_area(label='Nội dung văn bản pháp luật Việt Nam:', placeholder='Vui lòng nhập nội dung văn bản pháp luật Việt Nam tại đây...', height=925)
19
 
20
  device = 0 if torch.cuda.is_available() else -1
21
  if 'model' not in st.session_state:
22
  print('Some errors occurred!')
23
+ st.session_state.model = pipeline("question-answering", model='./models/vi-mrc-large/model', device=device)
24
 
25
  def get_answer(context, question):
26
  return st.session_state.model(context=context, question=question, max_answer_len=512)
 
44
  </div>
45
  """, unsafe_allow_html=True)
46
 
47
+ if prompt := st.chat_input(placeholder='Tôi có thể giúp được gì cho bạn?'):
48
  st.markdown(f"""
49
  <div class="user-message">
50
  <img src="./app/static/human.png" class="user-avatar" />
 
55
 
56
  respond = get_answer(context=context, question=prompt)['answer']
57
 
58
+ respond = respond.strip()
59
+ respond = respond.rstrip('.,!?;:')
60
+ respond = respond.capitalize()
61
+ if not respond.endswith('.'):
62
+ respond += '.'
63
+
64
  st.markdown(f"""
65
  <div class="assistant-message">
66
  <img src="./app/static/ai.png" class="assistant-avatar" />
67
  <div class="stMarkdown">{respond}</div>
68
  </div>
69
  """, unsafe_allow_html=True)
70
+ st.session_state.messages.append({'role': 'assistant', 'content': respond})