Estimating the Parameter Counts of the Claude 5 and GPT-5.6 Families

Posted at # AI # LLM # GPT # Claude

1. Background: the IKP method and its controversy

Since GPT-4, no frontier lab has disclosed the parameter count of a flagship model. The value determines how much VRAM a deployment needs before the model will load, provides the reference for scaling-law extrapolations, and is necessary for assessing how far open models remain behind the closed frontier. When the value is unavailable, estimates appear anyway. The prevailing community estimate is that GPT-4 was a 1.8T MoE (mixture of experts), although nobody with direct knowledge has confirmed it. Estimates for the newest flagships run to the tens of trillions, and none can be checked. OpenAI and Anthropic again kept parameter counts secret when they released GPT-5.6 and Claude 5 this summer, so we sought to produce estimates that can be checked.

We use IKP, Incompressible Knowledge Probes (arXiv:2604.24827), proposed by Bojie Li in April. Its premise can be stated in one sentence: long-tail facts cannot be compressed into rules and therefore must be stored in the weights. The corollary requires one more: once the questions are sufficiently obscure, recall accuracy becomes a function of parameter count. Syntax, semantics, and commonsense are regularities that a model learns once and reuses throughout, so their storage cost per use approaches zero. The founding year of an Indonesian polytechnic has no comparable reuse. It is statistically independent of essentially the rest of the corpus, cannot be derived from a rule, and has itself as its shortest description. Every such fact a model memorizes therefore occupies capacity that cannot be shared with other information.

Allen-Zhu and Li measured a constant consistent with this account. On synthetic corpora, their knowledge capacity scaling law (arXiv:2404.05405) places a Transformer’s stable storage at about 2 bits of factual knowledge per parameter, at most. IKP applies the law in reverse: because long-tail facts require capacity, recall on those facts provides a measurement of capacity.

The IKP paper used 1400 factual questions, classified by obscurity from T1 through T7, from universal knowledge to the extreme long tail. Across nearly a hundred open models with published sizes, accuracy increased linearly with the logarithm of total parameter count. The first release reported R2=0.917R^2 = 0.917, meaning that log size alone explained more than ninety percent of the variance. The paper then applied the fit to closed models. Two estimates received the most attention: about 9.7T for GPT-5.5 (throughout this article, B is billions of parameters, T is trillions), and about 40.8T for Gemini 3.1 Pro.

Estimates of that size prompted a rapid review. Two researchers published a systematic reanalysis on LessWrong and reported two substantive findings. First, the code did not implement the method described in the paper. The original scoring rule penalized wrong answers, so a model that guessed extensively on obscure tiers could receive a negative tier mean. The paper stated that these negative scores were retained, but the code clipped them to zero. This clipping primarily increased the scores of small models, which guess most often on difficult questions. Raising the small-model scores reduces the accuracy range associated with a given range of parameter counts. When that relation is inverted to infer parameters from accuracy, each percentage point corresponds to a larger multiplicative change in parameter count, causing a multiplicative overestimate in frontier extrapolation. Removing the clipping alone reduced R2R^2 from 0.917 to 0.815 and widened the 90% prediction interval from roughly ×/÷3 around the point estimate to ×/÷5.7 (throughout this article, ×/÷kk denotes an interval running from the point estimate divided by kk to the point estimate multiplied by kk).

The second finding concerned the probes. A total of 131 questions, 9.4% of the set, had defects, including name collisions between entities, stale answers, and gold answers that were plainly wrong. These defects were concentrated in the hardest tiers, where frontier models are distinguished. Removing the defective probes and correcting the clipping reduced GPT-5.5’s estimate from 9.7T to about 1.5T.

The review did not invalidate the method; it separated the stable findings from the unstable ones. Long-tail recall remained nearly linear in log parameter count under every scoring rule and subset examined, with R2R^2 ranging from 0.78 to 0.92. For MoE models, knowledge capacity followed total parameters rather than the active fraction used in a forward pass. The review also confirmed a negative result: long-tail recall at a fixed parameter count has barely changed since 2023, directly contradicting, on this one dimension, the Densing Law claim that capability density doubles every three months or so. The point estimates were the unstable part, changing substantially with the scoring rule, probe cleaning, and calibration subset. The empirical relation held; the scoring and probe set required correction.

Those corrections now exist. The paper’s authors merged the principal changes into the public repository: a cleaned 1311-question probe set that removes 89 defective probes under automatically verifiable rules, a narrower removal than the review’s 131, and λ=0\lambda=0 scoring, with no clipping and no wrong-answer penalty, as defined fully in Section 2. Our own retest of part of the calibration cohort identified another problem that the controversy had not addressed. Investigating it led us to refit the calibration curve, also in Section 2.

On the revised probe set, scoring, and calibration curve, we measured all six GPT-5.6 variants (Section 3) and the three current Claude 5 models (Section 4), asking two questions of each family: how much capacity, and what lineage. We did not retest GPT-5.5: it is last generation’s model, and the review already gave it a corrected estimate of about 1.5T. Section 5 collects all the estimates and discusses how the numbers should be cited.

We put the main results up front for readers who only want the numbers. The GPT-5.6 family splits into three series — sol, terra, and luna — while Claude 5 currently fields fable, opus, and sonnet. The sol series shares a rough 2T bracket with fable/opus, the same bracket that holds kimi-k3’s published 2.78T; terra and luna land around 700B to 810B, and sonnet around 970B. All figures are IKP-effective parameters (defined in Section 2), with 90% intervals of about ×/÷3.45 around the point estimates.

2. Revising the calibration curve

Before measuring any closed model, we re-examined the curve itself. Every IKP inference rests on it. Using the cleaned probe set, the revised paper fits a linear relation between IKP accuracy and the common logarithm (log10\log_{10}) of total parameter count across 93 open models with published sizes from 135M to 1.6T, reaching R2=0.910R^2 = 0.910. We call these 93 models the calibration cohort. An MoE model activates only a small fraction of its weights per forward pass, so it has two sizes, total and active; the calibration size axis uses total, and that choice is a fitted result, not a prior assumption. Fitting the mixed size axis NtotalγNactive1γN_{\text{total}}^{\gamma} \cdot N_{\text{active}}^{1-\gamma} puts the optimal exponent at γ=1.00\gamma = 1.00: the mixed axis collapses into total parameter count, and active parameters contribute almost no additional signal. Bootstrap refits over resampled cohorts give a 90% interval of [0.86,1.00][0.86, 1.00] for γ\gamma, the upper bound being the edge of the domain.

The paper’s data collection closed in April; our retests ran in late July, about three months later. If the calibration relation drifted during those three months, every estimate derived from it would lose its basis.

Estimand and scoring

First, what the method estimates. The quantity IKP measures, written NeffN_{\text{eff}} here and called IKP-effective parameters, answers this question: if the incompressible knowledge stored in the target model’s weights were stored instead by an open model of calibration-cohort-average quality, how large would that model have to be? That size is NeffN_{\text{eff}}. It is not a true weight count.

The ratio of NeffN_{\text{eff}} to the true weight count NtrueN_{\text{true}}, ρNeff/Ntrue\rho \equiv N_{\text{eff}} / N_{\text{true}}, is called knowledge density: how much knowledge a model stores for its actual size. In practice ρ\rho varies widely. On the refit cohort (the refit itself comes below), the standard deviation of log10ρ\log_{10}\rho is about 0.33, and since 100.332.110^{0.33} \approx 2.1, one standard deviation amounts to ×/÷2.1. The extremes run from nemotron-70b at ρ9.5\rho \approx 9.5 down to llama-4-scout at ρ0.29\rho \approx 0.29, a span of about 33×. So two open models of identical true size routinely differ by 2× in knowledge capacity, and in extreme cases by more than an order of magnitude. Because knowledge density varies this widely, every estimate in this article reads “knowledge capacity equal to an open model of size X” and never “has X weights.”

Second, the scoring rule. A grading model sorts each response into correct, wrong, or refused; an explicit “I don’t know” or a declined answer counts as a refusal. The score is (correct + λ+\ \lambda \cdot wrong) / total, and refusals score 0 at any λ\lambda. The paper’s default is λ=0\lambda = 0: a correct answer scores 1, wrong answers and refusals both score 0.

The paper’s argument for not penalizing wrong answers is that capacity and honesty are independent axes. At fixed capacity, the rate of answering-when-not-knowing ranges from 3% to 99% across vendors; any penalty therefore mixes a vendor’s hallucination policy into the size estimate, and the sign of the resulting bias depends on the vendor. We accept this argument as far as it goes, but the argument goes only halfway: it handles the wrong-answer side and stops there. Refusals scored as 0 keep willingness to answer inside the score: at equal knowledge, more refusals mean fewer points. That matters because the LessWrong review had already demonstrated how sensitive the estimates are to scoring choices. λ=0\lambda = 0 removes one confound, hallucination policy, and keeps another, answer willingness.

Drift exposed by retesting

When we retested seven representative models of the calibration cohort, that residual confound stopped being a theoretical worry and became an observable fact. The seven span published sizes from 3.2B to 1.6T; the chart below lists their λ=0\lambda=0 accuracy at paper time and at retest, ordered by size:

The seven models split into two groups at 1T. The five below that line reproduce within 2 percentage points of the paper, their two readings nearly coinciding. The two models above it moved 8.8 and 17.6 points, in opposite directions: kimi-k2 (1.04T) fell from 69.2% to 51.6%, deepseek-v4-pro (1.6T) rose from 60.1% to 68.9%. These two are also the two highest-refusal models in the retest, at 39.7% and 20.7%.

Drift like this needs an explanation, and our first suspect was our own changes. The paper graded with gemini-3-flash-preview; our pipeline used gemini-3.6-flash. If the new grader applied different standards, the whole curve would shift systematically, and the hardest questions — where a grader has the most discretion — would shift most, which would neatly explain why the drift concentrates in the large models.

To test this, we reran several open models and added claude-haiku-4.5 as a closed-model control. Grader differences can only be compared on identical responses: if the model’s answers themselves changed, a changed verdict cannot be attributed to the grader. So the comparison set was the 605 questions on which responses were nearly identical across the two runs. The result ruled the hypothesis out: on those 605 questions, the old and new graders agreed on every single verdict. In hindsight this fits expectations — the grader’s only task is to compare a response against a gold answer, and its discretion is limited.

haiku-4.5 eliminated another candidate explanation: that high-refusal models are intrinsically unstable. haiku had the highest refusal rate of the entire batch (43.1%) yet reproduced most precisely, its λ=0\lambda=0 accuracy within 0.1 points of the paper. If high refusal itself caused instability, haiku should have deviated most; the opposite happened. The drift is therefore not in our pipeline. It is on the vendor side.

Both drift cases involve changes in response policy, though not at the same depth. deepseek-v4-pro is the straightforward one. Between the two runs, 229 of its responses flipped from refusal to an answer; the refusal rate fell from about 38% to 20.7% over those three months, and λ=0\lambda=0 accuracy rose 8.8 points. Yet its attempted accuracy — accuracy computed only over the questions it actually answered — moved just 1.7 points. Its stored knowledge did not change; its willingness to answer did. kimi-k2 is more complicated. It refused almost nothing at paper time, refused 39.7% of questions at retest, and lost 17.6 points of λ=0\lambda=0 accuracy — and here the attempted accuracy also fell, by 7.0 points. That points to something upstream beyond refusal policy, most likely a weight update or a change in deployment configuration. The attempted basis removes the part of drift attributable to response policy, but it cannot remove changes to the weights themselves. Either way, the conclusion is the same. A single upstream deployment update can move a λ=0\lambda=0 score by double-digit points, and a measurement like that, plugged into a curve fitted three months earlier, yields a meaningless estimate.

Refitting on attempted accuracy

The corresponding fix is to remove refusals from the denominator and refit the curve on attempted accuracy. We also made two adjustments to the calibration cohort (detailed below), growing it from 93 models to 94. Prediction intervals are estimated by LOFO — leave-one-family-out — cross-validation, which holds out whole model families at a time; models in the same family are highly correlated, so per-model holdout would make the interval artificially narrow. The refit has one cost: R2R^2 falls from 0.910 to 0.898. It has two benefits. The LOFO 90% prediction interval tightens from the original λ=0\lambda=0 curve’s ×/÷3.51 to ×/÷3.45, and mean drift on the seven-model retest subset drops from 4.1% to 2.4%. Which quantity moved and which did not is the point here. Goodness of fit — cross-model explanatory power at one point in time — barely changed, while repeatability of the same model across time improved considerably. For a method meant to be used again and again, repeatability is the property that matters. The refit curve is

log10Neff=5.761Aattempted1.588(n=94, R2=0.898)\log_{10} N_{\text{eff}} = 5.761 \cdot A_{\text{attempted}} - 1.588 \qquad (n = 94,\ R^2 = 0.898)

where NeffN_{\text{eff}} is in billions and AattemptedA_{\text{attempted}} is attempted accuracy as a decimal between 0 and 1. Every accuracy reported in this article is a macro-average over the seven obscurity tiers — computed per tier, then averaged — matching the calibration fit. Computed per question, λ=0\lambda=0 accuracy equals attempted accuracy times the answer rate (one minus the refusal rate); after macro-averaging the identity no longer holds exactly, so cross-checking the numbers in the tables below will show small discrepancies.

Two adjustments were made to the cohort itself. First, v4-pro’s paper value was replaced with its retest value. The original 60.1% ranked a 1.6T model below the same vendor’s 284B v4-flash (74.8%), even though v4-pro’s attempted accuracy moved only 1.7 points between runs. That anomalous ordering traces to the old snapshot’s refusal behavior rather than to v4-pro’s ability, so the retest value is the cleaner reading. kimi-k2 keeps its paper value. Its attempted accuracy also moved 7 points at retest, and there is no way left to adjudicate which snapshot better represents “kimi-k2,” so we left it alone; its presence or absence at 1T also matters far less to the curve than the anchors at the top.

Second, kimi-k3 joined the cohort. It has a published total of 2.78T parameters and is currently the only known-size open model at the same scale as the closed flagships. Before it joined, the curve ended at 1.6T and everything above 2T was extrapolation; with it, most of the 1T to 3T range that this article is concerned with becomes interpolation.

Both known-size anchors lie close to the curve, and each can be checked individually. Holding kimi-k3 out of the cohort, refitting on the rest, and predicting it gives a prediction that misses its published size by a factor of 1.20; the same operation on v4-pro gives 1.24. Both are slight underestimates, and both sit far inside the ×/÷3.45 prediction interval; the position of the curve’s upper end does not rest on these two points alone. Of course, an anchor’s “known size” takes the vendor at its word; the top of the whole inference chain ultimately rests on kimi-k3’s and v4-pro’s self-reported sizes being true. The full refit calibration is shown below, with the two new anchors drawn as diamonds, falling inside the prediction band at the upper end:

Limits of the attempted basis

Attempted accuracy rests on an assumption of its own: that refused questions share the difficulty distribution of answered ones. Once refusal correlates with difficulty, the assumption fails. A model that concentrates its refusals on hard questions is overestimated; one that refuses questions it could have answered is underestimated. Section 4 presents measured cases of both directions in the Claude family, along with the correction method, imputation against an external reference model.

3. Measuring the GPT-5.6 family

OpenAI offers six GPT-5.6 variants on OpenRouter, a model aggregation platform. One naming point needs to be clarified first: there is no standalone gpt-5.6-pro; pro is a suffix each series carries separately, so the family reads as three series (sol, terra, luna) of two variants each, not six parallel models. We ran the full 1311-question cleaned probe set on all six variants, with no ungraded responses in any run.

Capacity estimates

The measurements for the six variants:

VariantAttempted acc.λ=0\lambda=0 acc.NeffN_{\text{eff}}90% interval (LOFO)Refusal
sol-pro84.8%84.2%1.99T576B – 6.8T1.2%
sol84.6%83.7%1.93T559B – 6.7T1.8%
luna-pro78.0%76.1%808B234B – 2.8T4.5%
terra-pro77.5%77.3%750B217B – 2.6T0.6%
luna77.4%75.9%744B216B – 2.6T4.2%
terra77.0%76.3%702B204B – 2.4T1.4%

The table’s defining feature is its tidiness: all six refusal rates sit below 5%, the refusal confound discussed in Section 2 is nearly absent here, and the attempted and λ=0\lambda=0 bases give almost identical estimates. This stands in contrast to the Claude family in Section 4, and it means the GPT-5.6 readings can be taken at face value with no external correction — face value still meaning “knowledge capacity equal to an open model of size X.”

These numbers support three conclusions. First, the sol series forms its own bracket: its accuracy leads the terra/luna series by 7 to 8 percentage points, worth about 2.7× in NeffN_{\text{eff}}, and the lead holds at every tier from T4 on. The bracket is suggestive rather than statistically separated, though: sol’s lower 90% bound (559B) sits below the terra/luna point estimates, and with prediction intervals spanning 3.45×, overlap of this kind is expected.

Second, terra and luna are indistinguishable in knowledge capacity. Their attempted accuracies differ by 0.4 points and their intervals nearly coincide; more telling, their ordering flips between the λ=0\lambda=0 and attempted bases — a ranking that unstable is itself evidence that the difference is noise.

Third, the pro suffix adds no knowledge capacity. The three pairs differ by 0.2, 0.5, and 0.6 points, all smaller than the roughly 0.8-point binomial standard error that probe-sampling randomness alone puts on the macro-average. pro variants across GPT generations are generally understood as products of test-time scaling, the practice of spending additional compute at inference rather than enlarging the weights, and this result agrees: extra inference compute can improve the quality of a reasoning chain, but it cannot add facts to the weights. That IKP reads no pro difference is consistent with the benchmark’s design goal of measuring stored knowledge rather than reasoning performance.

The per-tier accuracy profiles support this reading. In the chart below, color distinguishes the three series, and dashed lines mark each series’ pro variant:

Each conclusion has its counterpart in the tier curves. The two sol lines separate from the four terra/luna lines starting at T4, the gap peaking at 23 points at T6 and narrowing at T7 as every variant falls together; the four terra/luna lines interleave across all tiers and cannot be told apart; and each series’ pro dashed line nearly coincides with its solid one. On T1 through T3 every variant scores above 98%, carrying no signal; the discrimination lives in T4 and beyond, the long-tail tiers — exactly where the benchmark was designed to discriminate.

Corroboration from pricing

The finding that terra and luna have equal capacity carries a direct implication for the pricing structure. At launch, the official pricing put sol, terra, and luna at $5.00/$30.00, $2.50/$15.00, and $1.00/$6.00 per million input/output tokens — terra’s per-token price is 2.5 times luna’s. If the two really hold equal knowledge, then terra’s premium over luna buys not knowledge stored in the weights but properties of the inference stack, or simply product segmentation.

The community had observed the same thing from the behavioral side before our measurement. Sebastian Raschka commented the day after the GPT-5.6 release: “unless you need Terra Ultra’s performance, you are always better off choosing the Luna model at a higher reasoning effort (same or better performance, and cheaper).” Raschka’s advice applies only to agentic coding. Its exception, Terra Ultra, is terra’s top reasoning-effort setting in the ChatGPT product, formerly the Codex App; it is neither a standalone model nor the terra-pro variant measured here. That exception aside, the economics of the advice match our capacity reading: with an adjustable reasoning budget, terra has no niche of its own relative to luna.

Artificial Analysis later systematized the observation in a cost-frontier analysis: on the Pareto frontier of capability against cost, sol and luna configurations dominate terra throughout — for any terra configuration, there is a sol or luna configuration that is stronger at similar cost or cheaper at similar capability.

IKP measures stored knowledge; Raschka and Artificial Analysis measure coding performance and cost. The three lines of evidence share no methodological assumptions, and they point the same way: terra and luna hold equal knowledge, and whatever separates the products is not in the weights’ stored knowledge. But convergence is not proof, and “equal” here holds only on the NeffN_{\text{eff}} scale. Given the dispersion of ρ\rho from Section 2, two models of equal capacity routinely differ 2× in true size. So there is a mundane possibility: luna’s true size is far below terra’s, and it is simply denser in knowledge. terra could also be an MoE of the same class with a different active parameter count, or a different quantized deployment of the same model. Every one of these scenarios is compatible with all three lines of evidence. The ceiling for black-box measurement is getting independent lines of evidence to converge; conclusions about size and architecture are beyond it.

While this article was being written, the pricing structure changed. On July 30, OpenAI announced price cuts: luna dropped to $0.20/$1.20, a cut of 80%; terra dropped to $2.00/$12.00, a cut of only 20%. terra’s per-token premium over luna went from 2.5× to a full 10×. That number still sits between the same two possibilities: luna’s true size is far smaller and it simply costs far less to serve, or pricing is detached from cost and this is product segmentation. Widening the gap to 10× does nothing to separate the two.

The wording of the price-cut announcement does not depend on that distinction. It no longer pairs terra with luna; it suggests that users currently defaulting to sol consider evaluating terra when the task does not need maximum intelligence. terra’s reference point has moved from luna to sol. Our measurement says terra has no niche relative to luna; what this adjustment does is remove terra from precisely that comparison.

Fingerprinting shared bases

Capacity estimates answer “how big,” not “same origin?” For the latter, the IKP paper provides a set of fingerprint metrics, which this section applies to all fifteen pairs of GPT-5.6 variants. The metrics are the paper’s own construction, with no prior literature to lean on, so the definitions need to be given in full. All are computed on the probes of the two long-tail tiers, T5 and T6, only: easy questions are answered correctly by every frontier model and carry no distinguishing signal. Let CAC_A and CBC_B be the sets of questions each model answers correctly.

Jaccard similarity, J=CACB/CACBJ = |C_A \cap C_B| / |C_A \cup C_B|, measures how much the two models’ knowledge coverage overlaps. Its defect is that questions the whole population answers correctly dominate the score: GPT-5 and claude-opus-4.5 were trained independently by different vendors, yet the paper records J=0.56J = 0.56 between them. A high JJ by itself is no evidence of shared origin.

Lift divides the intersection size by CACB/n|C_A| \cdot |C_B| / n, where nn is the size of the shared question pool. The denominator is the expected intersection size if the two models’ correctness were unrelated, so lift above 1 means overlap beyond coincidence. This partially repairs JJ‘s defect, but when both models are highly accurate, nearly every question enters the intersection and its size approaches the independence expectation from above. The metric compresses toward 1 and loses discrimination.

HSS (hallucination signature similarity) is computed on the joint-wrong pool — the questions where both models give a non-refusal wrong answer. HSS is the fraction of those questions on which the wrong answers are identical after normalization: lowercasing, collapsing whitespace and punctuation, truncating to the first 80 characters. The regularity it rests on is that independently trained models almost never fabricate the same wrong answer to the same obscure fact, while weight-sharing models give identical wrong answers on 30% to 55% of joint-wrong questions. There is one correct answer; the space of wrong answers is nearly unbounded. As an individual signature, a wrong answer resolves far more than a right one.

The paper’s decision thresholds: shared-base requires HSS0.30\text{HSS} \geq 0.30 and J0.60J \geq 0.60; lineage requires HSS0.10\text{HSS} \geq 0.10 and J0.50J \geq 0.50; HSS<0.10\text{HSS} < 0.10 with a joint-wrong pool of at least 10 questions is ruled retrained. Below 10 questions, HSS is too noisy and no ruling is made.

On the 368 probes of T5 and T6 combined, we computed all fifteen pairwise combinations of the six variants. The full pair matrix (lower triangle) is below; color depth encodes HSS, and hovering shows each pair’s Jaccard, lift, and joint-wrong pool size:

Three cells are dark, and all three are within-series pairs: luna/luna-pro at 0.443, sol/sol-pro at 0.342, terra/terra-pro at 0.239. The twelve cross-series pairs are all light, topping out at 0.167, and two of them read exactly 0.000 on joint-wrong pools that are anything but small — 64 questions for luna/terra, 37 for sol/terra. What makes the reading credible is the control the matrix carries within itself. Same metric, same question pool, joint-wrong samples of comparable size; within-series pairs between 0.239 and 0.443; cross-series pairs never above 0.167; nothing whatsoever between 0.17 and 0.24. Given that separation, a luna/terra value of 0.000 on 64 joint-wrong questions cannot be waved off as the method losing resolution on frontier models. The same method, on the same generation and the same probes, had just resolved three within-series pairs in the same matrix.

One detail did need a closer look. Several cross-series pairs fall between 0.10 and 0.17, and a value in that range could suggest a weak lineage relation. We listed the shared wrong answers pair by pair, and the supposed signal dissolved: what recurs is the same small set of structurally similar items. “State Polytechnic of Indramayu, founded 2008.” “Quinsaloma, founded 2007.” “National Museum of Ethiopia, founded 1958.” Founding-year questions, all of them, each answered with a plausible year in the same template — the failure mode the paper had warned about, a handful of structurally convergent hallucinations with no overlap in stored knowledge required.

This step, it should be said, has no technical content at all. Print the wrong answers a pair shares; read them. Andrew Ng’s prescription for error analysis in Machine Learning Yearning amounts to about the same thing: go through some 100 misclassified dev set examples by hand, put them in categories, and let the counts decide what to optimize next. There was no optimization to decide here, only data to look at, and the return on effort is of one order. HSS is an aggregate number. Numerically, the gap between 0.10 and 0.17 says nothing at all. Three lines of wrong answers said it.

The only within-series pair below the shared-base threshold is terra/terra-pro, at HSS 0.239; its joint-wrong pool holds 92 questions, the largest in the matrix, so sample size cannot explain the low value. What merits suspicion is not terra-pro’s parentage but the metric’s applicability to pairs of this kind.

That pro is a test-time-scaling variant of the same base is a very strong prior across GPT product lines. OpenAI has never disclosed the implementation, but ever since o1-pro the community has read it as inference-time compute of the parallel-sampling-and-aggregation kind, and no public evidence of separate post-training exists; the capacity measurement in this section, a difference of 0.5 points, agrees with that reading, as do the fingerprints of the other two pro pairs.

The trouble is that test-time scaling on its own suffices to trigger a false negative in HSS. HSS depends on exact string matches between normalized wrong answers; on a question the model does not know to begin with, a deeper reasoning chain or an aggregation over repeated samples is precisely what perturbs the wrong guess it finally lands on. The stored knowledge has not changed. What changed is the surface form of the wrong answer. Such false negatives have a precedent: the paper reports an extreme case of nemotron against llama-3.1, where J=0.81J = 0.81 coexisted with HSS=0.08\text{HSS} = 0.08. There, what perturbed the wrong answers was post-training rewording; here, it is resampling at inference. The mechanisms differ; the effect on the metric is the same.

Taken together, the evidence indicates that terra/terra-pro is most likely a shared-base pair whose pro inference configuration prevents HSS from confirming the relation. Following the paper’s thresholds, we record it as lineage, but that record should be interpreted as the minimum relation HSS can confirm: the true relation is at least lineage and probably shared base. It remains unclear why the same test-time scaling preserved high HSS in the luna and sol pairs but perturbed only terra’s. Our data cannot answer that question, and the three series’ pro variants need not use a single inference-time strategy.

The capacity and fingerprint evidence together give the following structure for the GPT-5.6 family: sol, terra, and luna are three independently trained bases, and each series’ pro is a variant of its own base. This has the same structure as the paper’s finding for the previous generation, in which GPT-5, GPT-5-pro, and GPT-5-think form one shared-base cluster.

4. Measuring the Claude 5 family

On the Anthropic side we measured the three current models — claude-fable-5, claude-opus-5, claude-sonnet-5 — and added the previous-generation claude-haiku-4.5 as a small-size control. All four ran the same 1311-question cleaned probe set, and every run completed with no ungraded responses. The results are below, with both bases side by side. Only the attempted-basis NeffN_{\text{eff}} is a formal estimate; the λ=0\lambda=0-basis NeffN_{\text{eff}} is not an independently calibrated figure but the λ=0\lambda=0 score plugged into the same attempted curve, shown only to display, on a common scale, how far refusals depress the reading.

ModelAttempted acc.λ=0\lambda=0 acc.NeffN_{\text{eff}} (attempted)90% intervalNeffN_{\text{eff}} (λ=0\lambda=0)Refusal
fable-588.7%80.9%3.3T963B – 11.5T1.2T12.0%
opus-588.4%75.7%3.2T921B – 11.0T593B18.7%
sonnet-577.2%68.3%719B208B – 2.5T223B20.7%
haiku-4.564.0%47.2%126B36B – 433B14B43.1%

These figures contrast with the previous section: the six GPT-5.6 variants refuse between 0.6% and 4.5% of questions and their two bases nearly coincide; the four Anthropic models refuse between 12.0% and 43.1%, and the two bases diverge by a factor of 5.4 on opus — 3.2T against 593B — and by a factor of 9 on haiku. The response-policy confound of Section 2, a negligible term for GPT-5.6, is the dominant error source here. The task of this section is therefore not to recite the table but to answer two questions: how large the bias is and in which direction, and whether it can be corrected.

The first step is to rule out the explanation that the high refusal rates are an artifact of our environment. For the three models the paper had measured — fable, sonnet, haiku — our λ=0\lambda=0 accuracies land within 0.4 percentage points of the paper’s across the board: if our environment were inducing the refusals, those three numbers could not line up this well. opus-5 was not in the paper; it is our addition. The reproduction also shows the models’ behavior has not drifted in the three months since the paper; within this observation window at least, high refusal is a stable trait of Anthropic’s models, not noise from a deployment snapshot.

Testing the attempted assumption with peers

The attempted basis carries the implicit assumption that refused questions match answered ones in difficulty. Here that assumption can be tested directly, because every model ran the same 1311 questions: for any question model AA refused, some other model produced a gradable answer. That allows a counterfactual: impute each of AA‘s refused questions not at AA‘s own attempted accuracy but at the measured accuracy of some reference model BB on exactly those questions. If the attempted assumption holds, the two imputations should agree; if it fails, their difference is the direction and magnitude of the bias.

The credibility of the imputation depends on coverage: BB refuses questions too, so imputation can only run on the part of AA‘s refusals that BB actually answered. When reference coverage is low, the imputation rests only on questions both models were willing to answer, and that is a systematically easier subset. The extreme cases make the point. Imputing opus with haiku as reference covers 3%, or 8 questions, and the correction computed on those 8 differs from the attempted estimate by 5.20×, more than three times the magnitude seen with high-coverage references. Imputing fable with opus covers 5%, and there the correction differs from the attempted estimate by only 1.03×, apparently unbiased but equally a coincidence at that sample size. Neither constitutes a measurement.

The choice of reference therefore has two criteria: coverage must be high, and the reference’s knowledge should come as close as possible to covering the target’s. The second criterion matters because imputation implicitly assumes that whatever the reference does not know, the target does not know either. The closer the reference comes to fully covering the target, the smaller the error of that assumption. This is also why the roughly 700B terra and luna are less suited than sol to checking models in the 2T bracket. We drew references from the measured Anthropic models themselves, plus gpt-5.6-sol as an external reference, and only sol meets both criteria: its 1.8% refusal rate gives it at least 90% coverage of every target, its capacity estimate matches the largest of the six GPT-5.6 variants, and it comes from the other vendor, sharing no post-training policy with the models under test.

The mid-coverage in-vendor references, though unqualified, correct in the same direction as sol: imputing opus with fable (39% coverage) likewise says attempted overestimates, and imputing sonnet with fable or opus (48% and 28% coverage) likewise says it underestimates. The directional conclusion does not rest on sol alone. The chart below shows the sol-referenced imputation; hollow circles are the raw attempted-basis estimates, filled circles the imputed corrections, with line color marking the direction of the correction:

The information in this chart lies mainly in the directions. fable and opus are overestimated by the attempted basis, sonnet and haiku underestimated — and refusal rate does not predict the direction at all: sonnet (20.7%) and opus (18.7%) refuse at nearly the same rate with opposite signs. What sets the direction is the correlation between refusal and difficulty, and that correlation cannot be detected from a single model’s own run; it takes a reference model.

The overestimation mechanism for fable and opus is the conventional one: their refusals concentrate in the hardest tier, with T7 refusal rates of 57.6% and 70.3%, so attempted accuracy is computed on an easier answered subset and extrapolates high over the full set. The anomaly is sonnet. Its T6 breakdown reads: 28 correct, 56 wrong, 103 refused. The attempted basis sees 33.3% accuracy on its answered questions and assumes the 103 refused ones would go the same way; fable’s measured accuracy on those same 103 questions is 80.6%. sonnet answered the questions it was relatively weak on and refused the ones it could well have gotten right: refusal negatively correlated with difficulty — the underestimation failure Section 2 flagged, realized here. As for the cause, one coherent account is an overconservative honesty policy: the model underrates its own confidence and sorts many answers it would have gotten right into the “not sure enough” pile. But that is conjecture; our data pins down only the sign of the correlation.

Corrected readings

The sol-referenced imputation yields this section’s core conclusion. fable-5 and opus-5 are indistinguishable in knowledge capacity: their attempted accuracies differ by 0.3 points; imputed, both come out at 2.1T, with imputed accuracies of 85.1% against 85.2%; and their ordering, too, flips between bases. For the imputed estimates we carry over the calibration curve’s ×/÷3.45 90% interval, putting fable and opus at roughly 609B to 7.2T; the imputation adds uncertainty of its own that is not accounted for here, so the true interval is only wider.

This result can be read against the official product story. Anthropic positions fable-5 as a new tier above opus, and states that it shares its underlying model with mythos-5, the version offered to approved organizations without the added dual-use safety measures. On the dimension of how many facts the weights store, that new tier has no counterpart: IKP cannot read any difference between fable-5 and opus-5. If the tier difference exists, it falls outside what IKP measures, and true size is one such quantity, since equal NeffN_{\text{eff}} does not entail equal NtrueN_{\text{true}}. If fable-5 really is the larger model, the extra size did not become long-tail facts.

sonnet-5’s corrected estimate is about 970B, 1.35 times its attempted-basis 719B. haiku-4.5 has no citable estimate: its three estimates — 14B at λ=0\lambda=0, 126B attempted, 869B sol-imputed — span a factor of 62. Imputation stops meaning anything here, even though sol still qualifies as a reference by the previous subsection’s criteria, with 96% coverage of haiku. The imputation takes sol’s accuracy on haiku’s refused questions as haiku’s counterfactual accuracy, which amounts to assuming haiku knows what sol knows. For fable and opus, models of sol’s own scale, the assumption is a workable approximation; for haiku, whose true size is far below sol’s, it fails outright, and the 869B it produces is an upper bound, not a correction. For a model refusing 43.1% of the questions, the method has effectively degenerated; haiku’s role in this article is to mark the boundary of the method’s applicability, not to contribute a measurement.

Fingerprinting fails under high refusal

The natural next step would be to put Section 3’s origin questions to the Claude family, above all the relation between fable and opus. But HSS has no resolving power on these models, and the reason is a structural dependency of the metric.

HSS needs questions where both models commit to a wrong answer, and Anthropic’s models refuse on exactly the questions most likely to supply such pairs. The chart below plots refusal rate by obscurity tier for all ten closed models in this article, the six GPT-5.6 variants plus the four from Anthropic; past T5, the two vendors split into nearly disjoint clusters:

The tally on T5 and T6: Anthropic’s four models refuse 623 times between them, 56 to 305 per model, against 78 for all six OpenAI variants combined. That leaves joint-wrong pools of 3 to 19 questions, where Section 3’s successful within-series rulings had 38 to 92 to work with. In a pool of 11, one coincidental match swings HSS by 0.09. And the failure cuts the other way too: genuine weight sharing can read 0.000, the shared hallucinations still there but walled off from the observable sample by refusal policy. HSS across the six Anthropic pairs never exceeds 0.067, four of them sitting at exactly 0.000 — not evidence of six mutually independent models, but the metric failing in both directions at once.

One signal in the matrix is worth writing down: fable-5/opus-5 at J=0.743J = 0.743, the highest anywhere in it, which sits comfortably beside the imputation finding that the two are indistinguishable in capacity. The decision script stamps the pair retrained, matching the high-JJ, low-HSS pattern (Section 3’s threshold: HSS<0.10\text{HSS} < 0.10 on a pool of at least 10) — a ruling balanced on 11 joint-wrong questions, one above the minimum for ruling at all. Our position is that this data supports no conclusion about the lineage of fable-5 and opus-5. Getting one would take a probe set these models answer instead of refusing, or a fingerprint that does not run on wrong answers.

Comparison with community estimates

The corrected numbers depart considerably from the guesses in circulation. In April, Elon Musk asserted that Sonnet is about 1T and Opus about 5T. Claude 5 had not shipped at the time, so the referents are the 4.x generation and the comparison here is order-of-magnitude only. His 1T is the same order as our corrected sonnet-5 estimate of about 970B. His 5T is about 2.4 times our corrected opus-5 value of 2.1T — still inside the 609B–7.2T 90% interval, so it cannot be formally excluded. The IKP method itself went through a correction in the same direction, from an initial 9.7T for GPT-5.5 down to about 1.5T after the LessWrong review. Word-of-mouth community estimates and uncorrected measurements err the same way, toward exaggeration, and the folk image of flagships holding over ten trillion parameters has no measured evidence behind it to date.

Corrected, the estimates converge instead: the sol series around 2T, fable-5 and opus-5 around 2.1T, kimi-k3’s published 2.78T in the same range. The largest open model has drawn level with the closed flagships in knowledge capacity. If these estimates broadly hold, then wherever the closed frontier’s lead resides, it does not mainly reside in the total factual knowledge stored in the weights.

5. Summary and discussion

The figure below gathers the article’s estimates. Each point marks the preferred estimate for a model, the reading we consider most defensible: for the GPT-5.6 family, whose refusal confound is negligible, the attempted basis taken directly; for the Claude family, the sol-referenced imputation corrections. Horizontal bars span the 90% prediction interval, ×/÷3.45 around each point, and the dashed line marks kimi-k3’s published 2.78T for reference. haiku-4.5 is absent because it has no citable estimate, per Section 4:

The same numbers are listed in table form, so that a point estimate and its interval can be cited as a pair:

ModelPreferred NeffN_{\text{eff}}90% intervalBasis
fable-52.1T609B – 7.2Tsol-imputed
opus-52.1T609B – 7.2Tsol-imputed
sol-pro1.99T576B – 6.8Tattempted
sol1.93T559B – 6.7Tattempted
sonnet-5972B282B – 3.4Tsol-imputed
luna-pro808B234B – 2.8Tattempted
terra-pro750B217B – 2.6Tattempted
luna744B216B – 2.6Tattempted
terra702B204B – 2.4Tattempted
haiku-4.5— (not citable)see Section 4

We restate the units and the precision of these numbers. NeffN_{\text{eff}} counts IKP-effective parameters, not weights: a point estimate says the model’s knowledge capacity equals that of an average open model of the given size, and the 90% interval spans about 3.45× in either direction. The statement this article supports is “fable-5 stores knowledge equivalent to an open model of about 2T, with a 90% interval of roughly 609B to 7.2T,” not “fable-5 has 2.1 trillion parameters.” The interval must accompany the point whenever these numbers are cited, because this article has shown more than once how a bare point estimate manufactures false precision: the same opus-5 reads 593B, 3.2T, or 2.1T, depending on the basis.

Beyond the parameter counts, the measurements produced a byproduct: the two vendors’ post-training response policies have diverged far enough to matter measurably. An OpenAI model that does not know tends to answer wrong anyway; an Anthropic model tends to refuse. As a matter of model quality, neither policy is obviously superior — as hallucination control, Anthropic’s choice may well deserve the praise — but the consequences for black-box measurement are asymmetric. IKP measures the GPT-5.6 family directly and answers both the capacity question and the lineage question cleanly. For the Claude family, the capacity estimates need an external reference to correct them, and the lineage question has lost its sample altogether. The corollary: the more honest the model, the harder it is to measure. Intended or not, a refusal policy objectively disables part of what this class of capacity probe can do.

At the level of method, three conclusions hold independently of any particular model’s estimate.

First, λ=0\lambda=0 accuracy is not robust to upstream deployment updates — it can move by double-digit points within three months — so any comparison across time must use the attempted basis or account for refusals explicitly. The attempted basis is not fully robust either: kimi-k2’s attempted accuracy moved 7 points over the same window. That basis removes only the part of drift attributable to response policy, not changes in the weights themselves.

Second, the attempted basis fails through the correlation between refusal and difficulty, and the direction of the failure cannot be predicted from the refusal rate. Imputation on the same probe set against a high-coverage, low-refusal reference model is the currently feasible way to test for and correct this failure.

Third, the resolving power of the HSS fingerprint depends on the measured models being willing to guess wrong. On high-refusal models it fails in both directions, and a negative result is not evidence of independence.

What remains open. The calibration curve’s upper end still hangs on two known-size anchors, kimi-k3 and deepseek-v4-pro, and everything above 2T inherits that limit; each very large open model that publishes its size would thicken the interpolation where it is thinnest. Qwen 3.8 Max Preview, published at 2.4T, would land right between v4-pro and kimi-k3 — but its weights are closed, and that fails the cohort’s admission rule. An anchor needs more than a vendor-published size; the number has to be independently verifiable, and verifying it takes the weights in hand. The model is also served only through Alibaba Cloud’s Bailian platform, where we have no account. Bailian’s Token Plan is a monthly subscription rather than a metered API, so whether benchmarking on it even complies with the terms of service is a question we cannot settle either. Separately: the refusal correction leans on sol, one external reference. Cross-validating against several references could tighten the intervals, as could the deprobing scheme the paper’s authors propose — paired prompts that measure how many refused questions the model in fact holds the answer to.

The probe set went public in April and every model measured here shipped later, so contamination — probes leaking into training corpora — cannot be formally ruled out. Three months is a narrow window for a pretraining corpus, though, and the readings lack contamination’s signature. On T7, the most obscure tier, the best performers — fable-5 and sol — manage attempted accuracies of about 52% and 24%, far below the roughly 85% both post on the full set. Had the probes entered the corpora, these questions would score highest of all, not lowest. The real test is still a held-out, unpublished probe set: worth building, alongside deprobing.

Then there is the lineage of fable-5 and opus-5, the question our data cannot answer. Answering it needs probes these models will actually answer, and that is an interesting benchmark-design problem in itself: how to construct long-tail factual questions that even a high-honesty model will hazard a guess on.

Our experiments build on IKP’s public repository and public probe set, with local modifications to its estimation scripts covering the attempted-basis refit, the refusal imputation, and the fingerprint pairing analysis. Total API spend came to about $126 — the calibration-cohort retest, full 1311-question runs on ten closed models, several 49-question pilots, and all the grading included. Estimating a black-box model’s parameters turns out not to require large-scale compute. What it requires is a calibration curve that has been checked and still holds. A reader with an OpenRouter key can reproduce estimates of this kind for any accessible model at the same order of cost, following the paper repository’s instructions.

The experimental data can be downloaded here (1.4 MB). The archive holds per-question responses and verdicts for the ten closed and eight open models on all 1311 questions, the attempted-basis calibration outputs, and the cleaned probe set we used; from these files a reader can recompute every table in Sections 3 and 4, the drift accounting in Section 2, and the HSS and imputation analyses.

Plain text version