Model reference · open weights
Lumma is an open-weight language model from FrontiersMind. 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 by | FrontiersMind |
|---|---|
| Type | Language models |
| Task | Text gen |
| Parameters (lead) | 649M |
| Context | 12k tokens |
| Runs with | transformers |
| Released | 2026-07-06 |
| Popularity | 885 downloads / month |
| Licence | Open weights |
About
600M Parameters • 1 Trillion Training Tokens • 12,288 Context Length • Shared KV
The model is trained on English and a diverse set of Indic languages, including:
English, Hindi, Bengali, Tamil, Telugu, Marathi, Gujarati, Kannada, Malayalam, Punjabi, Odia
Lumma-0.6B-Base is a multilingual decoder-only language model trained from scratch on 1 trillion tokens. It is designed for efficient deployment, long-context inference, and strong multilingual performance across English and Indic languages, featuring a compact transformer architecture, memory-efficient attention mechanisms, and an optimized multilingual tokenizer.
[!NOTE] We do not recommend using base language models for conversations. Instead, you can apply post-training, e.g., SFT, RLHF, continued pretraining, etc., on this model.
Lumma introduces Shared KV, an alternative key-value caching strategy designed to reduce inference memory requirements without significantly impacting model quality.
Instead of computing independent Key and Value projections, both are derived from a shared latent representation. During attention computation, lightweight Key normalization and RoPE transformations are applied dynamically.
This approach reduces KV-cache memory usage by approximately 50%, making Lumma better suited for long-context inference and memory-constrained deployments.
Lumma supports two inference modes depending on deployment requirements.
model.config.kv_cache_mode = "shared"
Recommended when memory is the primary bottleneck.
model.config.kv_cache_mode = "vanilla"
Recommended for standard deployments.
The following results correspond to the released Lumma-0.6B model trained on 1 trillion tokens.
Efficient tokenization is particularly important for multilingual language models.
Lower fertility indicates fewer tokens are required to represent text, improving both training efficiency and inference cost.
| Language | SmolLM3-3B | Qwen3-0.6B | Sarvam-1 | Lumma-0.6B |
|---|---|---|---|---|
| English | 1.17 | 1.16 | 1.32 | 1.18 |
| Bengali | 8.66 | 7.51 | 1.55 | 1.44 |
| Gujarati | 10.47 | 9.37 | 1.55 | 1.53 |
| Hindi | 2.71 | 5.14 | 1.25 | 1.32 |
| Kannada | 16.43 | 12.96 | 2.10 | 1.90 |
| Malayalam | 17.77 | 14.56 | 2.49 | 2.05 |
| Marathi | 3.73 | 6.70 | 1.55 | 1.55 |
| Odia | 19.07 | 15.75 | 2.18 | 2.68 |
| Punjabi | 9.23 | 8.66 | 1.47 | 1.42 |
| Tamil | 13.56 | 10.93 | 2.06 | 2.05 |
| Telugu | 15.40 | 13.38 | 2.09 | 1.77 |
| Assamese | 9.26 | 8.13 | 4.31 | 1.51 |
!pip install transformers=='5.4.0'
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
model_name = "FrontiersMind/Lumma-0.6B-Base"
tokenizer = AutoTokenizer.from_pretrained(
model_name,
trust_remote_code=True
)
model = AutoModelForCausalLM.from_pretrained(
model_name,
trust_remote_code=True,
dtype=torch.bfloat16
).eval()
# Memory-efficient mode
model.config.kv_cache_mode = "shared"
# Standard mode
# model.config.kv_cache_mode = "vanilla"
prompt = "The world is a strange place"
inputs = tokenizer(
prompt,
return_tensors="pt"
).to(model.device)
outputs = model.generate(
**inputs,
max_new_tokens=50,
do_sample=True,
temperature=0.3,
top_p=0.95,
top_k=20,
repetition_penalty=1.1,
)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
@misc{lumma2026,
title={Lumma-0.6B},
author={FrontiersMind},
year={2026},
url={https://huggingface.co/FrontiersMind/Lumma-0.6B}
}
From the published model card. Full card on the HuggingFace links in the sidebar.
Using it via the API
Once AxForge deploys lumma for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (lumma 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":"lumma","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.