Phenx
Research

Notes from the lab bench.

Deep dives on model internals, training experiments, and engineering discipline — the work behind the systems we ship. Written for practitioners.

Editorial title card asking why an LLM could not pick its best expert, with the phrase best expert underlined in coral.
Interpretability & inference·10 min read

Why Couldn’t an LLM Pick Its Best Expert?

A hindsight oracle found better expert choices. A trained judge could not use them, and a prospective observability test found no reliable live signal. The failure points to a cheaper test every controller should pass before scaling.

Read the article
A dual-axis chart across 2.7 billion training tokens. Validation perplexity, on a log axis, dives from 72.7 to 14.4. Two normalized mutual information lines, form and domain, run almost perfectly flat at 0.26 and 0.18.
Interpretability & inference·9 min read

I forced a Mixture of Experts to specialize by topic. It got worse.

The folk model says a Mixture of Experts holds a code expert and a medicine expert. Trained from scratch, the routing tells you more about whether a word is a comma than about what the document is about — and it froze in the first 2% of training. Three attempts to force topic routing all came out slightly worse.

Read the article
A horizontal bar chart of the six most selective experts across two MoE models, each labeled by what it collects: quotes and brackets, newlines, math symbols, code symbols, copula verbs, auxiliary verbs. Callout reads zero topic experts among the top.
Interpretability & inference·6 min read

What does a Mixture-of-Experts router actually read?

The folk model says MoE experts are specialists: a code expert, a geography expert. I aimed a Jacobian lens at the router on OLMoE and Qwen-MoE and read what actually flows into each expert. It sorts brackets, newlines, and verb tense, not topics.

Read the article
A 16 by 64 grid of expert slots. Layer 13 is executing, outlined in amber; the twelve layers above it are already lit from earlier in the same decode step.
Interpretability & inference·6 min read

The sparse model that lights up 93% of itself

OLMoE spends about 1B of its 7B parameters on any given token. I put CUDA events around every MoE layer on a 4090 and recorded which of its 1,024 expert slots really fire. At a batch of eight, 628 of them fire every step.

Read the article
Screenshot of the J-Scope tool: a prompt box, an ignition grid coloring layers and tokens where the concept Italy lights up on the token boot, and an injection bench with a next-token distribution.
AI Research·7 min read

Before a model answers, it thinks in concepts

The prompt never says Italy, but twelve layers into Qwen3.5-4B the model is already thinking it. J-Scope lets you watch that happen, inject France and get Paris, or drag one vector and watch the answer walk from euro to yen. Live tool and a 72-second tour inside.

Read the article
Isometric illustration: a filing drawer labeled MEMORY holds a dashed card reading Kevin: France, threaded into a stack of glass transformer layers; a violet workspace band broadcasts France and the answer Paris emerges on top.
AI Research·13 min read

I fed a model facts through its J-space instead of its prompt

I wrote a China vector into a model's residual stream and it answered "Beijing" to a question that never mentions China. Then the cache turned out to beat the vectors. Full experiments, raw data, and where each method breaks.

Read the article
A robotic hand holds a glowing scorecard up to a floating multi-agent plan of glowing nodes and edges, while a huge engine and GPU tower sit dark and idle in the background.
AI Research·9 min read

Can you tell a good AI agent plan from a bad one before you run it? I spent 6 million tokens finding out.

Can a cheap reward model tell a good AI agent plan from a bad one before you run it? I reproduced Orch-RM on a consumer RTX 4090 and RTX 3090: the verifier barely beats a coin flip on the signal that matters, yet still beats majority vote. Cheap to run, expensive to teach.

Read the article
A matte-black race car stalled at the start line, brakes locked and rear tires pouring white smoke, going nowhere, while a small glowing circuit-board bug crawls across the track ahead, never reached.
AI Research·7 min read

I Gave My Coding Agent Karpathy's Discipline Rules. It Got Too Careful to Fix the Bug.

I tested the viral Karpathy coding-discipline rules on 100 real SWE-bench bugs, three times. They didn't help: the agent fixed fewer of them, trading fixes for caution.

Read the article
A dark wall of tiles with a sparse few glowing blue and amber: sparse attention keeping a handful of blocks and ignoring the rest.
AI Research·11 min read

I bolted MiniMax's MSA sparse attention onto a 3B model on a single 4090

MSA sparse attention, retrofitted onto a 3B model on a single RTX 4090 with no training: the 28.4x compute cut holds, quality survives, plus caveats the paper skips.

Read the article
A cinematic casino table where AI word tokens are accepted or discarded, with a glowing GPU server behind the dealer
AI Research·8 min read

I ran DFlash on a MacBook. The 4x is a data-center number.

I tested DFlash speculative decoding on an M5 Max and RTX 4090. The 4x headline is real, but workload and concurrency decide whether you get a speedup or a slowdown.

Read the article
A worried cartoon robot surrounded by thought bubbles reading NO FIRE, NO FOOD, NOT, and NO
Reasoning & reliability·5 min read

Why AI Still Struggles with Negation and How We Can Fix It

LLMs flounder at one of the most basic cognitive tasks: understanding negation. Not because the task is too complex, but because their design wasn’t built for it — and in medicine, law, and finance, a misread “not” is dangerous.

Read the article

For client stories and business outcomes, read Insights →