File size: 1,984 Bytes
f9706ce
6a2d159
f9278f9
 
f9706ce
 
 
 
f9278f9
 
 
c07815e
f9278f9
a875def
 
 
 
f9278f9
a875def
 
 
 
f9278f9
 
95f5e4b
470c325
 
9afe62f
f9278f9
9afe62f
f9278f9
ff4ab6e
9afe62f
f9278f9
 
 
 
ff4ab6e
 
a2d03db
 
 
e41696f
c07815e
 
 
a2d03db
e5bdd78
a2d03db
f9278f9
f9706ce
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import gradio as gr
import nltk
from nltk.sentiment.vader import SentimentIntensityAnalyzer
from transformers import pipeline

def greet(name):
    return "Hello " + name + "!!"

def classify(text):
    return {"cat": 0.3, "dog": 0.7}

def predict_sentiment(text):
    if model == "finiteautomata/bertweet-base-sentiment-analysis":
        # pipe = pipeline("text-classification", model="finiteautomata/bertweet-base-sentiment-analysis")
        # out = pipe(text, return_all_scores=True)
        # return {pred["label"]: pred["score"] for pred in out[0]}
        return {"cathf": 0.3, "doghf": 0.7}
    elif model == "vader":
        # nltk.download('vader_lexicon')
        # sia = SentimentIntensityAnalyzer()
        # return sia.polarity_scores(text)
        return {"catv": 0.3, "dogv": 0.7}
        


demo = gr.Blocks()

with demo:
    gr.Markdown("A bunch of different Gradio demos in tabs.\n\nNote that generally, the code that is in each tab could be its own Gradio application!")
    with gr.Tabs():
        with gr.TabItem("Basic Hello"):
            gr.Markdown('The most basic "Hello World"-type demo you can write')
            interface = gr.Interface(fn=greet, inputs="text", outputs="text")
        with gr.TabItem("Label Output"):
            gr.Markdown("An example of a basic interface with a classification label as output")
            interface = gr.Interface(fn=classify, inputs="text", outputs="label")

        with gr.TabItem("Multiple Inputs"):
            gr.Markdown("A more complex interface for sentiment analysis with multiple inputs, including a dropdown, and some examples")
            demo = gr.Interface(
                fn=predict_sentiment,
                inputs=[
                    gr.Textbox(),
                    # gr.Dropdown(
                    #     ["finiteautomata/bertweet-base-sentiment-analysis", "vader"], label="Model"
                    # ),
                ],
                outputs="label"
            )

demo.launch()