Spaces:
Sleeping
Sleeping
Truong-Phuc Nguyen
commited on
Commit
•
19b9973
1
Parent(s):
9c408a6
Update Chat with PViLQA
Browse files
app.py
CHANGED
@@ -2,26 +2,34 @@ import streamlit as st
|
|
2 |
import torch
|
3 |
from transformers import pipeline
|
4 |
|
5 |
-
st.set_page_config(page_title="Vietnamese Legal Question Answering", page_icon="🧊", layout="centered", initial_sidebar_state="
|
|
|
6 |
|
|
|
7 |
|
8 |
device = 0 if torch.cuda.is_available() else -1
|
9 |
if 'model' not in st.session_state:
|
10 |
print('Some errors occured!')
|
11 |
-
st.session_state.model = pipeline("question-answering", model='
|
12 |
|
13 |
def get_answer(context, question):
|
14 |
return st.session_state.model(context=context, question=question, max_answer_len=512)
|
15 |
|
16 |
-
|
|
|
|
|
|
|
|
|
|
|
17 |
|
18 |
-
|
19 |
-
|
|
|
|
|
|
|
|
|
20 |
|
21 |
-
|
22 |
-
|
23 |
|
24 |
-
|
25 |
-
with st.spinner("Vui lòng chờ..."):
|
26 |
-
answer = get_answer(context=context, question=question)
|
27 |
-
st.success(f"Câu trả lời: {answer['answer']}")
|
|
|
2 |
import torch
|
3 |
from transformers import pipeline
|
4 |
|
5 |
+
st.set_page_config(page_title="Vietnamese Legal Question Answering", page_icon="🧊", layout="centered", initial_sidebar_state="expanded")
|
6 |
+
st.markdown("<h1 style='text-align: center;'>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)
|
7 |
|
8 |
+
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)
|
9 |
|
10 |
device = 0 if torch.cuda.is_available() else -1
|
11 |
if 'model' not in st.session_state:
|
12 |
print('Some errors occured!')
|
13 |
+
st.session_state.model = pipeline("question-answering", model='./models/vi-mrc-large/archive/model', device=device)
|
14 |
|
15 |
def get_answer(context, question):
|
16 |
return st.session_state.model(context=context, question=question, max_answer_len=512)
|
17 |
|
18 |
+
if 'messages' not in st.session_state:
|
19 |
+
st.session_state.messages = []
|
20 |
+
|
21 |
+
for message in st.session_state.messages:
|
22 |
+
with st.chat_message(name=message['role']):
|
23 |
+
st.markdown(message['content'])
|
24 |
|
25 |
+
if prompt := st.chat_input(placeholder='Xin chào, tôi có thể giúp được gì cho bạn?'):
|
26 |
+
with st.chat_message(name='user'):
|
27 |
+
st.markdown(prompt)
|
28 |
+
st.session_state.messages.append({'role': 'user', 'content': prompt})
|
29 |
+
|
30 |
+
respond = get_answer(context=context, question=prompt)['answer']
|
31 |
|
32 |
+
with st.chat_message(name='assitant'):
|
33 |
+
st.markdown(respond)
|
34 |
|
35 |
+
st.session_state.messages.append({'role': 'assitant', 'content': respond})
|
|
|
|
|
|