Spaces:
Build error
Build error
import streamlit as st | |
settings = {} | |
def app(): | |
st.markdown(""" | |
<style> | |
div[data-testid="stForm"] { | |
border: 0; | |
} | |
.footer-custom { | |
position: fixed; | |
bottom: 0; | |
width: 100%; | |
color: var(--text-color); | |
max-width: 698px; | |
font-size: 14px; | |
height: 50px; | |
padding: 10px 0; | |
z-index: 50; | |
} | |
footer { | |
display: none !important; | |
} | |
.footer-custom a { | |
color: var(--text-color); | |
} | |
button[kind="formSubmit"]{ | |
margin-top: 40px; | |
border-radius: 20px; | |
padding: 5px 20px; | |
font-size: 18px; | |
background-color: var(--primary-color); | |
} | |
#lfqa-model-parameters { | |
margin-bottom: 50px; | |
font-size: 36px; | |
} | |
#tts-model-parameters { | |
font-size: 36px; | |
margin-top: 50px; | |
} | |
.stAlert { | |
width: 250px; | |
margin-top: 32px; | |
} | |
</style> | |
""", unsafe_allow_html=True) | |
with st.form("settings"): | |
footer = """ | |
<div class="footer-custom"> | |
Streamlit app - <a href="https://www.linkedin.com/in/danijel-petkovic-573309144/" target="_blank">Danijel Petkovic</a> | | |
LFQA/DPR models - <a href="https://www.linkedin.com/in/blagojevicvladimir/" target="_blank">Vladimir Blagojevic</a> | | |
Guidance & Feedback - <a href="https://yjernite.github.io/" target="_blank">Yacine Jernite</a> | |
</div> | |
""" | |
st.markdown(footer, unsafe_allow_html=True) | |
st.title("LFQA model parameters") | |
settings["min_length"] = st.slider("Min length", 20, 80, st.session_state["min_length"], | |
help="Min response length (words)") | |
st.markdown("""<hr></hr>""", unsafe_allow_html=True) | |
settings["max_length"] = st.slider("Max length", 128, 320, st.session_state["max_length"], | |
help="Max response length (words)") | |
st.markdown("""<hr></hr>""", unsafe_allow_html=True) | |
col1, col2 = st.columns(2) | |
with col1: | |
settings["do_sample"] = st.checkbox("Use sampling", st.session_state["do_sample"], | |
help="Whether or not to use sampling ; use greedy decoding otherwise.") | |
with col2: | |
settings["early_stopping"] = st.checkbox("Early stopping", st.session_state["early_stopping"], | |
help="Whether to stop the beam search when at least num_beams sentences are finished per batch or not.") | |
st.markdown("""<hr></hr>""", unsafe_allow_html=True) | |
settings["num_beams"] = st.slider("Num beams", 1, 16, st.session_state["num_beams"], | |
help="Number of beams for beam search. 1 means no beam search.") | |
st.markdown("""<hr></hr>""", unsafe_allow_html=True) | |
settings["temperature"] = st.slider("Temperature", 0.0, 1.0, st.session_state["temperature"], step=0.1, | |
help="The value used to module the next token probabilities") | |
st.title("TTS model parameters") | |
settings["tts"] = st.selectbox(label="Engine", options=("Google", "HuggingFace"), | |
index=["Google", "HuggingFace"].index(st.session_state["tts"]), | |
help="Answer text-to-speech engine") | |
# Every form must have a submit button. | |
col3, col4, col5, col6 = st.columns(4) | |
with col3: | |
submitted = st.form_submit_button("Save") | |
with col4: | |
if submitted: | |
for k, v in settings.items(): | |
st.session_state[k] = v | |
st.success('App settings saved successfully.') | |