TURNA / apps /title_generation.py
yirmibesogluz's picture
Added title generation task
e6bed4b
import requests
import streamlit as st
import time
from transformers import pipeline
import os
from .utils import query
HF_AUTH_TOKEN = os.getenv('HF_AUTH_TOKEN')
headers = {"Authorization": f"Bearer {HF_AUTH_TOKEN}"}
def write():
st.markdown("# News Title Generation")
st.sidebar.header("News Title Generation")
st.write(
"""Here, you can generate titles for your text in the news domain using the fine-tuned TURNA title generation models. """
)
# Sidebar
# Taken from https://huggingface.co/spaces/flax-community/spanish-gpt2/blob/main/app.py
st.sidebar.subheader("Configurable parameters")
model_name = st.sidebar.selectbox(
"Model Selector",
options=[
"turna_title_generation_tr_news",
"turna_title_generation_mlsum"
],
index=0,
)
max_new_tokens = st.sidebar.number_input(
"Maximum length",
min_value=0,
max_value=64,
value=64,
help="The maximum length of the sequence to be generated.",
)
length_penalty = st.sidebar.number_input(
"Length penalty",
value=2.0,
help=" length_penalty > 0.0 promotes longer sequences, while length_penalty < 0.0 encourages shorter sequences. ",
)
no_repeat_ngram_size = st.sidebar.number_input(
"No Repeat N-Gram Size",
min_value=0,
value=3,
help="If set to int > 0, all ngrams of that size can only occur once.",
)
input_text = st.text_area(label='Enter a text: ', height=100,
value="Kalp krizi geçirenlerin yaklaşık üçte birinin kısa bir süre önce grip atlattığı düşünülüyor. Peki grip virüsü ne yapıyor da kalp krizine yol açıyor? Karpuz şöyle açıkladı: Grip virüsü kanın yapışkanlığını veya pıhtılaşmasını artırıyor. ")
url = ("https://api-inference.huggingface.co/models/boun-tabi-LMG/" + model_name.lower())
params = {"length_penalty": length_penalty, "no_repeat_ngram_size": no_repeat_ngram_size, "max_new_tokens": max_new_tokens }
if st.button("Generate"):
with st.spinner('Generating...'):
output = query(input_text, url, params)
st.success(output)