Model reference · open weights

cRia-LM

Available as managed deployment LLMs sz14 · community Text gen 1 variants 3k dl/mo

cRia-LM is an open-weight language model from sz14. AxForge deploys and operates it for you on dedicated EU-owned hardware — with the licence handled where one is required.

Available as managed deployment — configured and operated for you on dedicated EU hardware, quoted per deployment.

What it is

Released bysz14
TypeLanguage models
TaskText gen
Parameters (lead)76M
Context4k tokens
Runs withtransformers
Released2026-08-20
Popularity3k downloads / month
LicenceOpen weights

About

What cRia-LM is

NOTE: A stale checkpoint was accidentally pushed, please don't use till fixed

Cria (noun): a baby llama, alpaca, vicuña, or guanaco. Pronounced ˈkrē-ə.

~ Merriam-Webster



cRia-LM-75M is a 75.7M-parameter base language model built as a Relaxed Recursive Transformer (RRT). It uses a shared 11-layer recurrent block evaluated twice, with pass-specific LoRA parameters on the second traversal.

Training was carried out in three stages. Stage 1 established the 2K base model over 10B tokens. Stage 2 continued training with a 2B-token budget and a capability-focused data curriculum; the released Stage 2 checkpoint is step 10,000, corresponding to about 1.31B continuation tokens. Stage 3 extended the context window from 2,048 to 4,096 tokens with a 50M-token run on codelion/sutra-1B; the released checkpoint was selected at roughly 5M tokens.

This is a base model. It has not been instruction tuned and does not use a chat template. The Transformer layer design follows HuggingFaceTB/SmolLM2-135M, with QK-Norm added for training stability.

Read the full model card

Model Details

SpecificationValue
Parameters75.7M
ArchitectureRelaxed Recursive Transformer
Unique Transformer layers13
Effective depth24
Prelude layers1
Shared recurrent layers11
Recurrent passes2
Coda layers1
Hidden size576
MLP intermediate size1,536
Attention heads9 query heads
KV heads3
Attention typeGrouped-query attention
Head dimension64
MLPSwiGLU
NormalizationRMSNorm
Attention normalizationQK-Norm
Position encodingRoPE
RoPE theta100,000
Context length4,096 tokens
Vocabulary size49,152
TokenizercRia-LM-75M BPE tokenizer, per-digit tokenized
Token embeddingTied, factorized
Embedding rank210
Recurrent LoRA rank172
KV cacheRecursion-wise, one slot per effective layer/pass
Model typeBase causal language model

Architecture

cRia-LM-75M uses 13 unique Transformer layers arranged as:

1 prelude + (11 shared layers x 2 recurrent passes) + 1 coda

This gives an effective depth of 24 Transformer layers while storing the main parameters for only 13 unique layers.

The 11-layer recurrent block is shared across both passes. On the second pass, the recurrent linear projections receive rank-172 LoRA updates. The two traversals therefore share the base weights while retaining pass-specific capacity.

Each Transformer layer uses:

  • hidden size 576

  • 9 query heads and 3 KV heads with grouped-query attention

  • head dimension 64

  • SwiGLU feed-forward network with intermediate size 1,536

  • RMSNorm

  • rotary position embeddings

  • QK-Norm

    src="https://hfviewer.com/api/card.svg?source=sz14%2FcRia-LM-75M&granularity=auto&v=20260516-title-pills-card" alt="Architecture graph for sz14/cRia-LM-75M. Open in hfviewer" width="100%" />

Factorized Tied Embedding

The input embedding and language-model readout are tied through a rank-210 factorization:

49,152 x 210
210 x 576

The same factors are used for token lookup and output projection. This keeps the full 49,152-token vocabulary while reducing the parameter cost of the embedding and output head.

Training

Stage 1 — Base pretraining

Stage 1 trained the model for 10B tokens at a sequence length of 2,048. The objective combined next-token cross-entropy with logit-level knowledge distillation from HuggingFaceTB/SmolLM2-360M, with dynamic CE/KD scale balancing.

The Stage 1 sampling mix was:

Data sourceSampling weight
FineWeb-Edu48%
DCLM-Edu32%
Cosmopedia-v212%
FineMath-4+5%
StarCoder Python3%

Stage 1 used Muon for matrix parameters and AdamW for the remaining parameter groups. The learning-rate schedule was warmup-stable-decay: 1% warmup, decay beginning at 80% of the run, and the final 20% used for decay.

Stage 2 — Capability mid-training

Stage 2 used a 2B-token training budget at 2,048-token context. The released Stage 2 checkpoint is step 10,000, or 1,310,720,000 tokens at 131,072 tokens per optimizer step.

The phase used two-teacher distillation: same-tokenizer KL from HuggingFaceTB/SmolLM2-360M and cross-tokenizer supervision from Qwen/Qwen3.5-0.8B-Base using X-Token. The run used the H-KL cross-tokenizer objective after the tokenizer-coverage audit, with dynamic CE/KD balancing retained around the combined distillation loss.

Phase 2A mix

Phase 2A is the capability-injection mix. It remains active through 65% of the planned Stage 2 run. The original configuration assigned 8% to Nemotron QA, but that source was unavailable when the run started. The loader dropped it and renormalized the remaining weights; the table below shows the effective mix that was actually sampled.

Data sourceEffective sampling weight
FineWeb-Edu19.57%
DCLM-Edu13.04%
Cosmopedia-v210.87%
Cosmopedia Stories8.70%
Cosmopedia WikiHow7.61%
Cosmopedia Science9.78%
Wikipedia10.87%
FineMath5.43%
Nemotron Math3.26%
InfiWebMath3.26%
StarCoder Python4.35%
FineWeb-HQ3.26%
Phase 2B mix

Phase 2B is the cooldown mix. It removes the noisier sources and shifts more weight toward higher-quality web, educational, encyclopedic, science, and math data.

Data sourceSampling weight
FineWeb-HQ18%
Cosmopedia-v214%
Cosmopedia Science14%
Wikipedia14%
FineMath12%
Cosmopedia WikiHow8%
Cosmopedia Stories8%
DCLM-Edu8%
StarCoder Python4%
Stage 2 WSD schedule

Stage 1 had already completed a full decay, so Stage 2 re-warmed to a lower peak rather than returning to the original Stage 1 learning rate.

SettingValue
Stage 2 token bud

From the published model card. Full card on the HuggingFace links in the sidebar.

Using it via the API

Call it like any OpenAI endpoint

Once AxForge deploys cria-lm for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (cria-lm below is illustrative; you get the exact model name on deployment.)

$ curl -sS https://api.axforge.ai/v1/chat/completions \
  -H "Authorization: Bearer $AXFORGE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"cria-lm","messages":[{"role":"user","content":"Hello"}]}'

Create an account — your API key is available in the console. 3M free tokens every 30 days with every new account.

© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms