File size: 1,270 Bytes
8ab6bc6 ef61852 087486a 8ab6bc6 ef61852 e2be24e ef61852 087486a ef61852 087486a ef61852 8ab6bc6 ef61852 |
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 |
import gradio as gr
from dicta_onnx import Dicta
dicta = Dicta('./dicta-1.0.int8.onnx')
theme = gr.themes.Soft(font=[gr.themes.GoogleFont("Roboto")])
def add_diacritics(text: str, mark_niqqud_male: bool) -> str:
mark_matres_lectionis = "|" if mark_niqqud_male else None
return dicta.add_diacritics(text, mark_matres_lectionis=mark_matres_lectionis)
with gr.Blocks(theme=theme) as demo:
gr.Markdown("# Hebrew Text Diacritization")
gr.Markdown("Enter Hebrew text without diacritics, and the model will add them.")
text_input = gr.Textbox(
placeholder="Type text without diacritics...",
label="Input Text",
lines=5,
rtl=True,
elem_classes=["input"],
value="诪讛 拽讜专讛? 讬讗诇讛 转转讞讬诇讜 诇砖讞拽 注诐 讛谞拽讚谉!",
)
mark_niqqud_male = gr.Checkbox(label="Mark Niqqud Male (Matres Lectionis)")
diacritized_output = gr.Textbox(
label="Text with Diacritics",
lines=7,
rtl=True,
elem_classes=["output"]
)
submit_button = gr.Button("Add Diacritics")
submit_button.click(
fn=add_diacritics,
inputs=[text_input, mark_niqqud_male],
outputs=[diacritized_output]
)
if __name__ == "__main__":
demo.launch()
|