Spaces:
Runtime error
Runtime error
File size: 2,009 Bytes
a26068c 84f87ff a26068c 6bfa6c6 a26068c 528ab98 a26068c 0cd5f06 a26068c 4c57eb5 a26068c 6bfa6c6 528ab98 6bfa6c6 528ab98 a26068c 6bfa6c6 a26068c 6bfa6c6 528ab98 d930cf3 aa700c5 528ab98 d930cf3 f98a663 6bfa6c6 a26068c |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
import streamlit as st
import time
@st.cache_resource
def load_topic_transfomers():
from transformers import pipeline
try:
topic_classifier = pipeline("zero-shot-classification", model="facebook/bart-large-mnli",device="cuda", compute_type="float16")
except Exception as e:
topic_classifier = pipeline("zero-shot-classification", model="facebook/bart-large-mnli")
print("Error: ", e)
return topic_classifier
def suggest_topic(topic_classifier,text):
# while len(text)> 1024:
# text = summarize(whole_text[:-10])
possible_topics = ["Gadgets", 'Business','Finance', 'Health', 'Sports', 'Politics','Government','Science','Education', 'Travel', 'Tourism', 'Finance & Economics','Market','Technology','Scientific Discovery',
'Entertainment','Environment','News & Media', "Space,Universe & Cosmos", "Fashion", "Manufacturing and Constructions","Law & Crime","Motivation", "Development & Socialization", "Archeology"]
result = topic_classifier(text, possible_topics)
return result['labels']
st.title("Topic Suggestion")
if 'topic_model' not in st.session_state:
with st.spinner("Loading Model....."):
st.session_state.topic_model = load_topic_transfomers()
st.success("Model_loaded")
st.session_state.model = True
whole_text = st.text_input("Enter the text Here: ")
try:
if st.button('Suggest topic'):
start= time.time()
with st.spinner("Scanning content to suggest topics"):
topic_classifier = st.session_state.topic_model
predicted_topic = suggest_topic(topic_classifier,whole_text)
clk = time.time()-start
if clk> 60:
st.write(f'Generated in {(time.time()-start)} secs')
else
st.write(f'Generated in {(clk)/60} minutes')
st.subheader('Top 10 Topics related to the content')
for i in predicted_topic[:10]:
st.write(i)
except Exception as e:
print("Error", e)
|