independent european AI lab · romania

Open European models,
built from scratch.

rost is an independent European lab training small language models from scratch — its own tokenizer, its own Romanian–English corpus, its own recipe, and nothing inherited from a larger model. The weights are published, the ablations behind each decision are published, and every number on this page comes from a model card you can read yourself.

latest release · rost-1b, august 2026 · CC-BY-NC-4.0

open model repos 20released sizes 4largest model 1.384Btraining tokens 11.68B

01 · why the lab exists

How much fits
in a small model?

That is the question the lab is organised around. rost-1b was trained from scratch in about three and a half hours on eight rented GPUs, so compute was never the interesting constraint. The interesting part is how much of a larger model's behaviour you can recover through the tokenizer, the data mixture and the training schedule — and which of those choices still hold up once they are measured.

01

European by necessity

The European Union has twenty-four official languages, and most of them are read by models trained English-first, on a corpus and a tokenizer built for another language. Romanian is not a rounding error, but English-first models treat it like one. Stripping its diacritics costs up to 57% of model quality, and the penalty grows with scale rather than washing out — measured across matched arms at three sizes, all of them downloadable below. A European language gets served properly when someone in Europe builds the tokenizer and the corpus for it. This lab does that for one of them.

02

Squeeze the size for everything it has

A small model earns its capability from decisions, not parameters. The bilingual vocabulary is 1.8× more efficient on Romanian than an inherited English one, so the same sentence costs fewer tokens to read and to write. Eighteen of the twenty-four layers see only a quarter of the context. Romanian climbs from 30% of the mixture to 55% while the learning rate decays — a phase in which a rehearsal measured Romanian improving roughly 8× faster than English. Each of those was a controlled experiment before it became a default.

03

You do not always need a frontier model

A great deal of real work does not require the largest model in the world. rost-1b lands within eight points of RoLlama2-7b-Base on a four-task Romanian average — from a model five times smaller trained on far less data. It is not as capable, and this site publishes where it is weak. It is often enough.

04

It should run on hardware you already own

Quantised to 791 MiB, rost-1b runs at 60.6 tokens per second on twelve CPU threads and 77 on an M3 — no GPU, no API bill, no text leaving the machine. Affordability is not a discount on the same product; it is a different product, and it has to be trained small on purpose.

05

Open weights, and the evidence behind them

Every model here is downloadable, alongside the tokenizers, the ablation arms, and model cards that state the limitations as plainly as the results. The current weights are non-commercial — inherited from the terms of the data they were trained on — but anyone can read, study, retrain, and check them.

06

Many small models, not one large one

One generalist model is a blunt instrument: every task pays for the largest capability in the box. We think the better shape is a family of small specialists that each do one thing well, with the work routed to whichever is actually needed. Nothing is routed yet: rost-1b is a single model, and the specialists it would coordinate are not trained. It is the direction of the lab, and this page will describe it as built when it is.

02 · the models

Small enough to study.
Open enough to check.

Four sizes, all trained from scratch on the same recipe — European foundation models in the literal sense, with no weights, no distillation and no tokenizer inherited from a larger model. The small series proved the tokenizer and the data mixture; rost-1b is what that recipe was spent on.

weights available286M

rost-286m

The strongest of the shipped series, and the model the recipe was proven on. The sft checkpoint is the best conversational model of the family.

weights available126M

rost-126m

The bilingual pair — pretrained on a 30:70 Romanian–English mixture. Understands both, and answers in the language you asked in.

weights available73M

rost-73m

The smallest of the family. Small enough to train honestly and inspect end to end — a working proof that the tokenizer, corpus, and recipe hold together.

not trained yet

the specialists

Models branched from rost-1b that each do one thing well. Nothing is trained yet, and this card will say so until something is.

rost-1b, as published

Every number below appears on the model card. You can check each one before you trust it.

parameters
1.384B
24 layers · 1,536 hidden · 12 heads
training
11.68B, single pass — no data repeated
8× H100 80GB, ~3.6 hours
context
4,096 tokens
vocab 32,768, purpose-built bilingual
licence
CC-BY-NC-4.0 · non-commercial
Q4_K_M at 791 MiB, through to BF16 at 2.6 GiB
~91 tok/sRTX 5070transformers, bfloat16, ~3.3 GB resident
489.7 tok/sRTX 5070llama.cpp, Q4_K_M
60.6 tok/s12 CPU threadsllama.cpp, Q4_K_M
77 tok/sApple M3llama.cpp, Q4_K_M
OpenLLM-Ro, base checkpoint · 400 rows per task · zero-shot, normalised
taskscorechance
ro_hellaswag38.5025.0
ro_truthfulqa34.0014.3
ro_arc_challenge30.2528.6
ro_mmlu29.7525.0
ro_winogrande52.2550.0
mean36.9528.6

Zero-shot, so not comparable to the OpenLLM-Ro leaderboard, which averages several few-shot settings. For scale rather than ranking: RoLlama2-7b-Base reports 42.05 on a four-task average against this model's 34.12 — from a model 5× larger trained on far more data.

rost-1b-instruct-v2 — what a second fine-tune actually bought

the same rost-1b base as v1 — no new pretraining, so no new knowledge. Both checkpoints were run in one session on one harness, so these are differences between the models rather than between two measurements.

measured, v1 against v2
v1v2
instruction following12/7519/75
replies that stop on their own15/7533/75
English likelihood benchmarks (mean)0.4490.438
Romanian, five OpenLLM-Ro tasks (mean)0.36850.3715

The Romanian difference is inside the ±2.4-point noise band at 400 rows a task: no measurable change. The English one is a small post-training regression — fine-tuning cannot add knowledge to a base it did not change, and this recipe cost a little likelihood while buying better behaviour. A sealed 44-case held-out set, written and encrypted before training and opened once afterwards, did not confirm a general improvement either.

Where it is weak: It writes worse Python than it appears to, it has no identity of its own where v1 will tell you it is rost, and one prompt in the repetition-stress set loops under every decoding setting tested. The repository therefore prescribes no sampling parameters, because none of the five tested passed the bar set before the results were read.

03 · the evidence

The ablations are
downloadable too.

A result nobody can re-run is an assertion. Most of these repos are single-question arms — trained, cross-evaluated, and published so the finding can be checked rather than believed.

04 · what we found

Every strong claim
needs a receipt.

The lab exists to answer concrete questions with controlled runs, publish the artifacts, and record the dead ends as carefully as the wins.

01

Language is not an afterthought.

Most models quietly mangle the languages they weren't built for. Ours don't — treating a language properly is worth up to 57% of model quality, and we've measured it.

02

Our tokenizer does more with less.

A vocabulary designed for the languages it serves is 1.8× more efficient than an inherited one — faster inference, longer effective context, lower cost per word.

03

Every choice is tested, then shipped.

Data mix, training schedule, fine-tuning — each layer of the stack earns its place in a controlled experiment before it reaches a release.

04

We don't trust easy numbers.

Benchmarks that flatter the model get thrown out. If a score is on this site, it was measured on a released checkpoint — otherwise it says pending.

05 · the log

Written up
as it happens.

Each experiment gets a write-up when it is finished, not when it is convenient. Entries without a date have not been written yet, and say so.

  1. 2026-08-02

    Keep the diacritics

    Stripping Romanian diacritics wins on the easy metric and costs 57% on the real one — and the penalty grows with scale. The full study, every model downloadable.

  2. not written yet

    The recipe: the measured decisions

    Corpus filtering, the RO:EN ratio, the SFT language trap — and why the easy metric keeps lying.

  3. not written yet

    Teaching a small model to use tools

    A four-tool agent runtime, replay-verified teacher traces, and the gates a checkpoint must pass before it is called an agent.

  4. not written yet

    rost-1b: six days of launch gates

    How the 1.4B bilingual base earned its launch: the horizon sweep, the contamination audit against every eval set, and the two-phase rehearsal — plus the bugs the gates caught before the rental started.

rost · /rost/

AI should have
a reason to exist.

In Romanian, rost is purpose, meaning, order—the reason something belongs. That is the standard: useful systems, legible decisions, and no magic where engineering should be.

browse the models talk to the lab ↗