razhan commited on
Commit
7f2e9e6
1 Parent(s): aadfafa

Add app.py

Browse files
Files changed (1) hide show
  1. app.py +79 -0
app.py ADDED
@@ -0,0 +1,79 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from difflib import Differ
3
+ from transformers import pipeline
4
+
5
+ model_id = "razhan/bart-kurd-spell-base"
6
+ # spell_corrector = pipeline("text2text-generation", model=model_id, return_all_scores=True)
7
+ spell_corrector = pipeline("text2text-generation", model=model_id, max_length=1024)
8
+
9
+
10
+
11
+ def correct_spell(text):
12
+ d = Differ()
13
+ if text is None:
14
+ text = ""
15
+ corrected = spell_corrector(text)[0]['generated_text']
16
+
17
+ return [
18
+ (token[2:], token[0] if token[0] != " " else None)
19
+ for token in d.compare(text, corrected)
20
+ ], corrected
21
+
22
+
23
+
24
+ demo = gr.Interface(
25
+ correct_spell,
26
+ [
27
+ gr.Textbox(
28
+ label="Input text",
29
+ info="Initial text to be corrected",
30
+ lines=3,
31
+ value="نوووسینێکی ڕااست بێهەڵە",
32
+ rtl=True
33
+ ),
34
+ ],
35
+ outputs=[
36
+ gr.HighlightedText(
37
+ label="Diff",
38
+ combine_adjacent=True,
39
+ show_legend=True,
40
+ color_map={"-": "pink", "+": "green"},
41
+ rtl=True,
42
+ # container=True,
43
+ elem_id="kurdi"
44
+ ),
45
+ gr.Textbox(label="Corrected Text", rtl=True, container=True)
46
+ ],
47
+ examples=[
48
+ "حکومەتلە گفتوگۆحانی پەرلەماندا لەسەربودجەی نوێ ڕایگەیاند کە لە دەنگدانلەسەر بودجە بەردەوام دەبێت",
49
+ "ژنەڤ کاندغدێکی کورد نەشتەرگەری بۆکەا",
50
+ "فەستبخەرکرانی سێ هاووڵاتی لە شاری بۆکانلە لاین هێزە ئەمنییکەانەوە",
51
+ "ئەم وێنجانەی وخارەوەش چەند ێونەیەکی دەزپێرکاوی مۆبایلەکەن",
52
+ "خۆگزە توانیبام ژیان لە دیداری یەکەی ژاچگرێ بدەم",
53
+ "هەرفەرمانبەرێک بەناشچایستە پلەی نوەزیفیوەرگرتبێتلێیدەسەرنێتەەو",
54
+ "ماوەیەکەدەست ەب ئاامدەکسری کرا٦وە بۆ بەڕێوەچوونی ەششەمین فیستیڤاڵینێودەوڵەتیی هەولێرب ۆ شانۆ",
55
+ "ەڵم ئارەزوومە کە فیلمێک لە سەرحۆریەکانی ێجەریای نێوچیڕۆکەکانیشەوان عەرەبیەوە بەرخهەم بهێنم",
56
+ "پارەی ئەلکتترۆنیکی هیان راوی دیجیتاڵ جۆرە راوێکە کە تەنیا بە شێوەی ئەلیکترۆنیکی لەبەردەستەایە"
57
+
58
+
59
+ ],
60
+ title="Central Kurdish Neurl Spell Correction",
61
+ # description="This is made as a fun side project, it's not to be relied on for production.",
62
+ css="""
63
+ #kurdi {
64
+ text-align: right;
65
+ }
66
+ """,
67
+ theme=gr.themes.Base(
68
+ primary_hue="pink",
69
+ secondary_hue="stone",
70
+ text_size=gr.themes.sizes.text_lg,
71
+ spacing_size=gr.themes.sizes.spacing_lg,
72
+ radius_size=gr.themes.sizes.radius_lg,
73
+ font=gr.themes.GoogleFont("Noto Sans"),
74
+
75
+ ),
76
+ allow_flagging='auto'
77
+ )
78
+ if __name__ == "__main__":
79
+ demo.launch()