Show HN: Duplicate 3 layers in a 24B LLM, logical deduction .22→.76. No training
TL;DR Highlight
Running 3 specific Transformer layers twice in the forward pass — without any weight changes or training — boosted BBH logical reasoning scores from 0.22 to 0.76. A notable empirical validation of the 'reasoning circuit' concept.
Who Should Read
ML engineers and researchers wanting to improve LLM reasoning without retraining costs, or developers interested in mechanistic interpretability of model internals.
Core Mechanics
- Reproduced David Ng's RYS (Repeat Your Steps) technique with additional experiments. The core idea: a 'reasoning circuit' of 3-4 consecutive layer blocks exists inside Transformer models, and passing through this block twice in the forward pass improves reasoning without any weight changes or retraining.
- Duplicating layers 12-14 in Devstral-Small-2-24B (same weights, two passes) boosted BBH (Big Bench Hard) logical deduction scores from 0.22 to 0.76. Achieved purely by routing hidden states through the same layer circuit twice.
- Qwen2.5-32B also showed 17% reasoning improvement when duplicating specific 3 layers. But not all layers work — 'which layers to duplicate' is the key, and a sweep tool is provided to find them.
- Trade-offs exist. In Devstral-24B experiments, mathematical and causal reasoning improved but instruction following and code generation degraded. The pattern is 'thinks deeper but follows instructions less precisely.'
- Experiments ran on 2 consumer AMD GPUs (RX 7900 XT + RX 6950 XT) overnight, with rigorous evaluation on Vast.ai H200 instances. Shows this kind of experimentation is accessible without special infrastructure.
- The released toolkit includes reasoning_probe.py, sweep.py, gguf_surgery.py, etc. — automating the search for reasoning circuit layers and direct surgery on GGUF model files.
- This technique likely works thanks to Transformer residual connections, which provide stability against partial network damage, allowing models to maintain functionality even when specific layers are repeated or removed.
Evidence
- Some commenters offered an alternative explanation: 'performance didn't improve — rather, mechanisms that inhibit reasoning (introduced during RLHF post-training) got disrupted.' The theory is that duplicated layers are close to identity functions and handle refusal circuits or reasoning-degradation mechanisms from post-training, which get disrupted when duplicated.
- One commenter shared hands-on 'neuroanatomy' experiments with Qwen2.5/Qwen3: removing certain layers had no effect, removing late layers caused infinite generation (couldn't find EOS token), and removing early layers produced random output. They also noted abliteration experiments (suppressing refusal behavior by finding refusal vectors) were possible with just 10 examples.
- Solar 10.7B (released ~2 years ago) was mentioned as using 'Depth Up-Scaling' (repeating layers then additional training) to achieve strong size-relative performance. Conceptually connected to this experiment, though that approach required training. Paper link: arxiv.org/abs/2312.15166.
- The question 'does repeating N times make it even better?' was raised. Ideas included looping until convergence, or a MoE-variant where a router dynamically decides layer pass patterns like '13→13→14→14→15→15→16'. Training with loops from the start so circuits naturally separate was also proposed.
- Research on layer removal maintaining benchmark scores (pruning) was mentioned, suggesting many layers in trained models may actually be redundant — which connects to why duplicating specific layers still works.
How to Apply
- If you're running open-source LLMs (Qwen, Devstral, etc.) and want to boost mathematical or logical reasoning quality without retraining budget, use the repo's sweep.py to find reasoning circuit layers and gguf_surgery.py to modify GGUF models for quick A/B testing.
- For tasks where deep reasoning matters more than instruction following (math problem solving, logic puzzles, etc.), use this technique to derive a reasoning-specialized model variant from an existing model without any fine-tuning.
- If you want to explore model internals (mechanistic interpretability), the repo's reasoning_probe.py, eq_probe.py, comprehensive_probe.py, etc. let you investigate what specific layers do — and you can run these experiments overnight on consumer AMD or NVIDIA GPUs.
Terminology
Related Papers
Claude Code sends 33k tokens before reading the prompt; OpenCode sends 7k
동일한 모델과 작업 환경에서 Claude Code와 OpenCode의 실제 토큰 사용량을 API 레벨에서 측정한 결과, Claude Code가 시스템 프롬프트 오버헤드만으로 OpenCode 대비 4.7배 더 많은 토큰을 소비한다는 것을 확인했다.
Mesh LLM: distributed AI computing on iroh
사무실, 집, 클라우드에 흩어진 GPU들을 하나의 OpenAI 호환 API로 묶어주는 분산 LLM 실행 시스템으로, 비싼 API 비용 없이 큰 모델을 직접 운영할 수 있다.
Show HN: Frugon – Find which LLM calls a cheaper model could handle (local, MIT)
내 LLM API 비용이 어디서 새는지 로컬에서 분석해주는 오픈소스 CLI 도구로, 비싼 모델 대신 저렴한 모델로 전환 가능한 호출을 골라낸다.
Jamesob's guide to running SOTA LLMs locally
2천 달러짜리 RTX 3090 한 장부터 4만 달러짜리 RTX PRO 6000 4장 셋업까지, 로컬에서 최신 LLM을 직접 돌리는 방법을 하드웨어 선택·구성·실행 설정까지 통째로 정리한 실전 가이드다.
Faster embeddings: how we rebuilt the ONNX path in Manticore
Manticore Search가 기존 SentenceTransformers/Candle 백엔드를 ONNX Runtime으로 교체해 텍스트 임베딩 생성 속도를 평균 14배 향상시켰다. 별도 모델 서비스 없이 DB 내부에서 직접 임베딩을 처리하는 구조에서 INSERT 속도가 곧 임베딩 속도이기 때문에 이 개선은 실질적인 ingest 처리량 향상으로 직결된다.
Asymmetric Quantization: Near-Lossless Retrieval with 97% Storage Reduction
멀티벡터 검색 모델의 문서 벡터를 1비트 이진값으로 압축하고 쿼리 벡터만 int8로 유지하는 비대칭 양자화 기법으로, 스토리지를 97% 줄이면서 검색 품질 손실을 0.61점(NDCG@10 기준)에 그치게 만든 실제 프로덕션 적용 사례다.