Nirnoy নির্ণয়

Live demo on Hugging Face

Decisions for Bangla and Banglish, in one pass.

বাংলার জন্য তৈরি System 1 মডেল

Ask Nirnoy any set of questions about a message. It answers every one with a calibrated probability, in about a tenth of a second, without generating text.

Compatible with the System One API

116 ms
8 questions, one pass
p50 on one L4, Nirnoy-flash
0.012
Calibration error
ECE on the test split, Nirnoy 12B
9 of 9
Categories won
against Jev, Clef and Clef-flash
1.2%
Answer flips
when options are reordered

How it works

Text and questions in. Probabilities out.

Questions can be yes/no, multiple choice or a 1–5 score. Pick an example.

Message

ডেলিভারি লেট হইছে, but product ta valo. refund chai na.

Nirnoy · one forward pass

Sentimentmixed 0.62
Asks for a refund?no 0.93
Intentcomplaint 0.81

Message

আমার একাউন্ট থেকে টাকা কেটে গেছে কিন্তু রিচার্জ হয়নি। এখনই দেখেন প্লিজ।

Nirnoy · one forward pass

Queuebilling 0.91
Needs a human?yes 0.77
Urgency (1–5)4 0.58

Message

tor moto faltu lok ar dekhi nai, chup thak

Nirnoy · one forward pass

Abusive?yes 0.88
Hate speech?no 0.71
Targetindividual 0.84

Message

Bangladesh 2nd test e 7 wicket e jitlo, Mushfiq er century 🔥

Nirnoy · one forward pass

Topicsports 0.97
Sentimentpositive 0.89
ScriptBanglish 0.95

Example outputs for illustration. Try your own text in the live demo on Hugging Face →

Any input

Text in any script, a record or a whole chat.

Send Bangla, Banglish or English, a JSON record or a list of chat turns, with one question or many. These are Nirnoy-flash's real answers. More examples →

Input · text

Nirnoy-flash · 1 question, one request

What is the overall sentiment of this review?mixed 97%

Real output · 53 ms on an L4

Why Nirnoy

Small, fast and honest about what it knows.

One pass, every question

All questions about a text are scored together in a single forward pass. Eight questions take about as long as one.

Probabilities you can trust

Calibrated with a fitted temperature, so a 0.9 means right about nine times in ten. Set thresholds and route on them.

Trained for Bangla decisions

Nirnoy starts from Google's Gemma 4 and is trained on how people really write Bangla and Banglish. On 10,000 synthetic decision scenarios it scores at least 9 points above the untrained Gemma 4 of the same size.

Traceable training data

Every training label records whether a person, a teacher model or a rule produced it, so any source can be audited or removed.

Results

First on 6 of 6 everyday tasks.

Macro-F1 (%) on 11,063 human-labelled questions, every answer option shown. Nirnoy comes in two sizes: Nirnoy-flash, small and fast, and Nirnoy 12B, the most accurate on harder tasks.

Assistant commands: intent
Pick the right one of 60 intents · 1,500 commands

Data: MASSIVE (Bengali) (CC BY 4.0)

Nirnoy-flash
85.6 ★
Nirnoy 12B
82.8
Jev
76.6
Clef
79.8
Clef-flash
79.5
Assistant commands: scenario
Pick the right one of 18 areas · 1,500 commands

Data: MASSIVE (Bengali) (CC BY 4.0)

Nirnoy-flash
92.3 ★
Nirnoy 12B
90.8
Jev
84.3
Clef
86.9
Clef-flash
88.5
Hate speech in Bangla and Banglish
Is a comment hateful? · 3,966 comments

Data: BanHate (MIT) and BanTH (MIT)

Nirnoy-flash
84.1 ★
Nirnoy 12B
82.5
Jev
70.2
Clef
61.6
Clef-flash
58.1
Code-mixed sentiment
Banglish comments, including mixed feelings · 2,024 comments

Data: BnSentMix (MIT)

Nirnoy-flash
76.2
Nirnoy 12B
77.1 ★
Jev
63.8
Clef
54.7
Clef-flash
51.5
News topic
Pick one of 7 topics (not in Nirnoy's training) · 204 headlines

Data: SIB-200 (Bengali) (CC BY-SA 4.0)

Nirnoy-flash
88.1
Nirnoy 12B
88.3 ★
Jev
88.1
Clef
84.3
Clef-flash
79.7
Emotion
Pick one of 6 emotions (not in Nirnoy's training) · 1,869 texts

Data: EmoNoBa (CC BY 4.0)

Nirnoy-flash
36.1
Nirnoy 12B
37.4 Tied for first: 37.4 is within 0.1 points of the best score, 37.5. The same hosted model, run again on another day, moves this much: Jev scored 37.4 on emotion on 6 October 2026 and 37.5 on emotion on 9 October 2026. So gaps this small count as a tie.
Jev
37.5 ★
Clef
34.1
Clef-flash
31.6

Nirnoy trained on other examples from the intent, scenario, hate and sentiment datasets; topic and emotion are new to it. By script, Nirnoy-flash scores 78.4 on Bangla and 76.4 on Banglish, against Jev's 72.6 and 61.0. The base Gemma 4 models were not run on this test with every option shown.

Benchmark

First in 9 of 9 categories against other decision models.

The everyday tasks above, scam detection on real messages and synthetic decision scenarios, against Jev, Clef, Clef-flash and the untrained Gemma 4 models Nirnoy is built on.

CategoryNirnoy-flashNirnoy 12BJevClefClef-flashGemma 12BGemma E4B
Everyday tasks
Assistant commands: intent85.6 ★82.876.679.879.5––
Assistant commands: scenario92.3 ★90.884.386.988.5––
Hate speech in Bangla and Banglish84.1 ★82.570.261.658.1––
Code-mixed sentiment76.277.1 ★63.854.751.5––
News topic88.188.3 ★88.184.379.7––
Emotion36.137.4 Tied for first: 37.4 is within 0.1 points of the best score, 37.5. The same hosted model, run again on another day, moves this much: Jev scored 37.4 on emotion on 6 October 2026 and 37.5 on emotion on 9 October 2026. So gaps this small count as a tie.37.5 ★34.131.6––
Scam detection
SMS scam detection82.890.1 ★88.485.383.888.683.1
Scam messages, private set86.887.3 ★–67.359.373.082.6
Decision scenarios, synthetic (accuracy)
Decision scenarios77.280.1 ★75.774.667.770.867.8

Macro-F1 (%); accuracy for the decision scenarios. ★ marks the best model in each row; scores within 0.1 points of the best count as a tie and share it, because the same hosted model moved that much between two runs (Jev scored 37.4 on emotion on 6 October 2026 and 37.5 on emotion on 9 October 2026). Every model saw the same text, question and answer options. Jev, Clef and Clef-flash answered through their public APIs (OpenRouter, October 2026), except on the private scam messages, which never leave our machines: there Clef and Clef-flash ran from their released weights on our GPUs and Jev was not run. The Gemma 4 rows are the untrained models Nirnoy is built on (not run on the everyday tasks with every option shown). Nirnoy never trained on the scam sets, and the decision scenarios have synthetic answers. Every category, with an example →

API · coming soon

One request per message.

The hosted API is not open yet. It speaks the System One wire format, so it will drop in behind any client that already uses it. Need it sooner? Ask for early access.

Request
curl https://[host]/v1/systemone \
  -H "Content-Type: application/json" \
  -d '{
    "state": "ডেলিভারি লেট হইছে, but product ta valo.",
    "questions": {
      "sentiment": {
        "type": "choice",
        "instructions": "Overall sentiment?",
        "criteria": ["positive", "negative", "mixed", "neutral"]
      },
      "refund": {
        "type": "noul",
        "instructions": "Does the customer ask for a refund?"
      }
    }
  }'
Response
{
  "model": "nirnoy-flash",
  "answers": {
    "sentiment": {
      "type": "choice",
      "choice": "mixed",
      "probabilities": {
        "positive": 0.21, "negative": 0.14,
        "mixed": 0.62, "neutral": 0.03
      }
    },
    "refund": { "type": "noul", "noul": false }
  },
  "usage": { "input_tokens": 212, "output_tokens": 0 }
}

Coming soon

The API is coming soon.

Today you can try Nirnoy-flash and Nirnoy in the live demo on Hugging Face. The hosted API is not open yet. If you need it for your product, tell us about it: where it suits both sides, we can give you early access.

Try it on Hugging Face

We use your details only to reply about API access. The form is delivered by Static Forms.