Spaces:
Sleeping
Sleeping
# import | |
import streamlit as st | |
from parstdex import Parstdex | |
# set config | |
st.set_page_config(layout="wide", page_title="Parstdex") | |
# Layout adjustments | |
st.markdown( | |
""" | |
<style> | |
.reportview-container .main .block-container { | |
max-width: 1400px; | |
} | |
</style> | |
""", | |
unsafe_allow_html=True, | |
) | |
# Load models lazily | |
def load_model(): | |
model = Parstdex() | |
return model | |
with st.spinner(text="Please wait while the model is loading...."): | |
# cache | |
model = load_model() | |
# APP | |
# set title and subtitle | |
st.title("Parstdex") | |
st.markdown("Demo of Parstdex Python Package: https://github.com/kargaranamir/parstdex") | |
st.markdown("Paste any persian (farsi) text you want to extract its time and date 🖖.") | |
# create the input text box and setting panel | |
text = st.text_area('Paste your text here...', "ساعت ۸ صبح من و علی قرار گذاشتیم که شانزده بهمن ۱۳۷۵ هم دیگر را در دوشنبه بازار ببینیم.", height=50) | |
button = st.button("Extract") | |
# if button is clicked | |
with st.spinner("Processing Text and Extracting..."): | |
if button and text: | |
# extract markers from the text | |
spans = model.extract_span(text) | |
markers = model.extract_marker(text) | |
time_mls = model.extract_time_ml(text) | |
ners = model.extract_ner(text) | |
# display the result | |
st.markdown("**Span:**") | |
st.code(spans, language="python") | |
st.markdown("**Marker:**") | |
st.code(markers, language="python") | |
st.markdown("**Time_ML:**") | |
st.code(f"\u202b{time_mls}\u202c", language="python") | |
st.markdown("**NER:**") | |
st.code(ners, language="python") |