N Neurarch Architectures Models Checks Data Docs Open the app

What a model writes, before it costs anything

One model was asked for architectures in plain English, 4 tasks, no human in the loop. Every graph they returned went through the same pre-flight gate /api/v1/check applies, offline, about ten milliseconds each.

The author changed

structures a model proposed
269
our generator cannot produce
269
refused before dispatch
2.8% to 26.4%
quoted for the refused runs
$53.48

Every distinct structure a model proposed was one our own deterministic generator cannot produce for the same sentence, at any scale. That share is not noisy and does not depend on which model: it is 100% in every run recorded here. Whatever else is true, the thing writing the architecture is no longer the thing we can enumerate.

How often a machine-written architecture will not run

This one is noisy, and it is quoted with its width for that reason. It ranges from 2.8% to 26.4% across the models below, and a single model moves by more than ten points between runs on the same four sentences. Anyone quoting one row of this table as "the refusal rate" is quoting a different claim than the data supports.

who wrote the architecturereturned refused before dispatchacross runs novel / distinct
xai 2026-09-07 72 26.4% 16.7% to 33.3% over 3 runs 69 / 69
openrouter 2026-09-06 72 13.9% 8.3% to 20.8% over 3 runs 64 / 64
anthropic 2026-09-04 66 18.2% 8.3% to 29.2% over 3 runs 66 / 66
xai 2026-09-04 72 2.8% 0.0% to 4.2% over 3 runs 70 / 70
neurarch-seeded our own generator, the baseline 40 0.0% one run 0 / 23

Refused means pre-flight blockers only: the graph does not forward-pass. It is not a judgement about whether a legal design is any good. We publish how bad we are at that separately, at /calibration.html.

Every refusal, and the run it would have started

13 of the 29 refusals below are the same check, structure-missing-params. A model that writes a residual or a dense block and does not make the branches agree is one specific, nameable habit, not a random defect rate, which is why it can be checked in ten milliseconds and why the same check keeps earning its place.

the design, and what it was forwhy it was refused the run that did not happen
gru-attention-linear
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
structure-missing-params "selfAttention" is missing numHeads $2.57 2.3h, A10G (24GB)
emb_cnn_pool
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
structure-missing-params "emb" is missing numEmbeddings, embeddingDim $1.69 1.5h, A10G (24GB)
emb_lstm
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
structure-missing-params 2 layers are missing required parameters $1.61 1.5h, A10G (24GB)
deep_cnn_bn
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
structure-missing-params "emb" is missing numEmbeddings, embeddingDim $1.65 1.5h, A10G (24GB)
wide_mlp
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
structure-missing-params "emb" is missing numEmbeddings, embeddingDim $2.24 2.0h, A10G (24GB)
emb_gru_downsample
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
structure-missing-params 2 layers are missing required parameters $1.51 1.4h, A10G (24GB)
shallow_cnn_dropout
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
structure-missing-params "emb" is missing numEmbeddings, embeddingDim $1.96 1.8h, A10G (24GB)
cnn_shallow
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
structure-missing-params "embedding" is missing numEmbeddings $1.64 1.5h, A10G (24GB)
cnn_deep_norm
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
structure-missing-params "embedding" is missing numEmbeddings $1.73 1.6h, A10G (24GB)
lstm_bidirectional
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
structure-missing-params "embedding" is missing numEmbeddings $2.54 2.3h, A10G (24GB)
transformer_encoder
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
unknown-layer-type Shape problem: transformerencoder
structure-missing-params 2 layers are missing required parameters
not priceable
hybrid_cnn_lstm
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
structure-missing-params "embedding" is missing numEmbeddings $1.54 1.4h, A10G (24GB)
wide_mlp_pool
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
structure-missing-params "embedding" is missing numEmbeddings $1.46 1.3h, A10G (24GB)
shallow_pool_cnn
find surface defects in 512x512 colour line-scan photos, 800k images
invalid-output-shape Shape problem: avgpool2d $1.93 1.8h, A10G (24GB)
deep_bn_cnn
find surface defects in 512x512 colour line-scan photos, 800k images
invalid-output-shape Shape problem: avgpool2d $4.08 3.7h, A10G (24GB)
high_channel_dropout
find surface defects in 512x512 colour line-scan photos, 800k images
invalid-output-shape Shape problem: avgpool2d $3.73 3.4h, A10G (24GB)
narrow_deep_gap
find surface defects in 512x512 colour line-scan photos, 800k images
unknown-layer-type Shape problem: gap $1.99 1.8h, A10G (24GB)
wide_shallow_gap
find surface defects in 512x512 colour line-scan photos, 800k images
unknown-layer-type Shape problem: gap $15.49 14.1h, A10G (24GB)
mid_residual
find surface defects in 512x512 colour line-scan photos, 800k images
merge-shape-mismatch Shape problem: add
merge-shape-mismatch Shape problem: add
$4.14 3.8h, A10G (24GB)
ResidualBlockNet
classify 32x32 colour images into 10 classes
merge-shape-mismatch Shape problem: add $0.04 3m, A10G (24GB)
DenseBlockNet
classify 32x32 colour images into 10 classes
merge-shape-mismatch Shape problem: concatenate $0.04 3m, A10G (24GB)
Parallel CNN
classify 32x32 colour images into 10 classes
merge-shape-mismatch Shape problem: concatenate $0.04 3m, A10G (24GB)
ResidualBlock
classify 32x32 colour images into 10 classes
merge-shape-mismatch Shape problem: add $0.04 3m, A10G (24GB)
ResidualConv
recognise handwritten digits
merge-shape-mismatch Shape problem: add $0.04 3m, A10G (24GB)
Wide CNN with Skip Connection
sort 16x16 RGB product thumbnails into 5 categories
merge-shape-mismatch Shape problem: concatenate $0.04 3m, A10G (24GB)
Residual-like CNN
sort 16x16 RGB product thumbnails into 5 categories
merge-shape-mismatch Shape problem: add $0.04 3m, A10G (24GB)
LSTMClassifier
tell spam apart from real email from a 300-dim feature vector
unknown-layer-type Shape problem: select $0.04 3m, A10G (24GB)
TransformerTiny
tell spam apart from real email from a 300-dim feature vector
unknown-layer-type Shape problem: transformerEncoderLayer $0.04 3m, A10G (24GB)
ResidualClassifier
tell spam apart from real email from a 300-dim feature vector
merge-shape-mismatch Shape problem: add $0.04 3m, A10G (24GB)

Quoted, this run (2026-09-07): $53.48 (1 refusals too broken to price, counted as zero)

runquotedrefusalson these sentences
2026-09-07 $53.48 19 rank the next products to show a user from a 256-feature vector, over 2 billion impressions
sort a support conversation into one of 60 queues from its first 512 tokens, 3M documents
score card transactions for fraud from a 200-feature vector, 40M transactions
find surface defects in 512x512 colour line-scan photos, 800k images
2026-09-06 $0.47 10 classify 32x32 colour images into 10 classes
recognise handwritten digits
sort 16x16 RGB product thumbnails into 5 categories
tell spam apart from real email from a 300-dim feature vector
2026-09-04 <$0.01 0 classify 32x32 colour images into 10 classes
recognise handwritten digits
sort 16x16 RGB product thumbnails into 5 categories
tell spam apart from real email from a 300-dim feature vector

Never add two rows of that table together. The sentences changed between runs, and a total across both is a figure about a task set that never existed.

The quote is pre-flight's own figure for each refused run at list GPU prices, the same figure the product shows for the same graph. It is what would have been dispatched, not a saving we assert, and a refusal that cannot be priced counts as zero rather than as a guess.

What this is not

Machine-readable: /loop.json. Run npm run bench:proposer to reproduce. Newest run 2026-09-07.