Views
No views yet
google/gemma-4-E2B-it for JMH benchmark generation on fastutil classes with performance-mutation rewards.| Base model | google/gemma-4-E2B-it |
| Method | LoRA (r=16, alpha=32) + bf16, 1 epoch SFT on accepted RFT traces |
| Corpus | 14 mutation-scored fastutil classes |
| Train samples | 15 (+ 1 val) |
| Accepted / generated | 17 / 224 (7.6%) |
| Max seq len | 16384 (chunked CE loss) |
1import torch
2from peft import PeftModel
3from transformers import AutoModelForCausalLM, AutoTokenizer
4
5base = "google/gemma-4-E2B-it"
6adapter = "bookxd/gemma-4-e2b-rft-fastutil-mutation"
7
8tokenizer = AutoTokenizer.from_pretrained(adapter)
9model = AutoModelForCausalLM.from_pretrained(
10 base,
11 torch_dtype=torch.bfloat16,
12 attn_implementation="sdpa",
13 device_map="auto",
14)
15model = PeftModel.from_pretrained(model, adapter)
16model.eval()
17
18messages = [
19 {"role": "system", "content": "You write JMH benchmarks..."},
20 {"role": "user", "content": "Target class: it.unimi.dsi.fastutil.ints.IntArrayList\n..."},
21]
22inputs = tokenizer.apply_chat_template(
23 messages,
24 tokenize=True,
25 add_generation_prompt=True,
26 return_tensors="pt",
27 chat_template_kwargs={"enable_thinking": True},
28).to(model.device)
29
30with torch.no_grad():
31 out = model.generate(**inputs, max_new_tokens=8192, do_sample=True, temperature=1.0)
32print(tokenizer.decode(out[0], skip_special_tokens=False))adapter_model.safetensors — LoRA weights (~92M params trainable on base)adapter_config.json — PEFT config (base model + target modules)tokenizer.json, tokenizer_config.json, chat_template.jinja — tokenizer + Gemma 4 thinking template