<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Nishaanth Nattudurai</title>
    <description>The latest articles on DEV Community by Nishaanth Nattudurai (@nishaanth_11).</description>
    <link>https://dev.to/nishaanth_11</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4113233%2F08a623a8-dc66-4d13-a5da-e127f2a64cc7.jpg</url>
      <title>DEV Community: Nishaanth Nattudurai</title>
      <link>https://dev.to/nishaanth_11</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/nishaanth_11"/>
    <language>en</language>
    <item>
      <title>Next-Concept Modeling: I Ran Stanford's New Text Generator Against a Classic LLM. Here Is What Happened.</title>
      <dc:creator>Nishaanth Nattudurai</dc:creator>
      <pubDate>Tue, 10 Nov 2026 04:36:50 +0000</pubDate>
      <link>https://dev.to/nishaanth_11/next-concept-modeling-i-ran-stanfords-new-text-generator-against-a-classic-llm-here-is-what-255l</link>
      <guid>https://dev.to/nishaanth_11/next-concept-modeling-i-ran-stanfords-new-text-generator-against-a-classic-llm-here-is-what-255l</guid>
      <description>&lt;p&gt;Every large language model you have used, from GPT to Llama to Claude, writes text the same way: one token at a time, left to right. To produce 128 tokens it runs the network 128 times in a row, and each step has to wait for the previous one. That sequential loop is the single biggest reason text generation is slow and expensive.&lt;/p&gt;

&lt;p&gt;In October 2026, Stanford's Hazy Research group published &lt;strong&gt;Next-Concept Modeling (NCM)&lt;/strong&gt;, a model that writes text a completely different way: it sketches the whole passage first, then refines it level by level, predicting every position of a level in parallel. The paper reports generation that is 10x to 31x faster than diffusion language models at comparable quality.&lt;/p&gt;

&lt;p&gt;Social media quickly turned that into "NCM kills LLMs". That is not what the paper measured. So I did what any curious engineer would do: I ran the official code and checkpoints myself, rebuilt the paper's evaluation, and put NCM head to head against a traditional autoregressive model trained on the same data, on an ordinary laptop.&lt;/p&gt;

&lt;p&gt;This post covers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Why a new way of generating text is needed&lt;/li&gt;
&lt;li&gt;How NCM works, in plain language&lt;/li&gt;
&lt;li&gt;What the paper claims&lt;/li&gt;
&lt;li&gt;The datasets and models I used&lt;/li&gt;
&lt;li&gt;My experiments and results, with graphs&lt;/li&gt;
&lt;li&gt;The future of NCM, and whether it will replace LLMs&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Everything is open source in my repository: &lt;strong&gt;&lt;a href="https://github.com/Nishaanth419/ncm-research-playground" rel="noopener noreferrer"&gt;github.com/Nishaanth419/ncm-research-playground&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why do we need something other than next-token prediction?
&lt;/h2&gt;

&lt;p&gt;An autoregressive (AR) language model predicts the next token given all previous tokens. It is simple, it scales beautifully, and it powers almost every chatbot today. But it has a structural cost:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Latency grows linearly with length.&lt;/strong&gt; 1,000 tokens means 1,000 sequential forward passes. A GPU can do enormous amounts of work in parallel, but it cannot skip ahead.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;It commits early.&lt;/strong&gt; The model picks word 1 before it has "decided" what word 50 will be. Any global plan has to live implicitly inside its hidden state.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Throughput is bounded by memory bandwidth&lt;/strong&gt;, because each tiny step reloads the weights.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Researchers have tried to break this loop before. &lt;strong&gt;Diffusion language models&lt;/strong&gt; start from noise or masked tokens and refine all positions at once over many steps. They are parallel, but usually need many refinement steps to reach good quality, so in practice they are often not faster.&lt;/p&gt;

&lt;p&gt;NCM takes a third route, borrowed from image generation.&lt;/p&gt;

&lt;h2&gt;
  
  
  How NCM works
&lt;/h2&gt;

&lt;p&gt;The idea comes from &lt;strong&gt;VAR (Visual Autoregressive Modeling)&lt;/strong&gt;, which generates an image by predicting a tiny thumbnail first and then progressively larger, sharper versions. NCM applies the same coarse to fine recipe to text.&lt;/p&gt;

&lt;p&gt;It has two parts.&lt;/p&gt;

&lt;h3&gt;
  
  
  Part 1: a tokenizer that turns text into levels of "concepts"
&lt;/h3&gt;

&lt;p&gt;A &lt;strong&gt;multiscale residual VQ-VAE&lt;/strong&gt; compresses a passage into a stack of levels of discrete codes.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Text is split into 128 ordinary BPE tokens, and an encoder turns them into a continuous latent (128 positions by 384 numbers).&lt;/li&gt;
&lt;li&gt;That latent is approximated by &lt;strong&gt;12 levels&lt;/strong&gt; of codes. For TinyStories the level lengths are &lt;strong&gt;1, 8, 16, 24, 32, 40, 52, 64, 76, 92, 108 and 128&lt;/strong&gt;. Each level picks codes from its own codebook of 4,096 entries.&lt;/li&gt;
&lt;li&gt;The levels are &lt;strong&gt;residual&lt;/strong&gt;: each level encodes only what the coarser levels missed. Upsample every level to full length, add them together, and a decoder turns the sum back into tokens.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Level 0 is a single code that summarizes the entire passage. The last level has one code per token. These codes are the "concepts" in the name.&lt;/p&gt;

&lt;h3&gt;
  
  
  Part 2: a transformer that predicts the next level, not the next token
&lt;/h3&gt;

&lt;p&gt;A &lt;strong&gt;next-concept transformer&lt;/strong&gt; looks at everything generated so far (levels 0 to k, summed) and predicts &lt;strong&gt;all codes of level k+1 in a single forward pass&lt;/strong&gt;. Repeat until the finest level, then decode the final latent into text.&lt;/p&gt;

&lt;p&gt;For a 128-token story, that is &lt;strong&gt;11 transformer passes instead of 128&lt;/strong&gt;. (Level 0 for TinyStories is sampled from a frequency table stored in the checkpoint, so it costs no transformer pass.)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmercs28gmtpaucio0zb9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmercs28gmtpaucio0zb9.png" alt="Sequential forward passes: NCM 11, autoregressive 128" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Watching it think
&lt;/h3&gt;

&lt;p&gt;The nicest property of NCM is that every intermediate level can be decoded. These are real outputs of the official &lt;code&gt;decode_multiscales&lt;/code&gt; function from one of my runs:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;L0  (1 code)    .
L3  (24 codes)  One named the and.. and " is a it He felt wanted for before ...
L7  (64 codes)  day a boy found shiny in the. was happy showed his,. looked the ...
L11 (128 codes) One day, a little boy named Tim found a shiny stone in the park. He was very happy...
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Early levels look like word salad, but they already carry the cast and topic of the story. The grammar and exact wording arrive in the last few levels. I measured this numerically by comparing the latent after each level with the final one:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6b5i7ve1x0m5yqrsyx9g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6b5i7ve1x0m5yqrsyx9g.png" alt="Cosine similarity to the final latent rises from 0.28 at level 1 to 0.90 at level 11" width="800" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Each level is one parallel step, but finer levels contain more codes, so they take longer:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcfjvkivjd0qqppaawf3b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fcfjvkivjd0qqppaawf3b.png" alt="Time per level grows from about 45 ms to about 150 ms" width="800" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  The trade off you should notice immediately
&lt;/h3&gt;

&lt;p&gt;Because the text only becomes readable at the last level, &lt;strong&gt;NCM cannot stream&lt;/strong&gt;. A chatbot built on an AR model shows you its first word in milliseconds; NCM shows you nothing until the whole passage is finished. Keep that in mind for the results.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the paper claims
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Paper:&lt;/strong&gt; &lt;em&gt;Next-Concept Modeling: Fast, Parallel Coarse-to-Fine Text Generation&lt;/em&gt;, by Hermann Kumbong, Ishan S. Khare, Iddah Mlauzi, Andrew Woen, Charles Ding, E. Kelly Buchanan, Simran Arora, Azalia Mirhoseini and Christopher Ré (Stanford, 2026). &lt;a href="https://arxiv.org/abs/2610.14162" rel="noopener noreferrer"&gt;arXiv:2610.14162&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;From the abstract, compared with the strongest &lt;strong&gt;diffusion&lt;/strong&gt; language model baseline at matched scale:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;LM1B:&lt;/strong&gt; better generative perplexity, about &lt;strong&gt;21x faster&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;OpenWebText:&lt;/strong&gt; competitive quality, about &lt;strong&gt;10x faster&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;XSum summarization:&lt;/strong&gt; matches ROUGE-L, about &lt;strong&gt;31x faster&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sudoku:&lt;/strong&gt; outperforms both autoregressive and diffusion baselines at every difficulty level, with fewer function evaluations&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhc18o6cz2w9yhonxm4vz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhc18o6cz2w9yhonxm4vz.png" alt="Paper reported speedups over diffusion LMs: OpenWebText 10x, LM1B 21x, XSum 31x" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Two details matter when you read those numbers. First, the baseline is a &lt;strong&gt;diffusion&lt;/strong&gt; model, not a standard autoregressive LLM. Second, the speeds were measured on a datacenter GPU (an H100). Neither of those matches how most people will first try NCM, which is exactly why I ran my own experiments.&lt;/p&gt;

&lt;p&gt;The authors released everything: &lt;a href="https://github.com/HazyResearch/ncm" rel="noopener noreferrer"&gt;code&lt;/a&gt; under the MIT license, &lt;a href="https://huggingface.co/collections/hazyresearch/ncm" rel="noopener noreferrer"&gt;checkpoints and datasets&lt;/a&gt; on Hugging Face, and a &lt;a href="https://hazyresearch.stanford.edu/blog/2026-10-12-ncm" rel="noopener noreferrer"&gt;blog post&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  My experiment setup
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Question:&lt;/strong&gt; How does NCM compare with a traditional autoregressive model of the same domain, on speed and on text quality, on ordinary hardware? And do the paper's numbers reproduce from the released code?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hardware:&lt;/strong&gt; Apple M5 Pro laptop, &lt;strong&gt;CPU only&lt;/strong&gt;, fp32, 6 threads. (NCM does not currently run on Apple's GPU backend: PyTorch MPS lacks the adaptive pooling NCM's quantizer uses.)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Software:&lt;/strong&gt; Python 3.12, PyTorch 2.15, Transformers 5.22. The official NCM repository is pinned at commit &lt;code&gt;c70274273f489abc73832b2b98584a8483b6b203&lt;/code&gt; and is &lt;strong&gt;never modified&lt;/strong&gt;; my code imports it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Models
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Role&lt;/th&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;th&gt;Size&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;NCM, stories&lt;/td&gt;
&lt;td&gt;
&lt;a href="https://huggingface.co/hazyresearch/ncm-checkpoints" rel="noopener noreferrer"&gt;&lt;code&gt;hazyresearch/ncm-checkpoints&lt;/code&gt;&lt;/a&gt;, &lt;code&gt;tinystories/&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;125.0M (generator 88.6M + VQ-VAE 36.4M)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;NCM, summarization&lt;/td&gt;
&lt;td&gt;same repository, &lt;code&gt;xsum/&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;NCM, translation&lt;/td&gt;
&lt;td&gt;same repository, &lt;code&gt;wmt14/&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Autoregressive baseline&lt;/td&gt;
&lt;td&gt;&lt;a href="https://huggingface.co/roneneldan/TinyStories-33M" rel="noopener noreferrer"&gt;&lt;code&gt;roneneldan/TinyStories-33M&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;68.5M&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quality judge&lt;/td&gt;
&lt;td&gt;&lt;a href="https://huggingface.co/gpt2-large" rel="noopener noreferrer"&gt;&lt;code&gt;gpt2-large&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;774M&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Both story models were trained on the same dataset, which is what makes them a reasonable pair.&lt;/p&gt;

&lt;h3&gt;
  
  
  Datasets
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Dataset&lt;/th&gt;
&lt;th&gt;What it is&lt;/th&gt;
&lt;th&gt;How I used it&lt;/th&gt;
&lt;th&gt;Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;strong&gt;TinyStories&lt;/strong&gt; (Eldan and Li, 2023)&lt;/td&gt;
&lt;td&gt;Short synthetic children's stories written with a small vocabulary&lt;/td&gt;
&lt;td&gt;Training data of both story models. Generation is unconditional, so the models' own samples are scored.&lt;/td&gt;
&lt;td&gt;&lt;a href="https://huggingface.co/datasets/roneneldan/TinyStories" rel="noopener noreferrer"&gt;HF dataset&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;strong&gt;XSum&lt;/strong&gt; (Narayan et al., 2018)&lt;/td&gt;
&lt;td&gt;BBC news articles with one sentence summaries; 11,334 test pairs&lt;/td&gt;
&lt;td&gt;NCM summarization, test items 0 to 3&lt;/td&gt;
&lt;td&gt;&lt;a href="https://huggingface.co/datasets/hazyresearch/ncm-datasets/tree/main/xsum" rel="noopener noreferrer"&gt;NCM copy&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;WMT14 German to English&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;News sentence pairs; 3,003 test pairs&lt;/td&gt;
&lt;td&gt;NCM translation, test items 0 to 3&lt;/td&gt;
&lt;td&gt;&lt;a href="https://huggingface.co/datasets/hazyresearch/ncm-datasets/tree/main/wmt14" rel="noopener noreferrer"&gt;NCM copy&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Metrics
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Generative perplexity (gen-PPL):&lt;/strong&gt; how surprised GPT-2-large is by the generated text. Lower means more fluent. This is the metric the NCM paper uses.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Unigram entropy:&lt;/strong&gt; how varied the words are. It guards against a model that games perplexity by repeating itself.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Latency:&lt;/strong&gt; median and p95 wall clock time over repeated runs, after warm up.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Time to first output:&lt;/strong&gt; when the reader first sees anything.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Results
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Experiment 1: Does the paper's result reproduce?
&lt;/h3&gt;

&lt;p&gt;I ran the official evaluation scripts unmodified (&lt;code&gt;eval_shard.py&lt;/code&gt; and &lt;code&gt;eval_merge.py&lt;/code&gt;): 5 seeds by 256 unconditional TinyStories samples, scored by GPT-2-large. The scripts assume CUDA, so a small launcher remaps device requests to CPU without touching the code.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fw4wz87294cz2edqh161w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fw4wz87294cz2edqh161w.png" alt="Per seed gen-PPL between 15.74 and 16.90, mean 16.23, paper reports 15.41" width="800" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;gen-PPL&lt;/th&gt;
&lt;th&gt;entropy&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;My reproduction (5 seeds, 1,280 stories)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;16.23 ± 0.48&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;3.967&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Paper, Table 8&lt;/td&gt;
&lt;td&gt;15.41&lt;/td&gt;
&lt;td&gt;3.98&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Verdict: it reproduces.&lt;/strong&gt; Entropy matches, and gen-PPL is within two seed standard deviations. The small gap is plausibly CPU fp32 and newer library versions. Generation of all 1,280 stories took 4.5 minutes; scoring took 18.5 minutes.&lt;/p&gt;

&lt;h3&gt;
  
  
  Experiment 2: Is my app running the model faithfully?
&lt;/h3&gt;

&lt;p&gt;I built a research playground (FastAPI backend, React frontend) that runs NCM through its own code path so it can record every level. To make sure I was not measuring my own bugs, I compared its outputs with the official script's outputs for the same inputs and seeds.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Verdict: identical&lt;/strong&gt; for TinyStories (seed 42, 4 samples), XSum test items 0 to 3 and WMT14 test items 0 to 3. This is enforced by automated tests in the repository.&lt;/p&gt;

&lt;h3&gt;
  
  
  Experiment 3: Speed against a classic LLM
&lt;/h3&gt;

&lt;p&gt;Benchmark protocol: for each model and batch size, 2 untimed warm ups, then 10 timed runs with seeds 0 to 9, checkpoint default sampling (temperature 1, no top k or top p).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F08bzvdigz8b2mzfoqp6m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F08bzvdigz8b2mzfoqp6m.png" alt="End to end latency: NCM 307 ms vs 437 ms at batch 1, 734 ms vs 1313 ms at batch 4" width="800" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;th&gt;Batch&lt;/th&gt;
&lt;th&gt;Median&lt;/th&gt;
&lt;th&gt;p95&lt;/th&gt;
&lt;th&gt;Per sample&lt;/th&gt;
&lt;th&gt;Words/s&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;NCM&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;307.5 ms&lt;/td&gt;
&lt;td&gt;399.3 ms&lt;/td&gt;
&lt;td&gt;307.5 ms&lt;/td&gt;
&lt;td&gt;340.6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;NCM&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;733.7 ms&lt;/td&gt;
&lt;td&gt;788.8 ms&lt;/td&gt;
&lt;td&gt;183.4 ms&lt;/td&gt;
&lt;td&gt;571.1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;TinyStories-33M&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;436.9 ms&lt;/td&gt;
&lt;td&gt;491.3 ms&lt;/td&gt;
&lt;td&gt;436.9 ms&lt;/td&gt;
&lt;td&gt;239.5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;TinyStories-33M&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;1313.0 ms&lt;/td&gt;
&lt;td&gt;1430.3 ms&lt;/td&gt;
&lt;td&gt;328.2 ms&lt;/td&gt;
&lt;td&gt;304.7&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;NCM finishes a whole story &lt;strong&gt;1.42x faster at batch 1 and 1.79x faster at batch 4&lt;/strong&gt;, and the gap widens with batch size, because each of its 11 passes does more parallel work:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7be1rq8bu3obpzfcgovx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7be1rq8bu3obpzfcgovx.png" alt="Throughput: NCM 341 and 571 words per second vs 240 and 305" width="800" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But look at when the reader sees something:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgadyogn6ud2ar73ksc6x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgadyogn6ud2ar73ksc6x.png" alt="Time to first output on a log scale: NCM 307 ms vs 3.9 ms at batch 1" width="800" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The autoregressive model shows its &lt;strong&gt;first token in 3.9 ms&lt;/strong&gt;. NCM shows the complete text at 307 ms and nothing before that. For a chat interface, perceived speed is mostly about that first token, and there the classic model wins by roughly 80x.&lt;/p&gt;

&lt;h3&gt;
  
  
  Experiment 4: Quality head to head
&lt;/h3&gt;

&lt;p&gt;Same seed, same batch of 4, same sampling, both warmed up, scored by GPT-2-large.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fux32e8lmyzhv4zy6s0oc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fux32e8lmyzhv4zy6s0oc.png" alt="Fluency gen-PPL: NCM 13.48 vs 9.74. Entropy: 4.056 vs 3.993" width="800" height="391"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The autoregressive baseline writes noticeably &lt;strong&gt;more fluent&lt;/strong&gt; text (gen-PPL 9.74 vs 13.48). NCM is slightly &lt;strong&gt;more varied&lt;/strong&gt; (entropy 4.056 vs 3.993). This is a single small run, so treat it as an indication rather than a final verdict, but it matches what I saw reading the stories side by side.&lt;/p&gt;

&lt;h3&gt;
  
  
  Summarization and translation
&lt;/h3&gt;

&lt;p&gt;The XSum and WMT14 checkpoints run and accept real input. They work, but show visible repetition in some outputs. For example, the German sentence "Ich trinke gern Kaffee am Morgen." came back as "I like like coffee in the morning." I did not run the full 11,334 and 3,003 item evaluations on CPU, only the 4 item exact match checks.&lt;/p&gt;

&lt;h3&gt;
  
  
  Read these numbers carefully
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;The paper's 10x to 31x speedups are &lt;strong&gt;GPU numbers against diffusion models&lt;/strong&gt;. Mine are &lt;strong&gt;CPU numbers against an autoregressive model&lt;/strong&gt;. Different experiments, not a contradiction.&lt;/li&gt;
&lt;li&gt;The two story models differ in size (125M vs 68.5M), tokenizer (8,192 entry BPE vs GPT-2 BPE) and training run.&lt;/li&gt;
&lt;li&gt;NCM always fills its 128 token canvas; the baseline may stop early at end of text.&lt;/li&gt;
&lt;li&gt;The speed results are medians of 10 runs; the quality comparison is one 4 sample run.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What I built along the way
&lt;/h2&gt;

&lt;p&gt;The &lt;a href="https://github.com/Nishaanth419/ncm-research-playground" rel="noopener noreferrer"&gt;repository&lt;/a&gt; is a full research playground you can run locally with one command (&lt;code&gt;./run.sh&lt;/code&gt;):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Learn NCM:&lt;/strong&gt; a plain language guide with the paper, findings, videos and a glossary&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How NCM works:&lt;/strong&gt; an animated walkthrough replayed from a real recorded run&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Playground:&lt;/strong&gt; run TinyStories, XSum or WMT14, watching levels fill in live over WebSocket&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Concept Explorer:&lt;/strong&gt; heatmaps of the code hierarchy and the text decoded at each level&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model Comparison and Benchmarks:&lt;/strong&gt; the experiments in this post, exportable as CSV&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Experiment History:&lt;/strong&gt; every run stored in SQLite, replayable&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Every number in this post comes from files committed in the repository (&lt;code&gt;results/&lt;/code&gt;), and the graphs are generated by &lt;a href="https://github.com/Nishaanth419/ncm-research-playground/blob/main/blog/make_charts.py" rel="noopener noreferrer"&gt;&lt;code&gt;blog/make_charts.py&lt;/code&gt;&lt;/a&gt; directly from those files.&lt;/p&gt;

&lt;h2&gt;
  
  
  The future of NCM
&lt;/h2&gt;

&lt;p&gt;NCM is a few weeks old, and the released checkpoints are small research models. Here is where I think it goes next.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Scaling.&lt;/strong&gt; The big open question is whether NCM keeps its quality as models grow to billions of parameters and passages grow to thousands of tokens. The paper's OpenWebText results (1,024 tokens) are encouraging, but nobody has shown an NCM model at the scale of a modern assistant.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Prompting and instructions.&lt;/strong&gt; The TinyStories model is unconditional; it cannot take a prompt. XSum and WMT14 show that conditioning on an input works. Instruction following, multi turn chat and tool use are still unexplored.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Streaming, or something better.&lt;/strong&gt; NCM cannot show partial words, but it could show a partial &lt;em&gt;plan&lt;/em&gt;. A product might display an outline from the coarse levels and sharpen it, the way progressive JPEGs load. Or levels could be generated in chunks so long documents stream paragraph by paragraph.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Planning and reasoning.&lt;/strong&gt; The Sudoku result is the most intriguing line in the paper. A model that decides the global structure before the details is a natural fit for tasks where the end constrains the beginning: puzzles, code with matching brackets, structured data, poetry with a fixed form.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. Hybrids.&lt;/strong&gt; The likeliest near term path is not NCM alone but NCM inside a larger system: a fast coarse to fine drafter whose output an autoregressive model verifies or polishes, similar to speculative decoding.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6. Hardware support.&lt;/strong&gt; Today NCM runs on CUDA and CPU but not Apple GPUs. Broader kernel support would make it practical on laptops and phones, where its low step count matters most.&lt;/p&gt;

&lt;h2&gt;
  
  
  So, will NCM replace LLMs?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Not as things stand, and probably not in the "one replaces the other" sense.&lt;/strong&gt; A few reasons:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Quality still favors autoregressive models&lt;/strong&gt; in my test, and the paper's quality comparisons are against diffusion models, not frontier AR LLMs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Streaming matters for chat.&lt;/strong&gt; Users perceive a model that starts talking in 4 ms as faster than one that delivers a full answer in 300 ms.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The AR ecosystem is enormous.&lt;/strong&gt; Instruction tuning, RLHF, KV caching, speculative decoding and serving stacks are all built around next-token prediction.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It is also worth being precise about terminology: NCM &lt;em&gt;is&lt;/em&gt; a language model. The real question is whether coarse to fine generation will replace left to right generation. My honest prediction:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;NCM style models will &lt;strong&gt;win where throughput matters more than first token latency&lt;/strong&gt;: batch summarization, translation, data generation, offline document processing and structured outputs.&lt;/li&gt;
&lt;li&gt;They will &lt;strong&gt;complement rather than replace&lt;/strong&gt; autoregressive models in interactive assistants, most likely through hybrids.&lt;/li&gt;
&lt;li&gt;If scaling works out, the parallel step count is a genuine structural advantage, and the "next token" assumption will no longer be the only way to build a large language model. That alone makes NCM one of the most interesting papers of the year.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try it yourself
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/Nishaanth419/ncm-research-playground.git
&lt;span class="nb"&gt;cd&lt;/span&gt; ncm-research-playground/ncm-research-playground
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then follow the step by step setup in the &lt;a href="https://github.com/Nishaanth419/ncm-research-playground#setup-step-by-step" rel="noopener noreferrer"&gt;README&lt;/a&gt;. It takes about 20 minutes, mostly downloads, and needs no GPU.&lt;/p&gt;

&lt;h2&gt;
  
  
  Recommended videos
&lt;/h2&gt;

&lt;p&gt;These are third party explainers I found useful (not reviewed for accuracy):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.youtube.com/watch?v=z3CoFbZhYGA" rel="noopener noreferrer"&gt;NCM: Fast Parallel Coarse-to-Fine Text Generation&lt;/a&gt;, AI Research Roundup: a paper walkthrough&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.youtube.com/watch?v=cysJAICGEiA" rel="noopener noreferrer"&gt;Stanford's NCM: Generate Text Without Predicting Every Token?&lt;/a&gt;, AgenticEngineering: the code hierarchy explained&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.youtube.com/watch?v=J0tqdxQ8PHg" rel="noopener noreferrer"&gt;Next-Concept Modeling Explained: Can AI Move Beyond Tokens?&lt;/a&gt;, KeepItTechie: a beginner friendly overview&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.youtube.com/watch?v=vLqswKyHS64" rel="noopener noreferrer"&gt;NCM Is this the End of LLMs?&lt;/a&gt;, Kai: a skeptical look at the 31x claim&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.youtube.com/watch?v=yQvELPjmyn0" rel="noopener noreferrer"&gt;Vector-Quantized Variational Autoencoders (VQ-VAEs)&lt;/a&gt;, DeepBean: background on the tokenizer NCM builds on&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Kumbong, H., Khare, I. S., Mlauzi, I., Woen, A., Ding, C., Buchanan, E. K., Arora, S., Mirhoseini, A., and Ré, C. (2026). &lt;em&gt;Next-Concept Modeling: Fast, Parallel Coarse-to-Fine Text Generation.&lt;/em&gt; arXiv:2610.14162. &lt;a href="https://arxiv.org/abs/2610.14162" rel="noopener noreferrer"&gt;https://arxiv.org/abs/2610.14162&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;HazyResearch. &lt;em&gt;NCM official code&lt;/em&gt; (MIT license). &lt;a href="https://github.com/HazyResearch/ncm" rel="noopener noreferrer"&gt;https://github.com/HazyResearch/ncm&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;HazyResearch. &lt;em&gt;NCM checkpoints and datasets&lt;/em&gt; on Hugging Face. &lt;a href="https://huggingface.co/collections/hazyresearch/ncm" rel="noopener noreferrer"&gt;https://huggingface.co/collections/hazyresearch/ncm&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Hazy Research blog. &lt;em&gt;Next-Concept Modeling.&lt;/em&gt; &lt;a href="https://hazyresearch.stanford.edu/blog/2026-10-12-ncm" rel="noopener noreferrer"&gt;https://hazyresearch.stanford.edu/blog/2026-10-12-ncm&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Scaling Intelligence Lab blog. &lt;em&gt;NCM.&lt;/em&gt; &lt;a href="https://scalingintelligence.stanford.edu/blogs/ncm/" rel="noopener noreferrer"&gt;https://scalingintelligence.stanford.edu/blogs/ncm/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Tian, K., Jiang, Y., Yuan, Z., Peng, B., and Wang, L. (2024). &lt;em&gt;Visual Autoregressive Modeling: Scalable Image Generation via Next-Scale Prediction.&lt;/em&gt; NeurIPS 2024. &lt;a href="https://arxiv.org/abs/2404.02905" rel="noopener noreferrer"&gt;https://arxiv.org/abs/2404.02905&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;van den Oord, A., Vinyals, O., and Kavukcuoglu, K. (2017). &lt;em&gt;Neural Discrete Representation Learning&lt;/em&gt; (VQ-VAE). &lt;a href="https://arxiv.org/abs/1711.00937" rel="noopener noreferrer"&gt;https://arxiv.org/abs/1711.00937&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Eldan, R., and Li, Y. (2023). &lt;em&gt;TinyStories: How Small Can Language Models Be and Still Speak Coherent English?&lt;/em&gt; &lt;a href="https://arxiv.org/abs/2305.07759" rel="noopener noreferrer"&gt;https://arxiv.org/abs/2305.07759&lt;/a&gt;. Dataset: &lt;a href="https://huggingface.co/datasets/roneneldan/TinyStories" rel="noopener noreferrer"&gt;https://huggingface.co/datasets/roneneldan/TinyStories&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Narayan, S., Cohen, S. B., and Lapata, M. (2018). &lt;em&gt;Don't Give Me the Details, Just the Summary! Topic-Aware Convolutional Neural Networks for Extreme Summarization&lt;/em&gt; (XSum). &lt;a href="https://arxiv.org/abs/1808.08745" rel="noopener noreferrer"&gt;https://arxiv.org/abs/1808.08745&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bojar, O., et al. (2014). &lt;em&gt;Findings of the 2014 Workshop on Statistical Machine Translation&lt;/em&gt; (WMT14). &lt;a href="https://aclanthology.org/W14-3302/" rel="noopener noreferrer"&gt;https://aclanthology.org/W14-3302/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Radford, A., Wu, J., Child, R., Luan, D., Amodei, D., and Sutskever, I. (2019). &lt;em&gt;Language Models are Unsupervised Multitask Learners&lt;/em&gt; (GPT-2). &lt;a href="https://huggingface.co/gpt2-large" rel="noopener noreferrer"&gt;https://huggingface.co/gpt2-large&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;TinyStories-33M baseline model. &lt;a href="https://huggingface.co/roneneldan/TinyStories-33M" rel="noopener noreferrer"&gt;https://huggingface.co/roneneldan/TinyStories-33M&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;My repository: &lt;em&gt;NCM Research Playground.&lt;/em&gt; &lt;a href="https://github.com/Nishaanth419/ncm-research-playground" rel="noopener noreferrer"&gt;https://github.com/Nishaanth419/ncm-research-playground&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;em&gt;If you run the playground on a GPU or try NCM on a new task, I would love to hear what you find. Drop a comment below.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>machinelearning</category>
      <category>ai</category>
      <category>llm</category>
      <category>research</category>
    </item>
    <item>
      <title>The Labor Calculus of AGI: Structural Displacement, Sociotechnical Risk, and the Practitioner's Responsibility</title>
      <dc:creator>Nishaanth Nattudurai</dc:creator>
      <pubDate>Mon, 07 Sep 2026 07:49:02 +0000</pubDate>
      <link>https://dev.to/nishaanth_11/the-labor-calculus-of-agi-structural-displacement-sociotechnical-risk-and-the-practitioners-26ke</link>
      <guid>https://dev.to/nishaanth_11/the-labor-calculus-of-agi-structural-displacement-sociotechnical-risk-and-the-practitioners-26ke</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Abstract:&lt;/strong&gt; The transition from narrow AI to AGI represents a potential discontinuity in how cognitive labor is organized and compensated. Unlike prior automation waves, AGI threatens to substitute human judgment across the full professional spectrum. This essay examines displacement mechanisms, distributional risk, and the normative responsibilities of AI/ML practitioners.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  1. Framing the Problem: What Makes AGI Different
&lt;/h2&gt;

&lt;p&gt;AGI is conventionally understood as a system capable of performing any intellectual task a human can, including reasoning under uncertainty, cross-domain transfer, and autonomous goal-directed behavior. This distinguishes it categorically from today's LLMs and multimodal systems, which remain brittle outside their training distribution and lack robust causal world models.&lt;/p&gt;

&lt;p&gt;With narrow AI, displacement has historically been &lt;strong&gt;task-level&lt;/strong&gt;. The compensating mechanisms (task recomposition, productivity gains, new roles) have absorbed much displaced labor, albeit unevenly. AGI changes this calculus qualitatively. If a system can substitute for human cognition across arbitrary domains, no task-level safe harbor exists.&lt;/p&gt;

&lt;h3&gt;
  
  
  How automation scope has shifted across waves
&lt;/h3&gt;

&lt;p&gt;The key insight: every prior wave left creative and judgment work largely intact. AGI does not.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Automation scope by task category (estimated %)
================================================

Industrial wave
  Manual/physical  ████████████████████████████████████ 90%
  Cognitive        ██ 5%
  Creative/judgment██ 5%

Digital/software wave
  Manual/physical  ████████████████ 40%
  Cognitive        ████████████████████ 50%
  Creative/judgment████ 10%

AGI (projected)
  Manual/physical  ██████████ 25%
  Cognitive        ██████████████████████████ 65%
  Creative/judgment████████████████████ 55%  ← NEW FRONTIER
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  2. Displacement Mechanisms: Beyond the Task-Level Model
&lt;/h2&gt;

&lt;p&gt;Economic models of automation typically decompose jobs into task bundles and assess automation susceptibility task-by-task (Acemoglu &amp;amp; Restrepo, 2018; Frey &amp;amp; Osborne, 2013). This framework is likely insufficient for AGI-level systems.&lt;/p&gt;

&lt;h3&gt;
  
  
  2.1 Cognitive labor as a tradeable good
&lt;/h3&gt;

&lt;p&gt;Once general cognitive capability is abundant and cheap, it behaves like a &lt;strong&gt;commodity&lt;/strong&gt;. Fields insulated through credential requirements, tacit knowledge, or regulatory gatekeeping (medicine, law, financial analysis, software engineering) face structural wage compression even before full substitution occurs.&lt;/p&gt;

&lt;h3&gt;
  
  
  2.2 The productivity-employment decoupling
&lt;/h3&gt;

&lt;p&gt;Historically, productivity gains drove employment growth through demand expansion. The speed and breadth of AGI-driven gains may outpace demand expansion, particularly in economies with already-saturated consumer markets.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Productivity vs. Employment Index, 2025–2041 (Base = 100)
==========================================================

Index
 300 |                                              ● Productivity
     |                                         ●
 250 |                                    ●
     |                               ●
 200 |                          ●
     |                     ●
 150 |               ●
     |          ●
 100 |●----●----●----●----●----●----●----● Employment (cognitive)
     |                                   ↘ 78 by 2041
  70 +----+----+----+----+----+----+----+----
    2025 2027 2029 2031 2033 2035 2037 2039 2041
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If an AGI-augmented firm of 10 can produce what previously required 100, aggregate demand does not automatically compensate, especially if gains accrue disproportionately to capital owners.&lt;/p&gt;

&lt;h3&gt;
  
  
  2.3 Complementarity inversion
&lt;/h3&gt;

&lt;p&gt;Current AI systems exhibit strong human complementarity in judgment-intensive tasks. AGI reduces or eliminates these niches. Practitioners should treat &lt;strong&gt;"this requires human judgment"&lt;/strong&gt; as a temporally bounded claim, not a stable property.&lt;/p&gt;




&lt;h2&gt;
  
  
  3. Distributional Asymmetries: Who Bears the Transition Cost
&lt;/h2&gt;

&lt;p&gt;Displacement from AGI is unlikely to be uniformly distributed.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;~62%&lt;/strong&gt; of knowledge-worker jobs have high AGI substitutability &lt;em&gt;(Goldman Sachs, 2023)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;10 to 25 years&lt;/strong&gt; — mid-career cohort faces highest transition cost and lowest retraining ROI&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;~5x&lt;/strong&gt; income concentration in frontier-AI regions vs. labor-displacement regions&lt;/p&gt;




&lt;h3&gt;
  
  
  AGI substitutability by occupation
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Exposure index (0–100)    Risk
======================================
Software engineering  78  🔴 HIGH
Legal analysis        74  🔴 HIGH
Financial analysis    71  🔴 HIGH
Medical diagnosis     63  🔴 HIGH
Mgmt. consulting      60  🔴 HIGH
──────────────────────────────────────
Skilled trades        28  🟡 MEDIUM
──────────────────────────────────────
Elderly care          18  🟢 LOWER
Crisis counseling     14  🟢 LOWER
======================================
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;Unlike prior automation waves that disproportionately affected low-skill workers, AGI may exhibit an &lt;strong&gt;inverted profile&lt;/strong&gt;, displacing mid-to-high-skill cognitive workers while leaving physically demanding, socially embedded, or highly context-specific roles comparatively intact.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  4. Sociotechnical Risk: The Alignment-Labor Intersection
&lt;/h2&gt;

&lt;p&gt;A distinct class of sociotechnical risk arises at the intersection of alignment and labor economics that receives comparatively less attention from the research community.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Risk&lt;/th&gt;
&lt;th&gt;Severity&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Replacement without consent&lt;/td&gt;
&lt;td&gt;🔴 High&lt;/td&gt;
&lt;td&gt;Workers bear transition costs with no formal recourse in deployment decisions&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Skill investment mismatch&lt;/td&gt;
&lt;td&gt;🔴 High&lt;/td&gt;
&lt;td&gt;Education pipelines invest in skills AGI may invalidate before the degree matures&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Model governance gap&lt;/td&gt;
&lt;td&gt;🟡 Medium&lt;/td&gt;
&lt;td&gt;Deployment decisions treated as technical choices, not labor policy&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Geographic rent capture&lt;/td&gt;
&lt;td&gt;🟡 Medium&lt;/td&gt;
&lt;td&gt;AGI gains concentrate in frontier jurisdictions; displacement is global&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Demand feedback collapse&lt;/td&gt;
&lt;td&gt;🟡 Medium&lt;/td&gt;
&lt;td&gt;Rapid productivity gains limit post-industrial reabsorption mechanisms&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Late-career displacement&lt;/td&gt;
&lt;td&gt;🟢 Lower&lt;/td&gt;
&lt;td&gt;Shorter horizons reduce transition cost but also recovery options&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  The "replacement without consent" problem
&lt;/h3&gt;

&lt;p&gt;Current deployment norms permit organizations to substitute human labor with AI systems without affording affected workers meaningful participation. The AI/ML practitioner who ships a system eliminating 5,000 analyst roles bears no formal accountability for the resulting economic harm — a structural misalignment of incentive and consequence.&lt;/p&gt;

&lt;h3&gt;
  
  
  Model governance as labor policy
&lt;/h3&gt;

&lt;p&gt;Decisions about what capabilities to deploy, at what pace, and under what conditions are, substantively, &lt;strong&gt;labor policy decisions&lt;/strong&gt;. A frontier lab's choice to release a coding agent performing junior-level engineering work is functionally equivalent to a policy decision about engineering employment. This framing is increasingly inadequate.&lt;/p&gt;




&lt;h2&gt;
  
  
  5. The Practitioner's Responsibility
&lt;/h2&gt;

&lt;p&gt;AI/ML practitioners occupy a distinctive position: technical literacy to understand capability trajectories, institutional proximity to influence deployment decisions, and professional credibility to shape public discourse. This position carries normative weight.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Epistemic honesty about timelines&lt;/strong&gt;&lt;br&gt;
Resist both catastrophism and dismissiveness. The honest position is significant uncertainty combined with acknowledgment that this uncertainty warrants precautionary institutional investment.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Participation in governance structures&lt;/strong&gt;&lt;br&gt;
Technical expertise is underrepresented in the policy processes shaping AGI governance, labor law, and social safety net design. Active participation (not just consultation) is warranted.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Impact-aware system design&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Prefer phased deployment that enables labor market adjustment&lt;/li&gt;
&lt;li&gt;Default to human-in-the-loop architectures where feasible&lt;/li&gt;
&lt;li&gt;Include explicit consideration of second-order labor effects in design reviews&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;4. Institutional advocacy&lt;/strong&gt;&lt;br&gt;
Practitioners are often the only individuals with both technical knowledge and organizational standing to raise displacement concerns credibly. This creates an obligation to do so, even when commercially inconvenient.&lt;/p&gt;




&lt;h2&gt;
  
  
  6. Open Research Questions
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Research Priority Matrix
(Upper-left = high urgency, low coverage = most underserved)

Urgency
  High |  ● Displacement velocity     ● Governance
       |    modeling                    mechanism design
       |
  Med  |       ● Transition
       |         support systems
       |
  Low  |                    ● Human complementarity
       |                      residuals
       +-------------------------------
            Low         Med         High
                  Current research coverage
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Research question&lt;/th&gt;
&lt;th&gt;Urgency&lt;/th&gt;
&lt;th&gt;Coverage&lt;/th&gt;
&lt;th&gt;Impact&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Displacement velocity modeling&lt;/td&gt;
&lt;td&gt;Very high&lt;/td&gt;
&lt;td&gt;Very low&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Governance mechanism design&lt;/td&gt;
&lt;td&gt;Very high&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Transition support systems&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;td&gt;Low&lt;/td&gt;
&lt;td&gt;Very high&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Human complementarity residuals&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  7. Conclusion
&lt;/h2&gt;

&lt;p&gt;AGI, if realized at the capability levels the field is converging toward, represents a structural discontinuity in the economics of cognitive labor. The displacement mechanisms are qualitatively distinct from prior automation waves; the distributional risks are significant and unevenly borne; and the governance infrastructure is substantially inadequate to the challenge.&lt;/p&gt;

&lt;p&gt;For AI/ML practitioners, this is not merely a background policy concern. The systems we build, the deployment decisions we participate in, and the discourse we shape are substantive inputs to how this transition unfolds. The technical community's engagement with the socioeconomic dimensions of AGI is not tangential to the work; it is increasingly central to it.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why I wrote this
&lt;/h2&gt;

&lt;p&gt;I work at the intersection of production AI systems and applied ML, and I've noticed a gap: the technical community spends enormous energy on capability and alignment research, but the labor economics of what we're building gets treated as someone else's problem. It isn't. Every system we ship is implicitly a labor policy decision, and I think practitioners are the people best positioned to say that out loud.&lt;/p&gt;

&lt;p&gt;I'd love to hear from you in the comments:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Are there domains you think are genuinely AGI-resistant long-term?&lt;/strong&gt; I listed a few but I hold those claims loosely.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How does your team think about second-order labor effects when scoping a product?&lt;/strong&gt; Or does it not come up at all?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;If you're mid-career in a high-exposure field, how are you thinking about the transition?&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;No right answers here. The point is to have the conversation before the decisions are already made.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;References available on request. Views expressed are my own.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>agi</category>
      <category>machinelearning</category>
      <category>career</category>
      <category>discuss</category>
    </item>
  </channel>
</rss>
