Banglish Companion: Now It Knows How You Feel

You:  aj mood bhalo na
v2:   mama mood bhalo feel kor! Jodi sad hole — ekhon karo
      kichu kore khujho. Tui ki feel korte chao? Sometimes
      just expressing emotion e kichu korba feel kore.
v3:   mama mood shob change hoy! Tui ki feel korchish?

 

Same weights. New senses.

Three small classifiers — emotion, attachment, response mode — wired underneath v2 as a perception layer. An engineering intuition borrowed from biology: perception can be small, fast, and always-on. The model didn't get bigger. It got attentive. Read the full argument →

Small is not a compromise. Small is the design.

 

Try It

pip install transformers torch
import sys
from huggingface_hub import snapshot_download
from transformers import AutoModelForCausalLM, AutoTokenizer

repo = snapshot_download("sifat-febo/banglish-companion")
sys.path.insert(0, repo)

from ontor.perceive import perceive, build_system_prompt, format_chatml_prompt

tok = AutoTokenizer.from_pretrained(repo)
model = AutoModelForCausalLM.from_pretrained(repo)

def listen(text):
    prompt = format_chatml_prompt(text, build_system_prompt(perceive(text)))
    inputs = tok(prompt, return_tensors="pt")
    out = model.generate(**inputs, max_new_tokens=128, do_sample=True, temperature=0.7)
    return tok.decode(out[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True)

print(listen("aj mood bhalo na"))

Your laptop. Your CPU. Nothing leaves the device.

 

Picked by the Author, Not Numbers

All three formats (F16, Q8, Q4) cleared BanglishBench v2.1 — inside the bench's noise, a tie. So we ran the same prompts through all three, side-by-side, and picked by hand.

Q8 is the recommended format. Tighter responses, better listening behavior. F16 tends to advice-dump. Q4 is functional but occasionally inconsistent. Q8 hits the sweet spot — enough compression to tighten without Q4's occasional incoherence.

 

Banglish e Model Card

ei model ta ki? — ekta Banglish chatbot. ekhon shune, bujhe.

ki pare? adda, khela, gaan, khabar. emotional support. safe.

ki parbe na? English/Bengali script na. choto model — sometimes bhul. doctor/lawyer na.

 

Specs

Model SmolLM2-1.7B fine-tune + ~0.5M parameter perception
Perception bujhi · aabeg · bhalobasha — why →
Runtime CPU. No GPU.
Format GGUF Size BanglishBench v2.1 Note
Q8_0 1.82 GB 96.8% Recommended
Q4_K_M 1.06 GB 97.2% Smallest
F16 3.42 GB 95.7% Full precision

Limitations: Banglish only. May hallucinate. Not a professional advisor. Safety is best-effort (~97-100% on BanglishBench v2.1; 2-3% edge cases involve borderline deflections).

 


Component Status
Model weights — 1.7B base + perception layers Open
BanglishBench v2.1 (evaluation benchmark) Open
Inference pipeline (ontor/perceive.py) Open
Training data, pipeline, hyperparameters Closed

 

AI Disclosure

Built by Claude Code (Anthropic) under the author's direction and review. Every decision — architecture, data, what to publish, what to reject — made by the author.

License

Apache 2.0

@misc{banglishcompanion2026,
  author = {Sifat Febo},
  title = {Banglish Companion: Now It Knows How You Feel},
  year = {2026},
  url = {https://huggingface.co/sifat-febo/banglish-companion}
}
Downloads last month
1,345
Safetensors
Model size
2B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for sifat-febo/banglish-companion

Finetuned
(53)
this model

Dataset used to train sifat-febo/banglish-companion

Evaluation results

  • BanglishBench v2.1 Quality Floor on BanglishBench
    self-reported
    96.800