PhaniKumar commited on
Commit
7e2aaaa
·
verified ·
1 Parent(s): 252e18c

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +23 -16
app.py CHANGED
@@ -1,30 +1,37 @@
 
1
  import gradio as gr
 
2
 
3
- def letter_counter(word: str, letter: str) -> int:
4
  """
5
- Count the number of occurrences of a letter in a word or text.
6
 
7
  Args:
8
- word (str): The input text to search through
9
- letter (str): The letter to search for
10
 
11
  Returns:
12
- int: The number of times the letter appears in the text
13
  """
14
- word = word.lower()
15
- letter = letter.lower()
16
- count = word.count(letter)
17
- return count
 
 
 
 
18
 
19
- # Create a standard Gradio interface
 
 
20
  demo = gr.Interface(
21
- fn=letter_counter,
22
- inputs=["textbox", "textbox"],
23
- outputs="number",
24
- title="Letter Counter",
25
- description="Enter text and a letter to count how many times the letter appears in the text."
26
  )
27
 
28
- # Launch both the Gradio web interface and the MCP server
29
  if __name__ == "__main__":
30
  demo.launch(mcp_server=True)
 
1
+ import json
2
  import gradio as gr
3
+ from textblob import TextBlob
4
 
5
+ def sentiment_analysis(text: str) -> str:
6
  """
7
+ Analyze the sentiment of the given text.
8
 
9
  Args:
10
+ text (str): The text to analyze
 
11
 
12
  Returns:
13
+ str: A JSON string containing polarity, subjectivity, and assessment
14
  """
15
+ blob = TextBlob(text)
16
+ sentiment = blob.sentiment
17
+
18
+ result = {
19
+ "polarity": round(sentiment.polarity, 2), # -1 (negative) to 1 (positive)
20
+ "subjectivity": round(sentiment.subjectivity, 2), # 0 (objective) to 1 (subjective)
21
+ "assessment": "positive" if sentiment.polarity > 0 else "negative" if sentiment.polarity < 0 else "neutral"
22
+ }
23
 
24
+ return json.dumps(result)
25
+
26
+ # Create the Gradio interface
27
  demo = gr.Interface(
28
+ fn=sentiment_analysis,
29
+ inputs=gr.Textbox(placeholder="Enter text to analyze..."),
30
+ outputs=gr.Textbox(), # Changed from gr.JSON() to gr.Textbox()
31
+ title="Text Sentiment Analysis",
32
+ description="Analyze the sentiment of text using TextBlob"
33
  )
34
 
35
+ # Launch the interface and MCP server
36
  if __name__ == "__main__":
37
  demo.launch(mcp_server=True)