File size: 2,526 Bytes
02b7cd5
 
 
 
 
 
 
 
 
 
 
 
 
4f9dbf3
02b7cd5
 
be0f011
02b7cd5
 
 
 
 
 
1555000
02b7cd5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
70c30c6
02b7cd5
 
70c30c6
02b7cd5
 
512ac41
 
 
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
import gradio as gr
from transformers import pipeline


# Load model once
model = pipeline("text2text-generation", model = "crossroderick/dalat5")


def transliterate(text: str) -> str:
    """
    Prediction function.
    """
    if text.strip() == "":
        return ""
    
    input_text = f"Cyrillic2Latin: {text.strip()}"
    output = model(input_text, max_length = 128, do_sample = False)[0]["generated_text"]
    
    return output.strip()


# App description (Markdown style)
description = """
## Қазақша кириллица → латын графикасының транслитераторы / Kazakh Cyrillic → Latin Script Transliterator

---

**[EN]**

DalaT5 is a T5-based model trained to convert natural Kazakh written in **Cyrillic** into fluent **Latin script**, based on the official 2021 alphabet reform of Kazakhstan.

This model is offered as a cultural gesture of respect and curiosity. It accepts modern Kazakh as people write it today - and answers in the language of its future.

**[KZ]**

DalaT5 - **кириллицада** жазылған табиғи қазақ тілін еркін **латын графикасына** ауыстыру үшін дайындалған T5 негізіндегі модель, Қазақстанның 2021 жылғы ресми әліпби реформасына негізделген.

Бұл модель құрмет пен қызығушылықтың мәдени қимылы ретінде ұсынылады. Ол қазіргі қазақ тілін бүгінгі адамдар қалай жазады, солай қабылдайды - және оның болашағының тілінде жауап береді.

🧠 [Model link](https://huggingface.co/crossroderick/dalat5)  
🔤 [Kazakhstan 2021 alphabet reform](https://astanatimes.com/2021/02/kazakhstan-presents-new-latin-alphabet-plans-gradual-transition-through-2031/)
"""

# Interface
demo = gr.Interface(
    fn = transliterate,
    inputs = gr.Textbox(
        label = "Қазақ тілінде теріңіз (кириллица) / Type in Kazakh (Cyrillic script)",
        placeholder = "Мен қазақ тілінде сөйлеймін.",
        lines = 6
    ),

    outputs = gr.Textbox(
        label = "Латын графикасының шығуы / Latin script output"
    ),

    title = "🇰🇿 DalaT5",
    description = description,
    theme = "default",
    flagging_mode = "never"
)


if __name__ == "__main__":
    demo.launch(share = True)