Gemma 4 E2B — Coding POC (v1)

A LoRA adapter for unsloth/gemma-4-E2B-it-UD-MLX-4bit, finetuned on a small sample of my own real coding-assistant sessions. This is an early proof-of-concept, not a polished model — see Limitations before expecting much from it.

What this is

  • Base model: Gemma 4 E2B (Google), Unsloth's MLX 4-bit build
  • Trained with: Unsloth (unsloth train), LoRA, on Apple Silicon (MLX)
  • Trained on: ~40 curated conversations extracted from my own Claude Code coding sessions
  • Training data itself is not published — only the model weights are. See Privacy below.

Training details

Method LoRA, rank/config via Unsloth defaults
Trainable params 96.6M (6.28% of base)
Steps 60
Peak memory 8.92 GB (Mac mini M4, 32GB)
Final avg loss 2.91

Limitations (read this before using it for anything real)

  • Tiny dataset. 36 training examples, 4 validation. This is a pipeline proof-of-concept, not a properly trained model.
  • Not evaluated rigorously. Compared qualitatively against the base model on a couple of prompts — no benchmark, no held-out scoring.
  • Don't expect a dramatic behavior change. At this data scale, treat any difference from the base model as noise, not a validated improvement.

Privacy note

This adapter was trained on real personal coding-session transcripts. The raw training data is intentionally not included in this repo — only the resulting model weights are published. Some scrubbing (secrets, emails, local file paths) was applied to the training data before this version was trained, though the process is still basic; treat any personal information the model might reproduce as unintentional and please let me know if you spot any.

How to use

With Unsloth (recommended — this is how it was trained/tested):

unsloth chat nikheal25/gemma-4-E2B-coding-poc-v1

With peft directly:

from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer

base = "unsloth/gemma-4-E2B-it-UD-MLX-4bit"
model = AutoModelForCausalLM.from_pretrained(base)
model = PeftModel.from_pretrained(model, "nikheal25/gemma-4-E2B-coding-poc-v1")
tokenizer = AutoTokenizer.from_pretrained(base)

What's next

This is step one of a larger project: a reusable pipeline for finetuning local models on my own coding history, published as an open-source library with a written article. Follow nikheal25 for updates.

Downloads last month
1
MLX
Hardware compatibility
Log In to add your hardware

Quantized

Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for nikheal25/gemma-4-E2B-coding-poc-v1

Adapter
(1)
this model