Downloads · 30 days
814
100% of all-time downloads
PollardWeights/HumanBrain-Pollard-H01
HumanBrain-Pollard-H01 is a machine learning model from PollardWeights. Use it for the machine learning task on the model card, and read the license before you ship it in a product. It is set up for pollard-weights. The card lists the license as cc-by-4.0.
A human cortical connectome used as a language model's memory. 13,473 neurons reconstructed from electron microscopy of human temporal cortex, wired as an associative memory and attached to a frozen stock Qwen2.5-0.5B…
Downloads · 30 days
814
100% of all-time downloads
All-time downloads
814
Public
Repo size
1.3 GB
Likes
8
Public
Click a slice to open those files.
.gguf1.2 GB · 92%
From the Hugging Face model README
A human cortical connectome used as a language model's memory. 13,473 neurons reconstructed from electron microscopy of human temporal cortex, wired as an associative memory and attached to a frozen stock Qwen2.5-0.5B-Instruct.
Same design as FlyBrain-Pollard-CNSv1, same trainer, same recipe -- a different graph. That is the point: the method does not care whose connectome it is.
A six-letter string is stated once, buried under filler, and asked about far beyond the attention window. The model never sees more than 128 tokens at a time. Words are generated fresh every sample.
| FLOOR -- no brain, fact outside the window | 0.0% |
| RECALL -- with the brain | 100.0% |
| CONTROL -- a word the document never contained | 0.0% |
| CONTROL -- brain read a different document | 0.0% |
| live state, at any document length | 17.7 MB |
64 samples through pollard-brainverify. Cold start reached 100% at step 44 and held it flat.
| cells | synapses | state | 100% at | |
|---|---|---|---|---|
| Fly MaleCNS v1.0 (pruned core) | 8,552 | 300,880 | 11.2 MB | step 26 |
| H01 human cortex | 13,473 | 114,227 | 17.7 MB | step 44 |
The human graph has 1.6x the cells and far fewer synapses per cell -- 1.51 synapses per connected pair, because H01 is a 1 mm3 block and most of a cortical neuron's connections leave the volume. It converges a little slower and lands in the same place.
What this does NOT show. It does not show the human wiring is better, or that the connectome is doing the cognitive work. A degree-preserving shuffle of the fly graph -- same neurons, same degrees, same weights, 99.94% of edges rewired -- reaches 100% at the same step. These graphs supply topology and sparsity at a scale that works; the associative memory does the rest. Anyone claiming a connectome is required here should run the shuffle first.
From H01 (Shapson-Coe et al., Science 2024), CC-BY, via pollard-connectome --human. Two decisions
separate biology from detector artifacts, and both are in the tool:
Glia are excluded. H01's soma table covers ~57k cells and most are glia. Unfiltered, the largest single edge class is astrocyte->pyramidal at 52,177 edges, ahead of pyramidal->pyramidal at 38,713. Astrocytes do not synapse onto pyramidal cells; their processes wrap real synapses and the detector reports the wrapper. A graph whose commonest connection is biologically impossible is not a connectome.
Signs come from Dale's law, not the detector's own excitatory/inhibitory call -- which agreed with Dale on 57.5% of these edges, barely above a coin flip. Pyramidal and spiny cells excitatory, interneurons inhibitory: 9,940 / 3,533, so 26.2% inhibitory.
Only ~0.3% of H01's ~166M synapses join two cells whose soma is inside the volume; the rest land on
neurites cut at the boundary. pollard-connectome streams all 166 shards and keeps that 0.3%.
This repo ships the brain and the backbone it attaches to, quantized by Pollard. The .pt is the
memory; the .gguf is the model. You need both.
| rung | size | what the allocator actually did | KL at that width |
|---|---|---|---|
| Q6_K | 506 MB | 24L @ q6_K | 0.0123 |
| IQ4_XS | 369 MB | 1L @ q5_K, 23L @ iq4_xs | 0.2058 |
| IQ3_S | 338 MB | 22L @ iq3_s, 2L @ iq2_s | 2.4001 |
None of these is a flat preset. Pollard measures each layer's sensitivity against the model's own calibration data and spends bits where they change the output, which is why IQ4_XS keeps one layer at 5 bits and IQ3_S drops two to 2 bits.
Read the KL column as a warning, not a score. It is the divergence from f16 when the WHOLE model is cast to that width -- the measured noise curve, which is what the allocator plans against. A mixed build does better than its own headline number, because the layers that would have cost the most were not cast that low. What the column tells you is where the cliff is: this model is fine at 4-bit and falls apart below 3, and 2-bit is unusable at KL ~14.
That cliff is model-specific and worth knowing: Qwen2.5-0.5B degrades far faster than larger models. The Qwen2-VL-2B in the sibling repo measures KL 0.61 at 3-bit where this one measures 2.40. Small models have less redundancy to spend.
Recommended: Q6_K unless you are tight on memory. IQ4_XS is the value pick. Take IQ3_S only if 338 MB versus 369 MB genuinely matters to you -- it is a real quality step down on a model this size.
pip install 'pollard-weights[flybrain]'
from pollard_flybrain import FlyBrain, load_backbone
from transformers import AutoTokenizer
M = "Qwen/Qwen2.5-0.5B-Instruct"
tok = AutoTokenizer.from_pretrained(M)
model = load_backbone(M, device="cuda")
brain = FlyBrain.load("HumanBrain-Pollard-H01.pt").bind(model, tok)
brain.feed(open("long_document.txt").read())
print(brain.recall(" Question: what is the secret word? Answer: The secret word is"))
The prompt is part of the experiment. A token is filed under the words immediately before it, so
a query must reproduce that context. Ask "what is the secret word?" alone and a brain measuring 100%
measures 46%. Verify with pollard-brainverify, which carries the correct construction.
bind() refuses a
mismatch. Train your own with pollard-flybrain --train.pollard-connectome --human. Lanes: pollard-brainlanes.Cite Shapson-Coe et al., A petavoxel fragment of human cerebral cortex reconstructed at nanoscale resolution, Science 384 (2024).