Downloads · 30 days
0
0% of all-time downloads
daruokta/t5gemma-2-1b-1b-instruct-chat-indo-v2-exp
t5gemma-2-1b-1b-instruct-chat-indo-v2-exp is a text generation model from daruokta. Use it when you need the model to write or continue text. It is set up for peft.
Model ini merupakan LoRA adapter berukuran 1B yang difine-tune dari model dasar google/t5gemma-2-1b-1b menggunakan metode Supervised Fine-Tuning (SFT) dengan konfigurasi eksperimental. Model ini dioptimalkan untuk tug…
Downloads · 30 days
0
0% of all-time downloads
All-time downloads
5
Public
Repo size
12.8 GB
Likes
0
Public
Click a slice to open those files.
.pt10 GB · 72%
From the Hugging Face model README
Model ini merupakan LoRA adapter berukuran 1B yang difine-tune dari model dasar google/t5gemma-2-1b-1b menggunakan metode Supervised Fine-Tuning (SFT) dengan konfigurasi eksperimental. Model ini dioptimalkan untuk tugas pemahaman instruksi dan kemampuan dialog multi-turn secara natural dalam Bahasa Indonesia serta Bahasa Inggris.
Berikut adalah hasil perbandingan kinerja generasi teks antara model yang menggunakan optimizer standar (AdamW) dan model eksperimental (GrokAdEMAMix):
| Kategori Tugas | Expected Target (Dataset) | Model Optimizer AdamW (Langkah 1000) | Model Optimizer GrokAdEMAMix (Langkah 1225) |
|---|---|---|---|
| Grounded QA | alat-alat pertukangan seperti paku dan gergaji | alat-alat pertukangan seperti paku dan gergaji (Sesuai) | alat-alat pertukangan seperti paku dan gergaji (Sesuai) |
| Penerjemahan (EN ➔ ID) | "Oleskan alkohol gosok langsung dan tekan dengan kain bersih." | "Oleskan alkohol gosok langsung dan tekan..." (Sesuai) | "Oleskan alkohol gosok langsung dan tekan..." (Sesuai) |
| Parafrase (Sederhana) | Campur cuka dan air (1:2), rendam kain setengah jam, lalu bilas. | Campur cuka dan air (1:2), rendam kain setengah jam, lalu bilas. (Sesuai) | Campur cuka dan air (1:2), rendam kain setengah jam, lalu bilas. (Sesuai) |
| Ekstraksi Checklist | Checklist langkah menghilangkan noda tinta | Menghasilkan karakter checklist dengan format yang kurang rapi (- $[], -\[\]) | Menghasilkan checklist markdown bersih dengan urutan instruksi yang tepat |
Berikut adalah contoh skrip Python untuk memuat model dasar beserta LoRA adapter ini menggunakan pustaka transformers dan peft:
import os
import torch
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
from peft import PeftModel
base_model_name = "google/t5gemma-2-1b-1b"
adapter_id = "daruokta/t5gemma-2-1b-1b-instruct-chat-indo-v2-exp"
# 1. Memuat Tokenizer
tokenizer = AutoTokenizer.from_pretrained(base_model_name, trust_remote_code=True)
# 2. Memuat Base Model
base_model = AutoModelForSeq2SeqLM.from_pretrained(
base_model_name,
trust_remote_code=True,
torch_dtype=torch.bfloat16 if torch.cuda.is_available() else torch.float32,
device_map="auto" if torch.cuda.is_available() else None
)
# 3. Menerapkan Logit Masking
vocab_size = base_model.config.vocab_size
suppress_block1 = list(range(6, 105))
suppress_block2 = list(range(256002, 262144))
suppress_vision = [255999, 256000, 256001]
suppress_ids = [i for i in (suppress_block1 + suppress_block2 + suppress_vision) if i < vocab_size]
mask = torch.zeros(vocab_size, dtype=torch.bfloat16 if torch.cuda.is_available() else torch.float32)
mask[suppress_ids] = -10000.0
def forward_hook(module, inputs, outputs):
if hasattr(outputs, "logits"):
outputs.logits.add_(mask.to(outputs.logits.device))
elif isinstance(outputs, tuple):
outputs[0].add_(mask.to(outputs[0].device))
return outputs
base_model.register_forward_hook(forward_hook)
# 4. Memuat LoRA Adapter
model = PeftModel.from_pretrained(base_model, adapter_id, subfolder="final_adapter")
model.eval()
# 5. Inferensi Percakapan
messages = [
{"role": "system", "content": "Kamu adalah asisten AI yang helpful, santai, dan ramah. Gunakan Bahasa Indonesia sebagai bahasa utama."},
{"role": "user", "content": "Tolong jelaskan secara singkat apa itu fotosintesis."}
]
prompt = ""
is_first_user = True
for msg in messages:
if msg["role"] == "system":
continue
if msg["role"] == "user":
prompt += "<start_of_turn>user\n"
if is_first_user:
prompt += messages[0]["content"] + "\n\n"
is_first_user = False
prompt += msg["content"] + "<end_of_turn>\n"
elif msg["role"] in ["assistant", "model"]:
prompt += "<start_of_turn>model\n" + msg["content"] + "<end_of_turn>\n"
prompt += "<start_of_turn>model\n"
inputs = tokenizer(prompt, return_tensors="pt", add_special_tokens=False).to(model.device)
with torch.no_grad():
outputs = model.generate(
**inputs,
max_new_tokens=256,
temperature=0.7,
repetition_penalty=1.0,
do_sample=True,
eos_token_id=[tokenizer.convert_tokens_to_ids("<end_of_turn>"), tokenizer.eos_token_id]
)
response = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(response.strip())
128256["q_proj", "k_proj", "v_proj", "o_proj", "gate_proj", "up_proj", "down_proj"]0.25 (Selesai penuh / langkah 1225)GrokAdEMAMix (grok_alpha = 2.0, grok_lamb = 0.98)1e-5 (Cosine decay scheduler dengan 100 langkah pemanasan/warmup)4 per device (Gradient Accumulation Steps: 32)bfloat162048 / 5120.15.00.10.19.12.12.0+cu1305.11.00.49.21.14.05.0.0T5Gemma 2: Seeing, Reading, and Understanding Longer
Return of the Encoder: Maximizing Parameter Efficiency for SLMs
The AdEMAMix Optimizer: Better, Faster, Older
GrokAdEMAMix yang memanfaatkan perpaduan dua tingkat Exponential Moving Average (EMA) gradien untuk mengoptimalkan konvergensi dan mengatasi pelupaan model (forgetting).Layer-Aware Task Arithmetic: Disentangling Task-Specific and Instruction-Following Knowledge
Editing Models with Task Arithmetic
Gemma 3 Technical Report
Cendol: Open Instruction-tuned Generative Large Language Models for Indonesian Languages
@article{zhang2025t5gemma2,
title={T5Gemma 2: Seeing, Reading, and Understanding Longer},
author={Zhang, Biao and others},
journal={arXiv preprint arXiv:2512.14856},
year={2025}
}
@article{elfeki2025return,
title={Return of the Encoder: Maximizing Parameter Efficiency for SLMs},
author={Elfeki, Mohamed and others},
journal={arXiv preprint arXiv:2501.16273},
year={2025}
}
@article{pagliardini2024ademamix,
title={The AdEMAMix Optimizer: Better, Faster, Older},
author={Pagliardini, Matteo and Ablin, Pierre and Grangier, David},
journal={arXiv preprint arXiv:2409.03137},
year={2024}
}
@article{ren2025layer,
title={Layer-Aware Task Arithmetic: Disentangling Task-Specific and Instruction-Following Knowledge},
author={Ren, Han and others},
journal={arXiv preprint arXiv:2502.20186},
year={2025}
}
@article{ilharco2022editing,
title={Editing models with task arithmetic},
author={Ilharco, Gabriel and others},
journal={arXiv preprint arXiv:2212.04089},
year={2022}
}
@article{gemma3report,
title={Gemma 3 Technical Report},
author={DeepMind, Google},
journal={arXiv preprint arXiv:2503.19786},
year={2025}
}
@article{koto2024cendol,
title={Cendol: Open Instruction-tuned Generative Large Language Models for Indonesian Languages},
author={Koto, Fajri and others},
journal={arXiv preprint arXiv:2404.06138},
year={2024}
}