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()