๐ŸŒบ

Tuwili

Model AI pertama untuk menerjemahkan antara
Bahasa Indonesia dan Bahasa Gorontalo (Hulontalo)

611M Parameter
309K Data Training
0.673 Eval Loss
mBART-50 Base Model

๐Ÿš€ Coba Sekarang

๐Ÿ’ก Model ini berjalan di server (Python + PyTorch). Gunakan Google Colab (gratis, GPU tersedia) atau jalankan di komputer lokal Anda.

โšก Quick Start โ€” 3 Langkah

1

Install Dependencies

Jalankan di terminal atau cell Colab:

bash
pip install transformers sentencepiece protobuf torch gradio
2

Terjemahkan dengan Python

Cukup 10 baris kode untuk mulai menerjemahkan:

python
from transformers import MBartForConditionalGeneration, MBart50TokenizerFast

tokenizer = MBart50TokenizerFast.from_pretrained("datanikah9/tuwili")
model = MBartForConditionalGeneration.from_pretrained("datanikah9/tuwili")
tokenizer.src_lang = "id_ID"

prompt = "Terjemahkan kata atau kalimat berikut dari bahasa Indonesia ke bahasa Gorontalo. Selamat pagi"
inputs = tokenizer(prompt, return_tensors="pt", max_length=128, truncation=True)
generated = model.generate(**inputs, max_length=64, num_beams=5,
    forced_bos_token_id=tokenizer.lang_code_to_id["id_ID"])
print(tokenizer.decode(generated[0], skip_special_tokens=True))
3

Jalankan Demo Gradio (Opsional)

Buat antarmuka web interaktif dengan link publik:

python
import gradio as gr, torch
from transformers import MBartForConditionalGeneration, MBart50TokenizerFast

tokenizer = MBart50TokenizerFast.from_pretrained("datanikah9/tuwili")
model = MBartForConditionalGeneration.from_pretrained("datanikah9/tuwili")
tokenizer.src_lang = "id_ID"

def terjemahkan(teks, arah):
    if arah == "Indonesia โ†’ Gorontalo":
        prompt = f"Terjemahkan kata atau kalimat berikut dari bahasa Indonesia ke bahasa Gorontalo. {teks}"
    else:
        prompt = f"Terjemahkan kata atau kalimat berikut dari bahasa Gorontalo ke bahasa Indonesia. {teks}"
    inputs = tokenizer(prompt, return_tensors="pt", max_length=128, truncation=True)
    generated = model.generate(**inputs, max_length=64, num_beams=5,
        forced_bos_token_id=tokenizer.lang_code_to_id["id_ID"])
    return tokenizer.decode(generated[0], skip_special_tokens=True)

demo = gr.Interface(
    fn=terjemahkan,
    inputs=[gr.Textbox(label="Teks"),
            gr.Radio(["Indonesia โ†’ Gorontalo", "Gorontalo โ†’ Indonesia"],
                    value="Indonesia โ†’ Gorontalo", label="Arah")],
    outputs=gr.Textbox(label="Hasil"),
    title="๐ŸŒบ Tuwili",
    examples=[["Selamat pagi", "Indonesia โ†’ Gorontalo"],
              ["kumando", "Gorontalo โ†’ Indonesia"]],
)
demo.launch(share=True)  # โ†’ link publik gratis

๐Ÿ“– Tentang Tuwili

Tuwili adalah model Neural Machine Translation (NMT) yang di-fine-tune dari mBART-50 untuk menerjemahkan secara dua arah antara Bahasa Indonesia dan Bahasa Gorontalo (Hulontalo).


Bahasa Gorontalo adalah bahasa daerah yang digunakan oleh masyarakat di Provinsi Gorontalo, Sulawesi, Indonesia. Sebagai bahasa dengan sumber daya rendah (low-resource language), model ini bertujuan membantu pelestarian dan digitalisasi bahasa Gorontalo melalui teknologi AI.


Dilatih menggunakan 309.788 instruksi fine-tuning dua arah, bersumber dari kamus Gorontalo-Indonesia dan KBBI v6.1.0. Training berjalan selama 3 epoch dengan loss turun dari 25.5 โ†’ 1.5 (94% penurunan).