Downloads · 30 days
48
67% of all-time downloads
KucLab/kuclab-hertz-0.7
kuclab-hertz-0.7 is a text generation model from KucLab. Use it when you need the model to write or continue text. The card lists the license as apache-2.0.
A Czech/English STEM + programming assistant built by KucLab on top of google/gemma-4-12B-it. This release focused on two things: pushing STEM accuracy further, and making identity/personality hold up without needing…
Downloads · 30 days
48
67% of all-time downloads
All-time downloads
72
Public
Repo size
55.5 GB
Likes
0
Public
Click a slice to open those files.
.safetensors48.1 GB · 87%
From the Hugging Face model README
A Czech/English STEM + programming assistant built by KucLab on top of google/gemma-4-12B-it. This release focused on two things: pushing STEM accuracy further, and making identity/personality hold up without needing a system prompt — a real bug found in every prior release (0.3-0.6): ollama pull hf.co/... alone doesn't carry a Modelfile's SYSTEM directive, so the model would answer as generic Gemma unless you separately ran ollama create. See the Quickstart below for the fix, and the "honest development story" section for how deep the identity fix goes.
Hertz 0.7 is a LoRA fine-tune (r=16, merged into the base weights). The dataset combines Hertz 0.6's full corpus (2600 rows, itself carrying four generations of cumulative Czech/STEM reinforcement) with ~1463 fresh STEM-heavy rows (generated by an autonomous coding-agent subagent, then down-sampled from an initial ~2388 to cut repetitive templated drill problems), 309 CS↔EN terminology rows, and a substantially expanded identity block (56 direct identity rows, up from 15 in 0.6 — including explicit denials for "are you Gemma/GPT/Gemini/Claude" misidentification, and 10 rows where the model's dry/direct personality shows up in ordinary answers, not just identity questions).
rope_parameters structure with separate config per attention type, and the YaRN scaling technique we use elsewhere is a legacy alias for that same field that overwrites it instead of extending it, breaking GGUF export outright (confirmed the hard way during Hertz 0.6). Context stays at native 262144 this release.Important: ollama pull hf.co/... alone does NOT apply this model's system prompt — Ollama only fetches the raw GGUF from Hugging Face, it does not read a repo's Modelfile. Use ollama create with the Modelfile below instead — it pulls the weights AND applies the system prompt in one step:
curl -O https://huggingface.co/KucLab/kuclab-hertz-0.7/resolve/main/Modelfile
ollama create kuclab-hertz-0.7 -f Modelfile
ollama run kuclab-hertz-0.7
That said — unlike every prior release, identity now mostly works even without this step, because it's trained directly into the weights this time, not just described in the system prompt. See below.
A user testing Hertz 0.6 via plain ollama pull found it answered "I'm a large language model trained by Google" — because that pull path never applies the Modelfile's system prompt, and 0.6 only had 15 identity training rows (0.5% of its dataset) — not enough signal to override the base model's own strong pretrained identity.
This release trains identity much harder: 56 direct identity rows (up from 15), covering many phrasings and — critically — explicit corrections for "are you Gemma/GPT/Gemini/Claude" style questions, since the base model's prior for those is very strong (it's literally built on Gemma's weights).
Tested without any system prompt at all (the exact scenario that broke 0.6):
So: the default, most-common identity questions are now robust without a system prompt. A specific adversarial "are you Gemma?" question, with only a handful of training examples against a very strong base prior, isn't fully overridden yet. No fine-tuning technique makes behavior 100% unable to be changed by any prompt — this is a real, disclosed, partial improvement, not a complete fix.
Two full training attempts happened this release, both measured with the same corrected methodology established in Hertz 0.5/0.6 (fixed 1200s timeout, 4096 token budget, identical grading code).
Attempt 1 (5384 rows: full 0.6 reuse + 2388 fresh rows, unfiltered) regressed both benchmarks: MMLU-Pro STEM fell to 68.3% (from 0.6's 79.2%) and Czech terminology fell to 68.0% (from 73.8%), despite the format-compliance win holding (still only 18/240 unparsed, same as 0.6). Diagnosis: 66% of the fresh rows (1582 of 2388) came from just 219 repeated templated computational patterns (only the numbers varied) — heavy narrow drilling that likely crowded out the small LoRA adapter's limited capacity for the broader knowledge MMLU-Pro actually tests, and diluted the terminology/identity signal by nearly doubling total dataset size.
Attempt 2 (this release) down-sampled those templated rows to at most 3 per pattern (2388 → 1463 fresh rows, total dataset 5384 → 4466) and added more identity-denial examples.
MMLU-Pro STEM (240 held-out questions, this project's own curated subset)
| base | Hertz 0.4 | Hertz 0.5 | Hertz 0.6 | Hertz 0.7 | |
|---|---|---|---|---|---|
| Biology | 86.7% | 76.7% | 78.3% | 91.7% | 86.7% |
| Chemistry | 61.7% | 45.0% | 53.3% | 61.7% | 65.0% |
| Math | 83.3% | 76.7% | 78.3% | 90.0% | 88.3% |
| Physics | 71.7% | 56.7% | 65.0% | 73.3% | 75.0% |
| Total | 75.8% | 63.7% | 68.8% | 79.2% | 78.8% |
Hertz 0.7 lands essentially level with 0.6 (−0.4pp) — not the 85% target for this release, but a large recovery from attempt 1's 68.3%, and the best format-compliance result yet: only 1/240 answers were unparseable (down from 18/240 in both 0.6 and this release's attempt 1), a direct result of the expanded answer-first training.
Czech terminology benchmark (206 held-out CS↔EN scientific terms)
| Hertz 0.3 | Hertz 0.5 | Hertz 0.6 | Hertz 0.7 | |
|---|---|---|---|---|
| CS→EN | 79.6% | 81.6% | 82.5% | 80.6% |
| EN→CS | 51.5% | 69.9% | 65.0% | 58.3% |
| Total | 65.5% | 75.7% | 73.8% | 69.4% |
Below Hertz 0.6's peak. Same diagnosis as above (dataset size grew relative to the fixed 309-row terminology block).
Apache 2.0, inherited from google/gemma-4-12B-it (per Google's official Hugging Face listing).