Spaces:
Build error
Build error
| import gradio as gr | |
| from difflib import Differ | |
| from transformers import pipeline | |
| model_id = "razhan/bart-kurd-spell-base" | |
| spell_corrector = pipeline("text2text-generation", model=model_id, max_length=1024) | |
| def correct_spell(text, num_sequence=3): | |
| d = Differ() | |
| if text is None: | |
| text = "" | |
| # corrected = spell_corrector(text, num_return_sequences=3)[0]['generated_text'] | |
| corrected = spell_corrector(text,num_beams=5, num_return_sequences=num_sequence) | |
| first_suggestion = corrected[0]['generated_text'] | |
| corrected = "\n\n".join([c['generated_text'] for c in corrected]) | |
| return [ | |
| (token[2:], token[0] if token[0] != " " else None) | |
| for token in d.compare(text, first_suggestion) | |
| ], corrected | |
| demo = gr.Interface( | |
| correct_spell, | |
| [ | |
| gr.Textbox( | |
| label="Input text", | |
| info="Initial text to be corrected", | |
| lines=3, | |
| value="كئشهي نووصين", | |
| rtl=True | |
| ), | |
| gr.Slider( | |
| label="Number of Sequences", | |
| minimum=1, | |
| maximum=5, | |
| step=1, | |
| value=3, | |
| info="Number of different sequences to be returned" | |
| ) | |
| ], | |
| outputs=[ | |
| gr.HighlightedText( | |
| label="Diff", | |
| combine_adjacent=True, | |
| show_legend=True, | |
| color_map={"-": "pink", "+": "green"}, | |
| container=True, | |
| elem_id="kurdi" | |
| ), | |
| gr.Textbox(label="Corrected Text", rtl=True, container=True) | |
| ], | |
| examples=[ | |
| ["شة وئكي قة نديل هئناية كريان دلة ي ماط و ديل"], | |
| ["برياري مي دةنكي ذؤرينةي رةهاية"], | |
| ["بة هي خشة ويصتي نيوانمانة وة چة ندينجار باوكي لة مالة وة دة ريكردووة"], | |
| ["هه روه ها دوو كاربه ده ستي شيعه ش له مردن رظگاريان بوو پاش اه وه ي روظي دووشه ممه له ده وروبه ري به غدا هه ولي كوش تنيان درا"], | |
| ["حکومەتلە گفتوگۆحانی پەرلەماندا لەسەربودجەی نوێ ڕایگەیاند کە لە دەنگدانلەسەر بودجە بەردەوام دەبێت"], | |
| ["ژنەڤ کاندغدێکی کورد نەشتەرگەری بۆکەا"], | |
| ["فەستبخەرکرانی سێ هاووڵاتی لە شاری بۆکانلە لاین هێزە ئەمنییکەانەوە"], | |
| ["ئەم وێنجانەی وخارەوەش چەند ێونەیەکی دەزپێرکاوی مۆبایلەکەن"], | |
| ["خۆگزە توانیبام ژیان لە دیداری یەکەی ژاچگرێ بدەم"], | |
| ["هەرفەرمانبەرێک بەناشچایستە پلەی نوەزیفیوەرگرتبێتلێیدەسەرنێتەەو"], | |
| ["ماوەیەکەدەست ەب ئاامدەکسری کرا٦وە بۆ بەڕێوەچوونی ەششەمین فیستیڤاڵینێودەوڵەتیی هەولێرب ۆ شانۆ"], | |
| ["ەڵم ئارەزوومە کە فیلمێک لە سەرحۆریەکانی ێجەریای نێوچیڕۆکەکانیشەوان عەرەبیەوە بەرخهەم بهێنم"], | |
| ["پارەی ئەلکتترۆنیکی هیان راوی دیجیتاڵ جۆرە راوێکە کە تەنیا بە شێوەی ئەلیکترۆنیکی لەبەردەستەایە"] | |
| ], | |
| title="Central Kurdish Neural Spell Corrector", | |
| # description="This is made as a fun side project, it's not to be relied on for production.", | |
| css=""" | |
| #kurdi { | |
| text-align: right; | |
| } | |
| """, | |
| theme=gr.themes.Base( | |
| primary_hue="pink", | |
| secondary_hue="stone", | |
| text_size=gr.themes.sizes.text_lg, | |
| spacing_size=gr.themes.sizes.spacing_lg, | |
| radius_size=gr.themes.sizes.radius_lg, | |
| font=gr.themes.GoogleFont("Noto Sans"), | |
| ), | |
| examples_per_page=20, | |
| allow_flagging='auto' | |
| ) | |
| if __name__ == "__main__": | |
| demo.launch() |