File size: 2,951 Bytes
f59c7b5
c978338
f59c7b5
635f231
f59c7b5
635f231
 
 
c978338
635f231
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
c978338
 
635f231
c978338
635f231
 
 
 
 
 
 
 
 
 
c978338
 
635f231
 
 
 
 
 
c978338
635f231
 
 
 
 
 
c978338
635f231
 
 
 
 
 
 
 
 
 
 
c978338
f59c7b5
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
import gradio as gr
from shitsu import ShitsuScorer

scorer = ShitsuScorer('en')

def get_score(user_text):
    score = scorer.score([user_text])[0]
    yield f'<div class="nice-box"> Score: {score}</div>'

#language_options = ['am', 'ar', 'bg', 'bn', 'cs', 'da', 'de', 'el', 'en', 'es', 'fa', 'fi', 'fr', 'gu', 'ha', 'hi', 'hu', 'id', 'it', 'ja', 'jv', 'kn', 'ko', 'lt', 'mr', 'nl', 'no', 'yo', 'zh']
#https://huggingface.co/spaces/Dusduo/shitsu-text-scorer-demo/shitsu-logo.jpeg
css = '''
#gen_btn{height: 100%}
#title{text-align: center}
#title h1{font-size: 3em; display:inline-flex; align-items:center}
#title img{width: 100px; margin-right: 0.5em}
#gallery .grid-wrap{height: 10vh}
#lora_list{background: var(--block-background-fill);padding: 0 1em .3em; font-size: 90%}
.card_internal{display: flex;height: 100px;margin-top: .5em}
.card_internal img{margin-right: 1em}
.styler{--form-gap-width: 0px !important}
.nice-box {
    border: 2px solid #007bff;
    border-radius: 10px;
    padding: 15px;
    background-color: #f8f9fa;
    font-size: 18px;
    text-align: center;
    min-height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}
'''
theme = gr.themes.Soft(
    primary_hue="blue",
    secondary_hue="sky",
)


with gr.Blocks(theme=theme, css=css) as demo:

    title = gr.HTML(
        """<h1><img src="https://huggingface.co/spaces/Dusduo/shitsu-text-scorer-demo/shitsu-logo.jpeg" alt="LightBlue"> Shitsu Text Scorer</h1>""",
        elem_id="title",
    )
    gr.Markdown(
    """This is a demo of [Shitsu text scorer](https://huggingface.co/lightblue/shitsu_text_scorer) which scores text based on the amount of useful, textbook-like information in it.
    
    It outputs a score generally between 0 and 1 but can exceed both of these bounds as it is a regressor.
    """
    )
    with gr.Row():
        user_text = gr.Textbox(label='Input text...')
        with gr.Column(scale=0):
            submit_btn = gr.Button("Submit")
            score = gr.HTML(
                value='<div class="nice-box"> Score...  </div>',
                label="Output"
            )
    # Searchable dropdown to choose language   
    # language_choice = gr.Dropdown(
    #     choices=language_options,
    #     label="Choose a language",
    #     info="Type to search",
    #     allow_custom_value=True,  # Allows typing to search
    # )
    
    gr.Markdown(
    """
    This model is based on fasttext embeddings, meaning that it can be used on large amounts of data with limited compute quickly.

    This scorer can be used to filter useful information from large text corpora in many languages.  
    
    This model can also be found on [Github](https://github.com/lightblue-tech/shitsu) and has its own pip installable package. 
    """
    )
    user_text.submit(get_score, inputs=[user_text], outputs=[score])
    submit_btn.click(get_score, inputs=[user_text], outputs=[score])
    
demo.launch()