import json import gradio as gr print("gradio version:",gr.__version__) from textblob import TextBlob print("TextBlob version:",(TextBlob)) def sentiment_analysis(text:str) -> str: """" Analyze the sentiment of the given text. Args: text(str):The Text to analyze Returns: str:A JSON string containig polarity,subjectivity and assesment """ blob=TextBlob(text) sentiment=blob.sentiment result={ "polarity": round(sentiment.polarity, 2), # -1 (negative) to 1 (positive) "subjectivity": round(sentiment.subjectivity, 2), # 0 (objective) to 1 (subjective) "assessment": "positive" if sentiment.polarity > 0 else "negative" if sentiment.polarity < 0 else "neutral" } return json.dumps(result) demo=gr.Interface( fn=sentiment_analysis, inputs=gr.Textbox(placeholder="Enter text to Analyze..."), outputs=gr.Textbox(), title="Text Sentiment Analysis", description="Analyze the sentiment of text using TextBlob" ) if __name__=="__main__": demo.launch(mcp_server=True)