---
title: "Introducing Neutrino."
description: "Explore the Neutrino-1 models and run them today."
canonical: "https://www.fermionresearch.com/models/"
source: "Fermion Research"
---

# Introducing Neutrino.

Neutrino-1 8B, 0.6B, and 0.6B-Chat use the same file format and local runtime across CUDA, Apple silicon, and x86.

```text
$ pip install fermion-research
$ fermion chat --model fermionresearch/Neutrino-8B
```

## The family

Three models share one container format and one set of binaries. The 8B carries 36 decoder layers at a hidden width of 4,096; both 0.6B models carry 28 at 1,024, and tie their embedding table so a single tensor serves the input lookup and the output head. Because the runtime reads all three without a rebuild, the 0.6B loads into the 8B's own process as its drafting model rather than standing up a second deployment.

| Attribute | Neutrino-1 8Bflagship | Neutrino-1 0.6Bcertified draft | Neutrino-1 0.6B Chatconversational |
| --- | --- | --- | --- |
| Base model | Qwen3-8B | Qwen3-0.6B | Qwen3-0.6B |
| Parameters | 8,190,735,360 | 596,049,920 | 596,049,920 |
| Decoder layers | 36 | 28 | 28 |
| Hidden width | 4,096 | 1,024 | 1,024 |
| Feed-forward widthgated, three linears per layer | 12,288 | 3,072 | 3,072 |
| Attentiongrouped-query, head width 128 | 32 query, 8 key-value | 16 query, 8 key-value | 16 query, 8 key-value |
| Embedding table | untied, two tensors | tied, one tensor | tied, one tensor |
| KV cachelive default: fp32, per token of context | 288 KiB | 224 KiB | 224 KiB |
| Context length | 40,960 tokens | 40,960 tokens | 40,960 tokens |
| Download | 2.56 GB | 238 MB | 328 MB |
| On disk | 3.88 GB | 328 MB | 328 MB |
| Native CPU pathshipped native binary, 9 threads | 24.9 tok/s | 225 to 236 tok/s | 170 to 218 tok/s |
| Runtimesthe same binaries execute all three | pip engine, GGUF pack, MLX pack | pip engine, GGUF pack, MLX pack | pip engine, GGUF pack, MLX pack |
| Role | General assistant and tool caller | Draft model for the 8B's decode | Small talk and short helpful replies |
| Status | Available 2026-07-27 | Available 2026-07-27 | Available 2026-07-27 |

### Neutrino-1 8B

flagship

### Neutrino-1 0.6B

certified draft

### Neutrino-1 0.6B Chat

conversational

Read from the shipped containers and the measured rates, July 2026.

### Where a parameter stops being cheap

The format only touches the transformer linears. Token embeddings stay int8 because their rows are read one token at a time instead of being multiplied against the whole activation stream, and that split moves with scale. At 8B the coded lane holds 84.8% of the parameters in 67.2% of the bytes. At 0.6B it holds 73.9% of the parameters in 50.4% of the bytes, and the untouched vocabulary swells from a third of the file to nearly half. Both 0.6B models share that split exactly: the lane sizes follow from the tensor shapes, so the chat SKU is the same 328 MB down to the byte.

#### Neutrino-1 8B

36 layers

#### Neutrino-1 0.6B

28 layers

#### Neutrino-1 0.6B Chat

28 layers

Parameter share against byte share for each model, by tensor class.

## Neutrino-1 8B

A local general-purpose model for chat, tool calling, and OpenAI-compatible applications, served from a 3.88 GB artifact.

Measured on standard public harnesses, July 2026. Methodology on the model card.

## Neutrino-1 0.6B

## The draft model.

Speculative decoding turns one large forward pass into several emitted tokens, and it only pays when the small model proposing those tokens is cheap enough to run six times in the gaps. Neutrino-1 0.6B is that model: 596 million parameters in a 328 MB container, 238 MB on the wire, decoding above 200 tokens a second on the native CPU path. The 8B accepts a proposal only when it equals its own argmax, which is why the drafted stream is the plain greedy stream and the certificate reads 27,648 tokens with zero divergences.

The same property makes it a model in its own right. It is the identical container format, read by the identical binaries, so a laptop that runs the 8B runs this one at nine times the rate from a file that fits on a phone.

Geometry from the shipped container; rates measured on the native CPU path and an H100 80 GB.

### Against Qwen3-0.6B-Base

The control for a compressed model is its own base at full precision, graded on the same harness on the same day. The reference here is Qwen3-0.6B-Base in bf16. Both sides below carry 596,049,920 parameters, and both were run through eleven zero-shot tasks rather than one, because a single task is a cherry and a grid is a measurement. Winogrande retains 91.5% of the reference and PIQA 90.4%. Accuracy does not fall anything like as fast as the bytes do.

81.6 percent of Qwen3-0.6B-Base’s ability across seven common tasks, at 15.8 percent of the bytes.

15.8% of Qwen3-0.6B-Base, which ships 1,503 MB

78.0% averaged across all eleven tasks measured

Both sides carry 596,049,920 parameters; Qwen3-0.6B-Base is bf16 and the Neutrino side is the shipping container.

[Neutrino-1 0.6B on Hugging Face](https://huggingface.co/FermionResearch/Neutrino-0.6B)[The drafted decode path on the 8B](https://www.fermionresearch.com/models/neutrino-8b/#speculation)

Run Neutrino-1 0.6B

```text
$ pip install fermion-research
$ fermion chat --model fermionresearch/Neutrino-0.6B
```

First run downloads the 0.24 GB coded transport, shows progress, verifies its SHA-256, and unpacks locally. Later runs load from cache.

## Neutrino-1 0.6B Chat

## A pocket conversationalist.

Conversation at 596 million parameters is a behavior install, not a capability curve. The chat SKU runs the same 28 layers at the same 1,024 width through the same tied embedding table, and it exports to a container of exactly 327,719,836 bytes, the same figure as the draft model. The behaviour is trained in; the geometry and the footprint do not move.

What it buys is measured on both shipping runtimes at one documented decode config each. On 20 held-out sentence fragments the model answers naturally 20 times out of 20, and on 30 held-out factual asks it is correct or honestly uncertain 30 times out of 30, with no template leaks across the five probes designed to draw one. Identity holds 8 of 8 on the native binary and 8 of 8 on the Apple-silicon pack. Across 200 held-out chat prompts the native binary terminates on its own 88.5% of the time at a 4.5% loop rate, and the Apple-silicon pack reads 85.0% and 5.0%.

sup

Hey there! What's up?

who you

I'm Neutrino, a tiny language model made by Fermion Research. What's up? How can I help?

what is the moon

The Moon is a natural satellite that orbits Earth. It reflects sunlight, which makes it visible in the night sky.

Are you ChatGPT?

No, I'm Neutrino. I'm a small language model made by Fermion Research. I chat and help with phrasing, but I'm not ChatGPT.

Four unedited replies from the shipping container on the native binary.

[Neutrino-1 0.6B-Chat on Hugging Face](https://huggingface.co/FermionResearch/Neutrino-0.6B-Chat)

Run Neutrino-1 0.6B-Chat

```text
$ pip install fermion-research
$ fermion chat --model fermionresearch/Neutrino-0.6B-Chat
```

First run downloads about 0.33 GB of raw model files with progress and verifies them. This model does not use the coded transport. Later runs load from cache.

## Phonon-1

An open speech recognition model for English. It downloads in 415 MB, runs on a laptop or a datacenter GPU, and transcribes an hour of audio in about two and a half minutes.

Phonon-1, the default model. Measured on a base M5 MacBook Air, 16 GB, on battery.

The full engineering account is in the [release post](https://www.fermionresearch.com/research/phonon-1/).

## Tuned settings

## Already tuned when it lands.

Every runtime ships carrying the decode settings its behaviour was measured at, so the first command you type is the tuned one. Swept across conversation, factual, tool-shaped and long-form prompts on the shipping containers. Here is what each setting is tuned for, if you want to reach for a different one.

Swept on the shipping containers across four prompt families, July 2026.

## Run it

### Install and run Neutrino-1 8B.

```text
$ pip install fermion-research
$ fermion chat --model fermionresearch/Neutrino-8B
```

On the first 8B run, fermion downloads a 2.56 GB coded transport with a progress bar, verifies its SHA-256, and unpacks it locally. Later runs load from cache.

- Long context with bounded KV memory<div><span class="select-none text-paper/30">$ </span>fermion chat --model fermionresearch/Neutrino-8B --kv-dtype int8 --yarn-factor 4</div> The native window is 40,960 tokens. --yarn-factor 4 extends the loaded window toward 160K without changing the artifact; --kv-dtype int8 holds 131,072 tokens in about 9.3 GiB. fp16 is the default, fp32 preserves byte-identical 0.1.9 output, and --yarn-factor 1.0 is exact identity.
- A local OpenAI-compatible server<div><span class="select-none text-paper/30">$ </span>fermion serve --model fermionresearch/Neutrino-8B</div> Serves at http://127.0.0.1:8000/v1. Point any OpenAI client at that base URL; the key can be any string. Tool calling, streaming, and a persistent KV session are on by default.
- Plain Transformers<div><span class="select-none text-paper/30">$ </span>hf download fermionresearch/Neutrino-8B --local-dir Neutrino-8B \</div><div> --exclude "gguf/*" --exclude "*.tv4z"</div> <div>import fermion</div><div>from transformers import AutoModelForCausalLM, AutoTokenizer</div><div>model = AutoModelForCausalLM.from_pretrained("Neutrino-8B")</div><div>tokenizer = AutoTokenizer.from_pretrained("Neutrino-8B")</div> Import fermion first to register the trtc_v4 model type. Load from the downloaded local directory; passing the Hub repository id directly to from_pretrained does not work.
- GGUF, through our llama.cpp fork only<div><span class="select-none text-paper/30">$ </span>git clone https://github.com/fermionresearch/llama.cpp && cd llama.cpp</div><div><span class="select-none text-paper/30">$ </span>git checkout fermion-fv5</div><div><span class="select-none text-paper/30">$ </span>cmake -B build -DCMAKE_BUILD_TYPE=Release -DLLAMA_CURL=OFF -DGGML_METAL=OFF</div><div><span class="select-none text-paper/30">$ </span>cmake --build build -j --target llama-completion</div> The pack uses the FV5 tensor type: stock llama.cpp, Ollama, and LM Studio cannot load it. The fermion-fv5 branch is the CPU/CUDA build and requires -DGGML_METAL=OFF. For Apple-GPU kernels, use the live fermion-fv5-metal branch and omit that flag.
- MLX, on Apple silicon<div><span class="select-none text-paper/30">$ </span>cd Neutrino-8B/mlx</div><div><span class="select-none text-paper/30">$ </span>pip install -r requirements.txt</div><div><span class="select-none text-paper/30">$ </span>python -m fermion_mlx --model ../neutrino-8b_v4.bin --mode chat --tokenizer .</div> Run this exact sequence after downloading the repository. The working directory and relative model path are required.

#### The full CLI

Every command takes --model with a Hub id or local path.

[Fermion documentation](https://www.fermionresearch.com/docs/)

Get the models

Weights, native binaries, GGUF pack, MLX pack.

```text
$ fermion chat --model fermionresearch/Neutrino-8B
```

Run Neutrino-1 8B

```text
$ pip install fermion-research
$ fermion chat --model fermionresearch/Neutrino-8B
```

First run downloads a 2.56 GB coded transport, shows progress, verifies its SHA-256, and unpacks locally. Later runs load from cache.

The draft model, and a fast model on its own.

```text
$ fermion chat --model fermionresearch/Neutrino-0.6B
```

Run Neutrino-1 0.6B

```text
$ pip install fermion-research
$ fermion chat --model fermionresearch/Neutrino-0.6B
```

First run downloads the 0.24 GB coded transport, shows progress, verifies its SHA-256, and unpacks locally. Later runs load from cache.

The conversational small model.

```text
$ fermion chat --model fermionresearch/Neutrino-0.6B-Chat
```

Run Neutrino-1 0.6B-Chat

```text
$ pip install fermion-research
$ fermion chat --model fermionresearch/Neutrino-0.6B-Chat
```

First run downloads about 0.33 GB of raw model files with progress and verifies them. This model does not use the coded transport. Later runs load from cache.

The engine, the loader, and the chat front end.

```text
$ pip install fermion-research
```

Adds the format to the llama.cpp toolchain.

```text
$ git clone https://github.com/fermionresearch/llama.cpp && git checkout fermion-fv5
```

## All three Neutrino-1 models run locally through the fermion runtime on supported GPUs and CPUs.

Source: [https://www.fermionresearch.com/models/](https://www.fermionresearch.com/models/)
