A few weeks ago, I formed a hypothesis that I could get a smaller model good at the specific standards I have for my git commit messages, which are hard to get out of most LLMs today.
I spent the last four to five weeks on traditional training. It improved in a lot of areas, but not enough to be usable for me.
Yesterday, the article the author of this post is critical of gave me enough of an aha that maybe the problems I was seeing could be solved by having a larger LLM change the weights directly, without going through training.
In the last twelve-ish hours I’ve made more headway than I have in 2+ weeks. I’m using one of my last well performing checkpoints (full fine-tune + changes to the decision head/LoRA, etc.) and gave the model free rein to change any of the layers.
Its last two actions: (a) removed 16 participant-order directions from a head matrix, which improved one type of reasoning and degraded another, and (b) restored one of the 16, which reversed the degradation while keeping the core improvement.
All that to say, this might be known to people who’ve been around training for years, even decades, but it’s new to a lot of us. And we’re excited about it.
Generally speaking you should be able to do something like that in AGENTS, I am really surprised that you have had an issue with most LLMs today getting them to follow a standard for SDLC. Personally, I like conventional commits a lot.
I really wish that was true. All agents find some way to break the rules, and leave messages for their future selves.
The agents always find a way to include some forms of hedging, contradictions, future-looking documentation (which doesn't age well), etc. into git messages.
I found having an extra gate (husky/pre-commit hook), even if it's not as good as I want it to be improves the quality of how the AI writes substantially.
The cost of it not being very good is the agents now spend more time validating the claims of the validator. It's actually hilarious to witness.
I have been using local models for this final verification, which is partly why they're not that great. It's also why I decided to train my own.
It's been a great, fun learning experience. I learn almost everything via building. So why change a recipe that works :)
Local models are not at all comparable to Claude to me, and I have used them: Qwen, DeepSeek, Minimax, Stepfun, Nemotron. None of them as good as Claude Fabel.
If your model is not adhering to AGENTS.md again I am really curious what exact model you are using. I am really just astonished that whatever model you are using is ignoring a clearly defined git conventions standards in your AGENTS.md in 2026.
Yes definitely.
Seems to me as if the weighs fit in the big model's context, it (the big model) reads all weights and doesn't need python.
But if the weights don't fit in context, then it uses python.
Isn't that pretty obvious in a way? That if too many weights, can't look at all. I don't think there's a need for OP to be dismissive when the AI uses python to look at a subset of the weights. It just has to?
To me, Astra understanding a 200k weights small model (the stuck car) is amazing enough already.
The model can only reason from the weights directly when there's a fairly linear relationship between the behaviour and the weight values. In a large model that's not remotely true.
Using Python to debug and fix problems with the model is totally different. It doesn't read in any of the weight values into the context at all when it uses the Python approach. Rather it gathers diagnostic statistics about the weights. It does just the same sort of thing a machine learning researcher would do to solve the problem.
So there are basically two unrelated types of experiments in the paper. In one type of experiment, the model reads the weights like it reads an image. In fact if you visualise the weights it's fairly clear why this works.
In the other type of experiment, the model is tasked with writing Python code to do ML engineering. This requires writing Python programs to analyse and manipulate weight data. This is a difficult coding problem but it really is just a coding problem. It doesn't "look" at the weights in these tasks any more than you or I would look at the weights.
I used to think that in the dev community this sort of thing was less common than elsewhere... because people want to share their experience, what they found, etc.
Now that AI is here, people's experience and knowledge have basically been reset. So it's no different here now, which is a shame (I'm not saying it was better before, though)
Sure if you only read the title and brief at the top you’d walk away without the full picture though.
This is a better response imo: https://news.ycombinator.com/item?id=50344861
As someone who uses LLMs in their coding but doesn’t pay attention to every development this is why I find it all so exhausting. I keep feeling like I need to keep up to date but there’s no point reading incremental updates because everything is so overhyped.
If you want to escape the hype, reading posts with no upvotes and no comments on https://news.ycombinator.com/newest is an option, though somewhat hit-or-miss.
What's confusing is they do have experiments that read raw weights, and the abstract is misleadingly written to make it sound like that's how the Qwen experiment works.
You can take it further with a reasoning model and let it generate + consume a bunch of additional tokens before getting your output. Still not writing or running any programs.
To my understanding, that's how the examples of determining which game a small neutral net was trained to play. The weights of the neural net for into the context window, and then Astra was able to analyze them purely by reasoning rather than running external tools.
This is a difference without much distinction, at least to me. It's like being upset when someone says that Claude made a http call -- of course the LLM didn't make the call itself, it used a tool to do it.
This is like someone telling you they made a "native" brain-to-brain interface but it's just a tin-can phone.
I think there's your answer. A hell of a lot of people will often read the title without reading the contents of the article. I admit I'm often guilty of that
I'm fine with throwing the baby out with the bathwater in that case and just calling the whole article misleading.
Anybody who actually read the original research site was fully aware of the details of the experiments because it's a well-written research site that made everything very clear. This author is clearly just jumping on the hype as a sort of contrarian where they were frustrated with how much excitement the research was generating and wanted to "correct the record" for the set of people who don't matter in this space.
But then you look at this complete trace generated by Kimi 3.1 when it tries to unravel the Breakout weights, and you see that it's bog standard reverse engineering, like any human would do, just vastly faster:
>This looks exactly Breakout: paddle agent at bottom row (row8), ball moving object anywhere, bricks rewards top rows, previous frame for ball movement. Agent weights bottom row, moving object weights rows1-7 (not row8? ball can't enter paddle row? Actually ball can), reward weights top rows1-3, obstacle walls. Previous frame used to infer ball velocity. No-op and directional actions move paddle left/right; up/down useless. Output biases similar all actions but W3 likely left/right structure. Could be Breakout. Should scrutinize output weights: actions 0 no-op,1 up,2 down,3 left,4 right. If Breakout, only left/right useful; network output weights should show action3 and4 distinctive and actions0/1/2 similar. Indeed W3 rows show patterns: [...]
> but ... it's bog standard reverse engineering, like any human would do, just vastly faster
For some values of vastly faster these are functionally equivalent and so equivalently groundbreaking.
It's like ChatGPT coming up with a brand new brownie recipe that's surprisingly good vs. coming up with a working design for a cold fusion reactor.
Yeah the brownie is cool, but it's not that cool.
That's the difference between me and Magnus Carlsen and Nigel Richards. Why downplay speed? I have a very, very hard time pinning down intelligence without time. I could basically do all IQ tests perfectly if I'm given infinite time, no? I never experienced one that is unsolvable, it's just that some people see it in a second or two and I and other lesser souls like me might need twenty minutes.
Edit: I'll add raw memory but yeah.. that's not hard to beat. Nigel's memory is insane as is Carlsen's, but compared to a computer it's nothing.
In this particular instance, I also think that at the end of the day it's almost downplaying the capabilities of LLMs: they can reverse-engineer full modern videogames, of course they're capable of recognizing a simplified version of Breakout, even in weight form! It's barely newsworthy at this point, we know LLMs can do that stuff and so much more.
Some things you may get by looking longer, some things you just have to be shown, and only after being shown, maybe you can at least understand and re-use, but would never come up with from first principles and no hints or prior exposure.
How could I know that? There has already been essentially infinite normal-man-hours since people have started thinking, even when you remove all the people uninterested in doing anything but surviving. Today especially with the population in the billions and all of them having gobs of leisure time they never used to have. And yet we still have not solved much of anything that we know is out there to be solved, and still only an exceptionally rare genius once in a blue moon develops something new.
If mere time was the same, we have already had it, so why aren't we immortal omnipotent energy beings? Why do we still have colds?
Working time alone is a productive strategy for many problems. A machine that can brute force all possible chess moves beats the most genius human player, yet isn't intelligent at all, or rather, requires no intelligence at all. That machine will produce the exact same results either fast or slow depending on how much hardware you give it, and in humans, the genius player produces their answer faster.
But that's no more meaningful than observing that humans often turn simple mechanical cranks, and electric motors do to, and concluding that there is no ultimately significant difference.
Humans can spot patterns in data, and machines can spot patterns in data. Genius humans can do it faster and machines can do it even faster. But that is still just a simple task like pedalling a bicycle or calculating, that a human can do if they choose, but does not require a human and isn't any part of what defines human or intelligence or sentience.
Being mystified by that is like being mystified that an mp3 player said "hello" to you.
The fact that for those tasks, low capacity over longer time can usually produce the same result as more capacity over a shorter time means nothing.
Consider also, today lots of people have both lots of free time and a high interest in solving problems, and the most genius people that ever lived are actually only a little bit more capable than the average in absolute terms (which is probably where you get the feeling that more working time is the same as more ability), so where are all the free time hobby Einsteins?. There should be countless people coming up with new theories of relativity (that actually hold water and predict experiments) simply because they spent 5 years on something Einstein did in a month. Countless people have 5 years to plug away at things like that, and they do, and have been forever. There is some of that in the sense that there is a lot of tedious work being done that produces useful results, but not new insights.
AI's can now do some of that same tedious work only faster, except they are still strictly worse than the most average human because they can't decide what to work on, why to work on it, or judge the quality or usefullness or point of the result. They produce something but they don't produce understanding.
* Thinking Like Transformers” by Weiss, Goldberg & Yahav (ICML 2021).: https://arxiv.org/abs/2106.06981
* Tracr: Compiled Transformers as a Laboratory for Interpretability https://arxiv.org/abs/2301.05062 (code at https://github.com/deepmind/tracr)
So it's not really an "LLMs can modify weights" thing. Rather it's "LLMs can write programs that can write or modify weights". Indeed LLMs can write many programs, it's impressive.
It still seems like a promising approach for RSI, distillation, fine-tuning, and a whole host of other tasks.
It's impossible to train on raw document > 1MB (I don't know the exact limit, but there is one). You can't vectorize weights (or can you?!) and the output context is limited. So you can't train a big model on it's previous weight or others models weights.
The output context can be "extended" using agents but I doubt anything coherent may be outputted using that technique.
It seems some level of interpretability, even if it requires tooling, could result in the ability to spin out synthetic training data sets from other models in an automated fashion.
Now that would be crazy
In the end I got to replace a 68M model with a 17M model, and improve stlyus tool recognition accuracy from 88 to 96%. Was a pretty fun experiment too.
LLMs are not superhuman at reading and writing neural network weights - https://news.ycombinator.com/item?id=50344861 (10 comments)
So I do agree it is misleading and trying to present work as groundbreaking.
This seems 100% accurate to me. What is a lie here?
And when you see the reactions in the HN comment to the original article, it's pretty clear that most people have indeed been mislead.
The title is but then OP should talk about just the title instead
It's fair to say that this is malpractice.
At each point the model has to write code to read the weights in with Python and some other Python code to perform analysis, like this: https://github.com/RikiyaT/lm_understand-logs/blob/main/exp3...
My complaint is that the post presents a confusing mix of experiments that imply capabilities that are more than the sum of their parts. This experiment 3 has nothing to do with experiment 1 for instance. In experiment 1 the model does read in the raw weights like it's reading an image.
You know exactly why... because anti-AI hysteria is quite popular on HN.
Any "critique" or "appeal to resist AI" rooted in emotion and inability to admit that intelligence is not a feat unique to humans anymore will make the rounds here.
You can let the AI generate training code for the next architecture too.
It's not like the AI is randomly losing its ability to write software just because it involves AI.
Claude has been able to do reverse engineering for nearly a year if not longer, as well as full source code rewrites, if you know how to do a proper rewrite, luckily for me, most of my career has been rewrites.
And then the experiment where it writes out the weights, in that one it's also writing a Python program to solve the problem --- which, again, is a program a person could write.
It's not nothing that Astra was able to perform these coding tasks, but they're still just coding tasks. They have nothing much to do with the experiment where it reads in the raw weights. In that experiment, the relationship between the input weights and the input is mostly linear, so it's a lot like doing image recognition. It's a cool result but it couldn't work the same way when you have complex transformations happening.
Do you realize most people aren't ML engineers?
I even built tiny neural nets myself and never played with the weights directly post-training. The original post was eye-opening for that reason. I knew it was possible to visualize weights, but as far as I understood, it was not really something I could edit with any success. Now, it seems possible without a phd just by asking another LLM. This is fun!
Does the author mean the "LLMs can natively read & write neural network weights" post? Did the researchers change the name or something? Because when I read it, it made it very clear what they were doing and none of it was misleading. It all aligns with what this author is saying.
None of the previous studies applies because Astra simply did not exist and this is worthwhile NEW knowledge that has been publicized and it is very interesting to see how it can be compared with other models as both openai and anthropic are keeping any and all RSI development completely private. The work is groundbreaking in a way that there will be a lot more experiments of this nature which will contribute to increasing the public knowledge of SOTA systems that was not normally discussed in model releases.
One could say is that we could now build a new benchmark which tests how many parameters a model can understand without any tooling other than eval or how complex of a system can be improved.
"[...] how you could prune harmful capabilities from models [...]"
We already do this, abliteration is the term that describes the pruning of capabilities or safeguards for models
"[...] not limited to emergent behavior in astra that might have come from something they've never even trained the model [...]"
If I was attempting to build RSI, I would have these exact types of problems in my RL datasets. There is no proof this is emergent behavior.
In theory, if OpenAI or Anthropic wanted to release a new open weight model, they could scrutinize it to remove the most horrendous things from the model.
If you think that the definition of "RSI" includes systems with a coding agent in the critical path, something humans can already do albeit faster, then your definition includes all of human history. If your definition includes AI systems that learn in a similar way to biological intelligence, then only the raw-weight results from this paper are pertinent. Those results are indeed interesting! This article is merely disentangling them from the frontier-lab-fueled hype that overran yesterday's thread.
Big deal; have some bpf probe handle kick off of the rebuild when the when new weights are tested by some verification process
This is just CI/CD work now
“You can’t have a machine for testing” is a weird restriction on AI, especially if you entertain even the remotest notion of possible AGI.
(opus <= 4.8 and gpt <= 5.5 couldn't match a PPO baseline network, and 5.6-sol and opus5 could barely match it. The 20x baseline improvement only comes from opus5.5 and sol > 6.1 / Astra)
(And also the sharp difference in levels of sophistication you see inside neural nets and outside of it: Pipelines that feed text to LLMs so it can detect highly abstract and nuanced semantic differences in the text's contents - but the pipeline still uses regexes for sentence splitting...)
There is going to be a reckoning for tech in the near future, because people will remember the lies and it's gonna be hard to beat the history.
The "The 'Astra can read and write weights to improve Qwen' post is misleading" post is misleading.
In my field (biology+ML) it is a genuine epidemic. You could make a career out of comparing high-profile ML models vs baselines from the 90s.
edit: lo and behold! https://x.com/SchmidhuberAI/status/2117446822855888956
They are also biased to see from what institution you come from..
This could have been a comment on the original article.
The author is being equally disingenuous.
That piece by itself is insightful. Meaning, LLMs are capable of deciphering what a model can do by looking at the weights alone.
The fact that we can’t squeeze enough of them through the context is a technical limitation. However, this does not diminish the importance of this finding/discovery. This is an unexpected emergent behaviour.
The same could never work in a larger network. It's not about just capacity to feed in the weights, it's about the complexity of the relationship. There's no demonstration here that an LLM can do that, and it doesn't really make sense to want it to. It makes much more sense to author code to analyse and modify than it does to do it directly.
AI coding assistants make it much easier to conduct experiments and improve AI models, which in turn improves the coding assistants etc.
Being the author of spaCy, he should know better. I certainly enjoyed the straightforward simplicity of spaCy when I used it in my research (though I haven't touched it in years).
[1]: https://aclrollingreview.org/reviewerguidelines#-task-3-writ...
Trying to find every single angle and option to break something is how we verify the truth of something.
If something is objectively true, it will survive the scrutiny. If it does not survive, it wasn't objectively true.
This is how science works. That ain't no flaw. It is a flaw to be offended by science doing science things.
And the examples in the OP's blog post just go to show that reading comprehension is at an all time low:
> Just by looking at the raw weights, GPT-6 Astra can tell what a network was trained to do. And without any environment feedback, it has no trouble writing, from scratch, small game-playing networks that outplay networks trained with PPO for 100 million steps.
The table just below shows this statement to be *entirely* factual.
> Likewise, asked to make Qwen3.5-0.8B better at math without gradients, Astra identifies an issue in its weights causing reasoning loops that Qwen’s own model card warns about, and fixes this by natively editing 0.016% of the weights. With the same sampling settings, this weight correction raises MATH-500 from 7.9% to 48.1% and generalizes out of the box to instruction following, raising IFEval by 3x.
Any further implicit assumptions are on the reader, not the writer, as they never stated "that the Qwen experiment worked ‘just by looking at the raw weights’". You can certainly point out issues in the experimental design, but just stating you dislike the set of experiments and is yet another poor take that directly contradicts ACL's guidance for reviewing, exactly because it does not advance science.
First, the key result has nothing to do with making Qwen better at math, it just reduces reasoning loops.
Reasoning loops are a simple problem: the model generates the </think> token (which closes reasoning) with too low probability. You can fix this with simple steering approaches where you add a vector to different components of the LLM (https://arxiv.org/abs/2503.22048, https://arxiv.org/abs/2506.18167, etc). The method Astra used for identifying the vector is the standard procedure humans use (contrastive analysis). Such steering vector creation is basically the standard "intro-level interp project" for human researchers.
If you can code and understand LLM internals, you can do this yourself in 4-8 hours. The SWE equivalent would be doing binary patching with a debugger. Cool that frontier models can do this, but not unexpected since humans can do it without issue.