Spaces:
Runtime error
Runtime error
File size: 1,699 Bytes
18eda99 e7b4ab2 bcb51a3 18eda99 fdef919 18eda99 669e067 18eda99 669e067 fdef919 669e067 fdef919 e7b4ab2 fdef919 669e067 fdef919 669e067 fdef919 e7b4ab2 fdef919 e6591a5 18eda99 |
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 58 59 60 61 62 |
import streamlit as st
from transformers import pipeline
@st.cache_resource
def load_summarizer():
return pipeline(
"summarization",
model="sshleifer/distilbart-cnn-12-6",
tokenizer="sshleifer/distilbart-cnn-12-6"
)
@st.cache_resource
def load_sentiment():
return pipeline(
"sentiment-analysis",
model="distilbert-base-uncased-finetuned-sst-2-english"
)
@st.cache_resource
def load_fake_news_detector():
return pipeline(
"text-classification",
model="mrm8488/bert-tiny-finetuned-fake-news-detection",
tokenizer="mrm8488/bert-tiny-finetuned-fake-news-detection"
)
summarizer = load_summarizer()
sentiment_pipe = load_sentiment()
fake_news_pipe = load_fake_news_detector()
def summarize_texts(texts):
summaries = []
for text in texts:
try:
result = summarizer(text, max_length=60, min_length=15, do_sample=False)
summaries.append(result[0]["summary_text"])
except Exception:
summaries.append("⚠️ Summary failed")
return summaries
def analyze_sentiment(texts):
results = []
for text in texts:
try:
res = sentiment_pipe(text[:512])[0]["label"]
results.append(res)
except Exception:
results.append("Unknown")
return results
def detect_fake_news(texts):
results = []
for text in texts:
try:
prediction = fake_news_pipe(text[:512])[0]
label = prediction["label"]
score = prediction["score"]
results.append(f"{label} ({score:.2f})")
except Exception:
results.append("Unknown")
return results
|