Magnus Lundstedt PRO
AI & ML interests
Recent Activity
Organizations
google/gemma-4-E2B-it-qat-q4_0-unquantized
Thanks, that's right, I wanted reports recoverable without an account or storing any identity, so a bearer-style hash over the find was the natural fit. Glad it read that way.
Agreed on surfacing parsed architecture + quant metadata beside the tensor view, that's the direction I want to take it, and it's most valuable in the comparison mode where cross-format discrepancies bite. Right now clicking a tensor gives you the sampled distribution plus dtype/bits/group-size; adding the full parsed quant metadata (format, block layout, scale placement) next to it is what turns a diff from "these two numbers differ" into "here's why" π
Hardest edge case so far, I would say GGUF IQ-quants (IQ1_S / IQ2_XXS, etc), the codebook/lookup block structures are tricky to get right. Or NF4 with the nested/double quantization (quantized absmax). π
If you hit a format that you think renders wrong, the report button is right there. Those reports genuinely help, and I especially welcome the hard ones. π
Looking forward to a ternary GGUF for this version
Curious how models on Hugging Face spend their "bit budget"? A few days ago I shared the first version of a little tool I built out of my own curiosity (and for fun). Since then, thanks in large part to great feedback from people here, a lot has changed.
New in the last few days:
- GGUF support - handy with all the new great GGUF quants
- Decode for AWQ, GPTQ, NF4, mxfp4 packed experts, packed-int32, and additive-codebook formats
- Improved comparison view for diffing two quants of the same model
- Built-in anonymous report-issue button connecting a report to specific model
- plus many small fixes
After my first post I got great feedback from several community members, and some issues were fixed within hours. I'm planning an acknowledgments section on the site, and when you report an issue you get a receipt ID you can keep to claim credit later. (reports are anonymous by design; I store no identity, so the receipt hash works like a bearer token for your find)
It's still very much a side project I hope others find useful. Explore any HF model in the browser without downloading it, the webpage reads from the safetensors header via a range request, and only tensors you click stream, and large ones are sampled, not downloaded in full. And there is a report button right in the tool when things donβt look right.
Feedback very welcome, especially models that break it :) Or ideas on what is missing.
https://tensorlens.dev
(screenshot attached from viewing one of Unsloth's GGUF quants)
It fits a compact architecture in only 2.9M parameters achieving the highest parameter efficiency on BananaMind Base Bench against comparable models.
It achieves comparable performance to GPT S2 5M and GPT S 5M at almost half the size while beating CMA 1M Mini.
BananaMind 2 Micro achieved the #1 spot on the Open SLM Leaderboard for the sub 3M category (not added yet but it achieves #1)
For the training we used Muon + the XSA Refresh Gate with a 5e-2 lr for Muon and 4e-3 for the 1D weights.
Its score on our efficiency measure is 0.326 getting the first place with Syn 2.6M on the second place scoring 0.291 and GPT S 5M at 0.235*
Check it out at BananaMind/BananaMind-2-Micro and follow us at:
@vovaRL
@DedeProGames
@Banaxi-Tech
Our new releases aren't stopping π August 13-14 BananaMind 2 Pro
I wish I have the time and skill to make it like n8n-style and look more professional. Right now there are only 5 nodes to choose from and will as I need for my own workflow. But at least right now I can see if the graphs in my code are properly setup.
This could potentially be a enterprise-level product, I just don't have the time and skills to scale it to a bigger level.
I have just pushed this in my code yet. Not tested yet.
Probably need sometimes to polish it.
Github: https://github.com/OppaAI/Aiko-chan/
This release includes:
- π€ YOLOv8, YOLOv11, YOLOv26 and RF-DETR object detection models trained on GWHD (Global Wheat Head Dataset), spanning nano through x-large variants across both architecture families.
- πΎ Benchmarked on GWHD's dense, single-class wheat-head detection task β ~45 annotated heads per image on average, captured across multiple countries, genotypes, and growth stages, a genuinely hard small/dense-object setting.
- π Detailed model cards with mAP/precision/recall, per-class breakdowns, PR/F1 curves and confusion matrices (YOLO), qualitative detection showcases, and full training configurations for reproducibility.
Headline numbers:
- π Best mAP@50: 74.25% (YOLOv11x), 34.92% mAP@50:95, 83.37% precision.
- β‘ Best efficiency tradeoff: YOLOv26s hits 70.49% mAP@50 at just 22.8 GFLOPs (10.0M params) β within ~4 points of the top YOewer FLOPs (196.0 GFLOPs).
The goal is to make benchmarking and experimenting with agricultural computer vision easier by providing ready-to-use pretrained checkpoints, all trained and evaluated under one shared pipeline (DetectionBench: https://github.com/dronefreak/DetectionBench).
Full credit for the underlying dataset goes to Etienne David, Mario Serouart, Simon Madec, and the Global Wheat Head Detection 2020/2021) β this release is anunofficial, YOLO-ready reformatting of their work, not a new dataset.
If you're working on precision at detection, or just want areproducible detector benchmark, I hope these resources are useful.
π¦ Dataset:
dronefreak/GWHD
π€ Model Collection: dronefreak/gwhd-wheat-head-detection-model-zoo-6a7aea28b5431918cc46cec1
Feedback, bug reports, and contributions are always welcome.
Confirmed again, you are right that NF4 fails quietly, 2x wrong looks like int8 where 8x wrong looks broken. We verified your numbers, the 4.127, the exact 4.5000 without double quant, the 0.3729 bits it buys, all reproduce, and we've fixed the accounting now! Decoding NF4 values for plots comes later, its codebook belongs with a batch of similar formats we verify together.
Your grouping proposal is adopted: we now key groups off the module path and interpret per family, with anything uninterpreted staying visible as unexplained bytes, which means the next scheme like this should flag itself (we have two thresholds for highlighting unrecognized tensors for yellow and red warning at the bottom). Also taking your denominator point, the UI will state of-group and keep of-bare as a diagnostic. The double quant ordering result (codebook share tracks group granularity, not bit width) is going on the site with credit to you. Thanks for several real findings with measurements attached now. At some point we should have a proper acknowledgements page and you have earned a spot on it. π
Let us know if you find more challenging models! π
Yes, Tensorlens group qweight/qzeros/scale triples, but for these examples it grouped the two sidecars but left qweight out, reading 32 bits. So thanks for the challenging models! Turns out there were many problems to fix. π Now both Qwen/Qwen2.5-7B-Instruct-AWQ and TheBloke/TinyLlama-1.1B-Chat-v0.3-GPTQ work!
Now the map will calculate correct bpw value for the group, matching your numbers. I also added your idea on how much of budget is codebook rather than weights (3.8% and 4.1%) in the summary below the map.
A challenge with AWQ was the 4-bit weights stored in a declared I32 in the safetensors header (8 Γ 4-bit weights), in an unusual order (0,2,4,6,1,3,5,7) as opposed to the more natural assumption that position X is for column X. And with GPTQ it was the descending activation order rather than left to right, so every feature has to be looked up in g_idx to find its group and without that the weights decode subtly wrong.
Worth flagging, there might be similar models (and many others) that still decode wrong, so if you test some other model and numbers look off, thatβs another bug I am happy to hear about! π