Stepuli — Gemma 4 E2B experimental maths tutor

Published by AI Bluks. Stepuli is an English maths tutoring experiment with downloadable local model weights. It is not a validated tutor for children, a finished grade 7 curriculum, or a demonstrated improvement over the untouched base. It makes serious arithmetic errors, falsely praises incorrect learner steps, and sometimes stops before completing a requested worked solution.

Standalone model download — 3.11 GB · GitHub model release · GitHub source

The planned Instagram handle is @stepulilearn; it has not been claimed by this project.

Files

File Purpose
stepuli-v8-experimental-Q4_K_M.gguf Standalone model: 3,106,738,304 bytes. Requires no separate base or adapter.
tutor-v8-response-pilot-lora.gguf Optional adapter: 6,556,960 bytes. Requires the unchanged matching original base.
system_prompt.txt Tutor prompt used in the reported experiments.
VALIDATION.json Full compact-model fresh20 and smoke outputs, frozen smoke prompts, and scoped evaluation summaries.
DOWNLOADS.md Download choices and portable local API instructions.
PUBLIC_MANIFEST.json, SHA256SUMS Exact artifact identities and integrity.
LICENSE, NOTICE Apache 2.0 license and modification provenance.

The complete public Hugging Face and GitHub model downloads were checked against the original model’s size and SHA-256 on 2026-10-14. Checksums are supplied in SHA256SUMS and PUBLIC_MANIFEST.json. The full model and small adapter are different ways to load the experiment; do not apply the adapter on top of the standalone model.

Training and conversion

Fresh unsloth/gemma-4-E2B-it, revision d36bdd3855c82a6a1a23f7c459b749f5724ae75d, with attention-only LoRA rank 8/alpha 16, learning rate 0.000005, BF16, effective batch 32, maximum training length 1024. Training stopped after 20 of 118 scheduled optimizer steps: 640 presentations from 3,760 shuffled synthetic training rows, with 940 validation rows. Only the final assistant reply was supervised; earlier turns were context. Targets were not reviewed by a schoolteacher. Native nonthinking formatting was used for training and matched Colab evaluation.

The adapter GGUF was converted with official llama.cpp commit 1b70350c92563449576bcbbf552994b1d1ed847d. To create the standalone file, llama.cpp b11429 (d81235049) merged the adapter once into the untouched Q4_K_M base:140 adapted tensors were dequantized to F32, the scaled adapter was added, and those tensors were saved as F16. The compact model then quantized those 140 tensors under Q4_K_M policy, retaining all 461 unadapted tensors byte-for-byte through explicit original-type overrides. Already-quantized unadapted tensors were not requantized.

This is a derivative of an already quantized base, not a merge into original BF16 weights. The final compact model has 136 tensors with bytes differing from the original base; four adapted tensors quantized back to their original bytes. Changed bytes do not prove retained training capability.

Actual results

Matched Colab BF16, greedy nonthinking, maximum 512 output tokens:

Test Untouched base V8 pilot
Old numeric development retention 117/127 118/127
Fresh numeric questions 15/20 15/20
Teaching pass / partial / fail 17 /4 /15 21 /4 /11
Correct-step progression 8/12 9/12
Wrong-step tutoring passes 1/12 1/12
Correct, complete worked responses 8/12 11/12

Teaching grades are one Codex manual review of all 36 full responses and frozen contexts, not teacher or child assessment. Worked completion improved in three cases and median-step progression in one; wrong-step feedback remained poor. A fraction response hit the 512-token output limit. The old 127 suite overlaps development or validation material and is not blind mastery evidence.

The standalone Q4 download scored 14/20 locally in greedy nonthinking mode with512 output tokens. Every numeric reply matched the earlier untouched Q4 nonthinking test, also 14/20. The separate untouched Q4 base thinking reference scored 20/20 with a 1536-token output budget. Precision, mode, and output-budget differences prevent isolated causal claims. The downloadable compact file did not reproduce the BF16 pilot’s 15/20 result and has no demonstrated numeric improvement over its matched local nonthinking reference.

Seven frozen local smoke cases were tested with the separate base plus adapter, mixed merge, and compact file. Known failures in all three include:

  • 3+5-6*4/2 returned 1; correct answer: -4.
  • 7/10-2/15 returned 11/30; correct answer: 17/30.
  • The tutor falsely praised 22 for the intermediate step 8×3.
  • An explicit square-root worked-solution request ended by asking the learner to calculate 14×14 instead of completing the solution.

735/21 correctly returned 35; a correct intermediate multiplication control advanced to division. Six of seven mixed-model smoke replies matched the separate-adapter run; five of seven compact-model replies matched. This is not proof of equivalence. Full raw compact results and prompts are in VALIDATION.json.

Run locally

Use a llama.cpp build supporting Gemma 4 for your operating system and processor. The development Mac used b11429. Linux requires a Linux executable; its functionality and performance have not been tested here.

llama-server \
  --model stepuli-v8-experimental-Q4_K_M.gguf \
  --host 127.0.0.1 --port 8082 \
  --ctx-size 4096 --parallel 1 --threads 4 --jinja \
  --alias stepuli-v8-experimental

On the tested Apple Silicon runtime, --n-gpu-layers 99 enables Metal offload. CPU-only systems can omit that flag. Connect a local app to http://127.0.0.1:8082/v1, use the supplied tutor system prompt, and explicitly select thinking or nonthinking in API requests. A GGUF is model weights, not the web app. Do not pass --lora for the standalone model.

Limits and license

Intended for adult developer evaluation and further research. These results do not establish full grade 7 coverage, other subjects, child safeguarding, reliable feedback, classroom readiness, or8 GB Linux/Raspberry Pi suitability. No latency, concurrency, thermals, or multi-monitor guarantee is made. Download size does not prove the complete app and operating system fit in8 GB RAM. Test the whole app with networking disabled before claiming offline operation. The experiment has not been promoted into the project app.

Gemma 4 is licensed under Apache 2.0. Model origin: Google Gemma 4 E2B; training checkpoint: Unsloth Gemma 4 E2B. AI Bluks is an independent publisher; Google and Unsloth endorsement is not implied.

Downloads last month
116
GGUF
Model size
5B params
Architecture
gemma4
Hardware compatibility
Log In to add your hardware

4-bit

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

Model tree for aibluks/stepuli-gemma-4-e2b-v8-experimental

Adapter
(57)
this model