Downloads · 30 days
0
daruokta/t5gemma-2-1b-1b-instruct-chat-indo-v2
t5gemma-2-1b-1b-instruct-chat-indo-v2 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). Model ini difokuskan untuk pemahaman instruksi dan kemampuan dial…
Downloads · 30 days
0
Access
Public
Updated Jun 12, 2026
Repo size
6.4 GB
Likes
0
Public
Click a slice to open those files.
.safetensors3.7 GB · 73%
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). Model ini difokuskan untuk pemahaman instruksi dan kemampuan dialog multi-turn secara natural dalam Bahasa Indonesia serta Bahasa Inggris.
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"
# 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="checkpoint-1000")
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 (Dihentikan pada epoch 4.08 / langkah 1000 dikarenakan kendala teknis pada kernel)paged_adamw_8bit (Paged AdamW 8-bit)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
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{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}
}