wannaphong's picture
Update app.py
c334c88 verified
import gradio as gr
from pythainlp.tokenize import word_tokenize
thai_consonants = "กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรลวศษสหฬอฮ" # 44 chars
thai_vowels = (
"\u0e24\u0e26\u0e30\u0e31\u0e32\u0e33\u0e34\u0e35\u0e36\u0e37"
+ "\u0e38\u0e39\u0e40\u0e41\u0e42\u0e43\u0e44\u0e45\u0e4d\u0e47"
) # 20
thai_lead_vowels = "\u0e40\u0e41\u0e42\u0e43\u0e44" # 5
thai_follow_vowels = "\u0e30\u0e32\u0e33\u0e45" # 4
thai_above_vowels = "\u0e31\u0e34\u0e35\u0e36\u0e37\u0e4d\u0e47" # 7
thai_below_vowels = "\u0e38\u0e39" # 2
thai_tonemarks = "\u0e48\u0e49\u0e4a\u0e4b" # 4
all_thai = list(thai_consonants + thai_vowels + thai_tonemarks)
def count_words(text):
return len(word_tokenize(text))
def greet(text):
_temp = []
_n = count_words(text)
for i in all_thai:
if i not in text:
_temp.append(i)
if len(_temp)>0:
return "Not complete: "+" ".join(_temp)+"\n\nNumber: "+str(_n)+" words"
return "Complete!!! :D"+"\n\nNumber: "+str(_n)+" words"
demo = gr.Interface(fn=greet, inputs="text", outputs="text",live=True)
demo.launch()