Why 'Next-Token Predictor' Is the Wrong Mental Model for LLMs
Calling an LLM a “next-token predictor” isn’t wrong—it’s incomplete. That framing describes the mechanism (autoregressive token generation) but ignores what post-training encodes: simulation of a helpful assistant and knowledge discovered through exploration.
The Training Loops
Pre-training is indeed next-token prediction:
for tokens in training_data:
for position in range(1, len(tokens)):
prior_tokens = tokens[:position]
actual_next_token = tokens[position]
model.make_more_likely(actual_next_token, after=prior_tokens)
But modern LLMs undergo RLVR (reinforcement learning with verifiable rewards), which looks different:
for task in training_tasks:
for explored_tokens in model.explore(task):
reward = evaluate_outcome(task, explored_tokens)
for position in range(len(explored_tokens)):
prior_tokens = task + explored_tokens[:position]
explored_next_token = explored_tokens[position]
model.make_more_likely(explored_next_token, after=prior_tokens, according_to=reward)
During RLVR, the model generates new sequences and learns from outcomes—never seen in training data. That’s fundamentally different from just imitating existing text.
Chess Analogy
Think of two chess systems. One trained only on grandmaster games predicts the most likely next move—a next-move predictor. Another exhaustively explores all possible games, knows win probability from every position, and picks the move that maximizes winning. Calling the second a “next-move predictor” would be strange—it’s trying to win, not to imitate.
Why It Matters
RLHF also shifts models away from imitation toward helpful-assistant simulation. RLVR goes further, enabling exploration beyond training data. So “next-token predictor” describes the shape but ignores what the loop encodes. A simulation of a helpful assistant and discovered knowledge both fit in the same autoregressive loop—but that’s not all they are.
📖 Read the full source: HN AI Agents
👀 See Also

Claude Sonnet 4.5 Experiencing Elevated Errors — Status Update
Claude Sonnet 4.5 is currently experiencing elevated errors as of 2026-04-28T13:29:56.000Z. Check the status page and Reddit megathread for updates.

Claude-Code v2.1.80 adds rate limit monitoring, plugin improvements, and memory optimizations
Claude-Code v2.1.80 introduces a rate_limits field for statusline scripts to display Claude.ai usage, adds source: 'settings' plugin marketplace support, and reduces memory usage by ~80 MB in large repositories. The release also fixes parallel tool result restoration, WebSocket failures, and various UI issues.
OpenClaw v2026.9.4: Plugin Discovery, Guided Skill Learning, GPT Image 2.5
OpenClaw v2026.9.4 merges installed and available plugins and skills into one search, adds a steerable Skill Workshop that turns past conversations into reusable skills, and adds GPT Image 2.5 Flare and Sunburst support.
OpenClaw v2026.9.1 adds Mermaid rendering in chat, fuller Android app, and safer update recovery
OpenClaw v2026.9.1 renders Mermaid diagrams in chat across all clients, expands the Android app's chat/session features, and improves update failure recovery with pre-restart checks and clearer rollback paths.