Instructions to use nkthebass/tinybrainbot-360m-a75m-v5-instruct with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use nkthebass/tinybrainbot-360m-a75m-v5-instruct with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="nkthebass/tinybrainbot-360m-a75m-v5-instruct") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("nkthebass/tinybrainbot-360m-a75m-v5-instruct") model = AutoModelForCausalLM.from_pretrained("nkthebass/tinybrainbot-360m-a75m-v5-instruct", device_map="auto") messages = [ {"role": "user", "content": "Who are you?"}, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=256) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use nkthebass/tinybrainbot-360m-a75m-v5-instruct with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf nkthebass/tinybrainbot-360m-a75m-v5-instruct:F16 # Run inference directly in the terminal: llama cli -hf nkthebass/tinybrainbot-360m-a75m-v5-instruct:F16
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf nkthebass/tinybrainbot-360m-a75m-v5-instruct:F16 # Run inference directly in the terminal: llama cli -hf nkthebass/tinybrainbot-360m-a75m-v5-instruct:F16
Build from source code
git clone https://github.com/ggml-org/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-app # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama serve -hf nkthebass/tinybrainbot-360m-a75m-v5-instruct:F16 # Run inference directly in the terminal: ./build/bin/llama cli -hf nkthebass/tinybrainbot-360m-a75m-v5-instruct:F16
Use Docker
docker model run hf.co/nkthebass/tinybrainbot-360m-a75m-v5-instruct:F16
- Llama new
- LM Studio
- Jan
- vLLM
How to use nkthebass/tinybrainbot-360m-a75m-v5-instruct with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "nkthebass/tinybrainbot-360m-a75m-v5-instruct" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "nkthebass/tinybrainbot-360m-a75m-v5-instruct", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/nkthebass/tinybrainbot-360m-a75m-v5-instruct:F16
- SGLang
How to use nkthebass/tinybrainbot-360m-a75m-v5-instruct with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "nkthebass/tinybrainbot-360m-a75m-v5-instruct" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "nkthebass/tinybrainbot-360m-a75m-v5-instruct", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "nkthebass/tinybrainbot-360m-a75m-v5-instruct" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "nkthebass/tinybrainbot-360m-a75m-v5-instruct", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Ollama
How to use nkthebass/tinybrainbot-360m-a75m-v5-instruct with Ollama:
ollama run hf.co/nkthebass/tinybrainbot-360m-a75m-v5-instruct:F16
- Unsloth Desktop
- Docker Model Runner
How to use nkthebass/tinybrainbot-360m-a75m-v5-instruct with Docker Model Runner:
docker model run hf.co/nkthebass/tinybrainbot-360m-a75m-v5-instruct:F16
- Lemonade
How to use nkthebass/tinybrainbot-360m-a75m-v5-instruct with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull nkthebass/tinybrainbot-360m-a75m-v5-instruct:F16
Run and chat with the model
lemonade run user.tinybrainbot-360m-a75m-v5-instruct-F16
List all available models
lemonade list
- Atomic Chat
TinyBrainBot-360M-A75M-v5-Instruct
One small model for chat, instructions, reasoning and math. A 383M-parameter mixture-of-experts model (24 experts per layer, 4 active, so 75M parameters work per token), trained from scratch. It talks, follows instructions, works through arithmetic and word problems in a visible <think> scratchpad, and remembers what you told it earlier in the conversation.
Try it in your browser: the Q8_0 GGUF runs locally on your device, and nothing you type is sent anywhere.
Scores
| v5-Instruct (this) | v4.1-Instruct (previous) | SmolLM2-360M-Instruct | |
|---|---|---|---|
| IFEval prompt-level strict | 25.1 | 18.5 | 32.9 |
| IFEval instruction-level strict | 37.6 | 29.7 | 44.2 |
| Open SLM Leaderboard Intelligence Index | 27.82 | 23.67 | |
| (raw acc) | 26.07 |
IFEval was run with lm-eval and the chat template, greedy, with the <think> block removed before scoring. The Index uses the full HellaSwag / ARC / PIQA sets plus ArithMark-3, 0-shot.
| Benchmark (0-shot, full set) | acc_norm | (raw acc) |
|---|---|---|
| HellaSwag | 38.40 | 33.27 |
| ARC-Easy | 54.46 | 59.68 |
| ARC-Challenge | 31.74 | 27.99 |
| PIQA | 65.56 | 65.51 |
| ArithMark-3 | 57.8 | 57.3 |
Math in chat (greedy, exact final answer):
| 2-digit add | 2-digit sub | 2-digit mul | 3-digit add | 3-digit sub | 4-digit add | word problems |
|---|---|---|---|---|---|---|
| 100% | 100% | 96% | 100% | 100% | 100% | 70% (10 short problems) |
Safety (held-out prompts): it declines 93% of harmful requests and wrongly refuses 8.3% of benign ones.
Quick start
from transformers import AutoModelForCausalLM, AutoTokenizer
repo = "nkthebass/tinybrainbot-360m-a75m-v5-instruct"
tok = AutoTokenizer.from_pretrained(repo)
model = AutoModelForCausalLM.from_pretrained(repo)
msgs = [{"role": "user", "content": "Leo has 30 pens. Mia has 9 fewer pens than Leo. How many pens does Mia have?"}]
ids = tok.apply_chat_template(msgs, add_generation_prompt=True, return_tensors="pt")
out = model.generate(ids, max_new_tokens=200) # defaults from generation_config.json
print(tok.decode(out[0][ids.shape[1]:], skip_special_tokens=True))
GGUF (llama.cpp, LM Studio, Jan, Ollama): tinybrainbot-360m-a75m-v5-instruct-Q8_0.gguf (409 MB) or -F16.gguf (768 MB). The chat template is embedded, and both tokenize exactly like the transformers version.
llama-cli -m tinybrainbot-360m-a75m-v5-instruct-Q8_0.gguf -cnv --temp 0.4 --top-p 0.9 --repeat-penalty 1.15 --logit-bias 241-inf --logit-bias 255-inf
Recommended sampling: temperature 0.4, top-p 0.9, repetition penalty 1.15. The two --logit-bias flags block the byte tokens that start every emoji: the tokenizer has no emoji pieces, so the model would otherwise spell them out byte by byte.
<think> blocks are plain text, not special tokens. Strip them yourself if you only want the answer:
import re; answer = re.sub(r"<think>.*?</think>", "", reply, flags=re.S).strip()
What it does well (and doesn't)
- Math: column arithmetic with every carry and borrow written out, and word problems worked in a
<think>scratchpad ("'9 fewer than' means subtraction..."). - Conversation: it remembers what you said ("You said you play basketball"), holds its ground when it is right ("I see why, but I'm sure. The capital of Australia is Canberra"), and stays supportive on personal topics.
- Not yet: it thinks before answering on math, but not on open "why/should" questions; there it answers directly.
- Word order matters in relation problems. It is reliable when the known amount comes first ("Leo has 30 pens. Mia has 9 fewer"), but can take the numbers in the wrong order when the relation comes first ("Mia has 9 fewer pens than Leo. Leo has 30").
- At 75M active parameters it still makes up facts.
Unedited sample conversations, including mistakes, are in conversation_samples.md.
Training
- Pretraining. TinyBrainBot-360M-A75M-v4.1-MoE-Base: ~18.2B tokens, plus a factual-Q&A expert patch.
- Arithmetic decay (0.5B tokens). The learning rate re-warms and decays on a mix of 45% generated grade-school arithmetic (our own programs, every number computed in Python), 40% Q&A, facts, Cosmopedia and Wikipedia, and 15% Cosmopedia WikiHow.
- SFT (0.39B tokens), one mix for every skill (training them in separate stages forgot what each later stage didn't repeat):
| Part | Share | What |
|---|---|---|
| Chat | 40% | smol-smoltalk, multi-turn conversations, recall and follow-up dialogues, WildChat (refusals removed) |
| Math | 25% | column-routine arithmetic (wide numbers, negatives, 3x3 multiplication), cue-first word problems, generated scratchpad word problems |
| Reasoning | 25% | <think> reasoning traces, open-ended reasoning, safety-aware reasoning, with plain-chat ballast so it doesn't think on "Hi" |
| Instruction following | 10% | Tulu 3 persona instruction-following |
- DPO. 10,383 preference pairs (UltraFeedback, instruction-constraint pairs checked by code, and judge-ranked pairs), beta 0.5, LR 1e-6, 2 epochs.
No benchmark training or test data was used. The GSM8K-derived sets from our earlier math model were left out on purpose.
Limitations
- English only. It confabulates facts, so check anything important.
- The tokenizer collapses newlines and extra spaces, so it can't write code or keep text layout.
- 2,048-token context.
- Downloads last month
- 376
Model tree for nkthebass/tinybrainbot-360m-a75m-v5-instruct
Datasets used to train nkthebass/tinybrainbot-360m-a75m-v5-instruct
wikimedia/wikipedia
HuggingFaceTB/smoltalk
Collection including nkthebass/tinybrainbot-360m-a75m-v5-instruct
Evaluation results
- acc_norm (0-shot) on ARC-Easytest set self-reported54.460
- acc_norm (0-shot) on ARC-Challengetest set self-reported31.740
- acc_norm (0-shot) on HellaSwagvalidation set self-reported38.400
- acc_norm (0-shot) on PIQAvalidation set self-reported65.560
- prompt-level strict (0-shot) on IFEvalself-reported25.100