TwentyNine's picture
Update app.py
3a028ad verified
raw
history blame
1.64 kB
import gradio as gr
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
tokenizer = AutoTokenizer.from_pretrained("TwentyNine/byt5-ain-kana-latin-converter-v1")
model = AutoModelForSeq2SeqLM.from_pretrained("TwentyNine/byt5-ain-kana-latin-converter-v1")
def transcribe(input_str):
output_str = ''
for input in input_str.split(separator='\n'):
input_enc = tokenizer.encode(input_str.strip(), return_tensors='pt')
output_enc = model.generate(input_enc, max_length=256)
if len(output_str) > 0:
output_str = output_str + '\n'
output_str = output_str + tokenizer.decode(output_enc[0], skip_special_tokens=True)
return tokenizer.decode(output_enc[0], skip_special_tokens=True)
gradio_app = gr.Interface(
transcribe,
inputs=gr.Textbox(label='Input (kana)', value='トゥイマ ヒ ワ エエㇰ ワ ヒオーイオイ。ピㇼカノ ヌカㇻ ヤン!', placeholder='トゥイマ ヒ ワ エエㇰ ワ ヒオーイオイ。ピㇼカノ ヌカㇻ ヤン!', info='Ainu text written in Japanese katakana (input).', interactive=True, autofocus=True),
outputs=gr.Textbox(label='Output (alphabet)', info='Ainu text written in the Latin alphabet (output).'),
title='BYT5 Ainu Kana-Latin Converter (V1)',
article='<p>Example sentence borrowed from <a href="https://www.hakusuisha.co.jp/book/b584600.html">New Express Ainu-go (ニューエクスプレスプラス アイヌ語)</a> by <a href="https://researchmap.jp/read0064265/?lang=english">NAKAGAWA Hiroshi</a>"</p>'
)
if __name__ == "__main__":
gradio_app.launch()