Lumma-Fev-27B-v2

Lumma-Fev-27B-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 works in English, Hindi, Tamil and Kannada (and Hinglish). It is a full-weight fine-tune of Qwen3.8-27B and the successor of Lumma-Fev-27B.

We used DecisionFormer for training our model.

What changed from Lumma-Fev-27B:

  • Bidirectional attention. The full-attention layers read the whole prompt in both directions, like an encoder; the Gated DeltaNet (linear-attention) layers stay causal.
  • About 300K training samples instead of about 100K:

Results (accuracy, same rows for every model)

Benchmark

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

Lumma-Fev-27B-v2 Lumma-Fev-27B Jev
Log loss 0.307 0.350 1.315
ECE 0.024 0.028 0.088
Brier 0.178 0.206 0.291

Lumma-Fev-27B-v2 was trained on the train splits of AG News, BANKING77, Emotion, RAGTruth and WinoGrande, so those five are in-distribution for it. Financial PhraseBank, JudgeBench and BBH are not in its training data.

Use it

Use the lumma-fev package, version 0.3 or later: this checkpoint needs bidirectional attention, which older versions do not apply (they refuse to load it). You need a GPU with about 55 GB free (an 80 GB card), or several smaller GPUs with device_map="auto".

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

model = lumma_fev.load("FrontiersMind/Lumma-fev-27B-v2")       # or lumma_fev.load("27b-v2")
# model = lumma_fev.load("27b-v2", device_map="auto")          # several GPUs: pip install "lumma-fev[large]"

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": 0.99..., "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. Images: pass images=[...] (paths, PIL images or data: URLs) after pip install "lumma-fev[images]". A question plus the state must fit in 8,192 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 27b-v2 --host 0.0.0.0 --port 8000       # add --device-map auto for several GPUs

If you load the weights yourself: decision_config.json has "attention_mode": "noncausal_full_attention". Set config.is_causal = False on the text config and is_causal = False on every text attention module after loading; setting only the config makes single unpadded requests run causally.

For speed, also install the flash-linear-attention and causal-conv1d kernels; without them transformers uses slower PyTorch code.

Downloads last month
94
Safetensors
Model size
26B 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-27B-v2

Base model

Qwen/Qwen3.8-27B
Finetuned
(809)
this model
Quantizations
1 model

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

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