Lumma-Fev-0.1B-v2

Lumma-Fev-0.1B-v2 is a decision model. You give it a state (text) and typed questions; it returns a probability for every option in one forward pass. It never generates text, so there is nothing to parse. It is a full-weight fine-tune of Nandi-Mini-150M, our 150M-parameter English + Indic model, and the smallest of the v2 family (4B, 27B).

We used DecisionFormer for training our model.

How it differs from the 4B and 27B v2 models:

  • Small and fast. 150M parameters: runs on a CPU or any small GPU.
  • Causal attention, a text-only input and a 2,048-token context.
  • Built for simple routing. It matches or beats Jev on single-label classification (topics, intents, emotions) but is near chance on tasks that need reasoning or judgement (RAGTruth, WinoGrande, JudgeBench, BBH, Financial PhraseBank). Use the 4B or 27B for those.

Results (accuracy, same rows for every model)

Benchmark

Calibration (average over the eight benchmarks, lower is better):

Lumma-Fev-0.1B-v2 Lumma-Fev-4B-v2 Lumma-Fev-27B-v2 Jev
Log loss 0.715 0.401 0.307 1.315
ECE 0.085 0.045 0.024 0.088
Brier 0.431 0.237 0.178 0.291

Accuracy on our English / Hindi / Tamil / Kannada set (100 rows per language):

en hi ta kn
Lumma-Fev-0.1B-v2 0.68 0.67 0.59 0.64
Lumma-Fev-4B-v2 0.88 0.88 0.79 0.89
Lumma-Fev-27B-v2 0.92 0.89 0.87 0.87
Jev 0.77 0.82 0.77 0.80

Use it

Use the lumma-fev package, version 0.4 or later (older versions cannot load this model). It runs on a CPU or any GPU; the weights are about 300 MB.

pip install "lumma-fev>=0.4"
import lumma_fev

model = lumma_fev.load("FrontiersMind/Lumma-fev-0.1B-v2")       # or lumma_fev.load("0.1b-v2")

answers = model.decide(
    state="My integration keeps failing. Please help.",
    questions={
        "team": {
            "type": "choice",
            "instructions": "Which team should handle this request?",
            "criteria": {
                "billing": "Charges and refunds",
                "support": "Technical integration errors",
                "sales": "Questions about buying a product",
            },
        },
        "urgent": {"type": "noul", "instructions": "Does the customer need a reply today?"},
    },
)
print(answers["team"])
# {"type": "choice", "choice": "support", "confidence": ..., "probabilities": {"billing": ..., "support": ..., "sales": ...}}

state can be text, a JSON object or an array. Each question reads the state and its own options only, so one answer never changes another. The model is text-only (no images). A question plus the state must fit in 2,048 tokens. The model was trained on noul and choice questions; score questions are accepted but untested.

To serve it behind the TypeSafe-compatible POST /v1/systemone API:

pip install "lumma-fev[serve]"
lumma-fev-serve --model 0.1b-v2 --host 0.0.0.0 --port 8000

If you load the weights yourself: the backbone uses custom code (trust_remote_code=True, files shipped in this repo), attention is causal, the prompt is plain text ending in Answer:, and the readout scores the space-prefixed option codes (" A", " B", ...) listed in decision_config.json, divided by its temperature.

Downloads last month
66
Safetensors
Model size
0.2B params
Tensor type
BF16
ยท
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for FrontiersMind/Lumma-fev-0.1B-v2

Finetuned
(6)
this model

Collection including FrontiersMind/Lumma-fev-0.1B-v2

Article mentioning FrontiersMind/Lumma-fev-0.1B-v2