Spaces:
Runtime error
Runtime error
import streamlit as st | |
from transformers import pipeline | |
def load_summarizer(): | |
return pipeline( | |
"summarization", | |
model="sshleifer/distilbart-cnn-12-6", | |
tokenizer="sshleifer/distilbart-cnn-12-6" | |
) | |
def load_sentiment(): | |
return pipeline( | |
"sentiment-analysis", | |
model="distilbert-base-uncased-finetuned-sst-2-english" | |
) | |
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 | |