File size: 1,325 Bytes
af2fd37 |
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 |
import gradio as gr
from transformers import pipeline
# Load the sentiment analysis pipeline
sentiment_pipeline = pipeline("text-classification", model="nlptown/bert-base-multilingual-uncased-sentiment")
def analyze_sentiment(text):
if not text.strip():
return "Please enter some text to analyze."
result = sentiment_pipeline(text)[0]
return f"Predicted Sentiment: {result['label']} stars"
# Define the Gradio interface
with gr.Blocks() as demo:
gr.Markdown("# Sentiment Analysis using BERT Model")
gr.Markdown("Enter a sentence or paragraph below and click 'Analyze' to get the predicted sentiment (1 to 5 stars).")
text_input = gr.Textbox(label="Input Text", placeholder="Enter your text here...", lines=3)
analyze_button = gr.Button("Analyze Sentiment")
output_text = gr.Textbox(label="Predicted Sentiment", interactive=False)
examples = [
"I love this product! It's amazing!",
"This was the worst experience I've ever had.",
"The movie was okay, not great but not bad either.",
"Absolutely fantastic! I would recommend it to everyone."
]
gr.Examples(examples=examples, inputs=text_input)
analyze_button.click(analyze_sentiment, inputs=text_input, outputs=output_text)
# Launch the Gradio app
demo.launch() |