Base Released Apache-2.0

BananaMind-2-Nano

A 10M-parameter base model, the smallest released BananaMind 2.

BananaMind-2-Nano is a compact decoder-only causal language model trained from scratch on a 30B-token curriculum, with a 4,096-token context window and the same 8,192-token digit-aware tokenizer as BananaMind-2-Mini.

Parameters
9,968,128
Context length
4,096 tokens
Training tokens
30.0B completed

Specification

Architecture

Parameters
9,968,128
Architecture
BananaMind2Nano decoder-only Transformer
Layers
10
Hidden size
256
Intermediate size
768
Attention heads
4
KV heads
2
Head dimension
64
Attention style
Grouped-query attention with QK norm
MLP
SwiGLU
Position embeddings
RoPE, theta 100,000
Normalization
RMSNorm, epsilon 1e-6
Vocabulary size
8,192
Context length
4,096
Embeddings
Tied input/output
Weight format
safetensors
HF architecture
BananaMind2NanoForCausalLM

Evaluation

Benchmark results

Self-reported results
Benchmark Result
Average35.77
ARC Easy36.20
PIQA55.98
ARC Challenge23.38
HellaSwag27.50

Scores produced with lm_eval, all using acc_norm,none. The average is the mean of ARC Easy, PIQA, ARC Challenge, and HellaSwag.

Training

Tokenizer and training run

The same custom 8,192-token byte-level BPE tokenizer as BananaMind-2-Mini, with digit-aware pre-tokenization so numbers stay as separate digit tokens.

The 30B-token run used a progressive curriculum, starting web-heavy and gradually increasing synthetic textbook and mathematics data.

Tokens seen
29,999,726,592
Final optimizer step
55,485
Sequence length
4,096
Effective batch
132 sequences
Tokens per optimizer step
540,672
Optimizer
AdamW, betas 0.9 / 0.95
Peak learning rate
3e-3
LR schedule
Warmup-stable-decay with cosine decay

Getting started

Load BananaMind-2-Nano

This repository ships custom architecture files, so both the tokenizer and the model need trust_remote_code=True. This is a base model: give it a continuation-style prompt rather than an instruction.

Python
from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "BananaMind/BananaMind-2-Nano"

tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(model_id, trust_remote_code=True)
model.eval()

inputs = tokenizer("The capital of France is", return_tensors="pt")
output = model.generate(**inputs, max_new_tokens=40, do_sample=False)

print(tokenizer.decode(output[0], skip_special_tokens=True))

Instruction-tuned variant

BananaMind-2-Nano-Chat

The same 9,968,128-parameter architecture and 4,096-token context, instruction-tuned on SmolTalk. It scores 643 Elo overall on BananaMind Instruct Bench 1.1.

Instruct Bench and Base Bench are separate benchmarks with different tasks and scoring. Their Elo values are not directly comparable.

Licensing

License and use

BananaMind-2-Nano is released under Apache-2.0. Licenses differ between BananaMind models, so check the license on each Hugging Face repository before use. The model has not received dedicated safety alignment and can produce incorrect, biased, or otherwise undesirable text — do not rely on it for high-stakes decisions.