Downloads · 30 days
19
16% of all-time downloads
Rickkosse/gemma-4-E4B-frisian
gemma-4-E4B-frisian is a text generation model from Rickkosse. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as gemma.
A Frisian (West Frisian / Westerlauwersk Frysk) chat model, built on google/gemma-4-E4B-it through continued pretraining (CPT) on Frisian text followed by supervised fine-tuning (SFT) on Frisian instructions. This is…
Downloads · 30 days
19
16% of all-time downloads
All-time downloads
120
Public
Parameters
8B
16 GB on disk
Likes
1
Public
Click a slice to open those files.
.safetensors16 GB · 100%
From the Hugging Face model README
A Frisian (West Frisian / Westerlauwersk Frysk) chat model, built on google/gemma-4-E4B-it through continued pretraining (CPT) on Frisian text followed by supervised fine-tuning (SFT) on Frisian instructions. This is the full model of the project: it combines enriched Frisian language ability (CPT) with instruction-following chat behaviour (SFT).
Trained with Unsloth + LoRA.
A compact instruction model that consistently answers in Frisian. It is meant as an open, reproducible starting point for Frisian language models — not a production-ready system.
Measured with a six-question smoke test; language identification via fastText
lid.176 (mean fy probability across the answers):
| Model | mean fy_score |
|---|---|
| google/gemma-4-E4B-it (base) | 0.77 |
| + SFT (no CPT) | 0.84 |
| + CPT + SFT (this model) | 0.87 |
The progression shows both stages contribute: SFT anchors the chat behaviour, CPT deepens the language (richer vocabulary, fewer neologisms, more natural Frisian).
Stage 1 — CPT (Rickkosse/gemma-4-E4B-fy-cpt)
Rickkosse/fy-pretraining-mix-v2 — ~254M tokens of Frisian text
(Frisian Wikipedia, web text, and filtered back-translation NL→FY)q,k,v,o,gate,up,down); embeddings not
trained (Gemma's 262k multilingual vocab already covers Frisian)Stage 2 — SFT (this model)
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
model_id = "Rickkosse/gemma-4-E4B-fy-cpt-sft"
tok = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype=torch.bfloat16, device_map="auto")
messages = [
{"role": "system", "content": "Do bist in behelpsume AI-assistint. Antwurdzje altyd yn it Frysk."},
{"role": "user", "content": "Wat is de haadstêd fan Fryslân?"},
]
inputs = tok.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt").to(model.device)
out = model.generate(inputs, max_new_tokens=200, do_sample=True, temperature=0.7, top_p=0.9)
print(tok.decode(out[0][inputs.shape[1]:], skip_special_tokens=True))
Honest about what this model does not do well:
No alignment/safety training. Treat the output as that of a small open base model.
Small model. 4B class; do not expect deep reasoning.
Base model: google/gemma-4-E4B-it, under the Gemma license. This derivative model is subject to the same terms. Training data partly derived from Wikipedia (CC-BY-SA) and public instruction datasets.
Part of an open-source project to build Frisian language models. Built by Rickkosse. Feedback welcome.