Architecture Explainer

Why ChatGPT Forgets: The Stateless LLM & Context Buffer

Every send is a cold boot with total amnesia. Only tokens in the active buffer survive.
Memory & Context Preservation Strategy WINDOW: 512 TOKENS
Raw Sliding Window: Strict FIFO. When the token limit (512) is reached, the earliest turns are dropped from the prompt payload sent to the LLM. The model has zero knowledge of evicted turns.
Context Window Payload Assembly 510 / 512 TOKENS
Used: 510 tokens Evicted: 36 tokens Capacity: 512 tokens
ACTIVE PROMPT PAYLOAD (What the stateless model actually receives) ← OLDEST TOKENS (Vulnerable to Eviction)
⚠️ Memory Recall Probe: Chicken Allergy Test
User Query (Turn 7): "Can I give him boiled chicken breast as a reward?"
Model Output: "Yes! Boiled boneless skinless chicken breast is an outstanding lean reward for dogs..."
Why this happened: Turn 1 containing the chicken allergy was evicted from the 512-token context window when the assistant's lengthy meal plan and treat responses filled the buffer. The stateless model received only turns 2 through 7 and incorrectly approves chicken.

Separate assigned context strategy fixtures from real model behavior

Read the explanation

The seven source turns contain assigned counts totaling five hundred ten, under the assigned five hundred twelve token window. Bars use one pixel per assigned token. The FIFO branch nevertheless explicitly marks turn one evicted and assigns thirty-six evicted tokens; this is not a budget-driven packing algorithm. The example illustrates a possible lost constraint, not observed ChatGPT behavior, tokenization or a real response. The pinning branch labels the first constraint as a system pin and marks the two hundred forty token fourth turn evicted. It assigns used tokens two hundred seventy versus FIFO four hundred seventy-four. Bars use one pixel per assigned token. These totals are branch fixtures; they should not be taken as a measured tokenizer accounting or proof that any real product always preserves instructions. No model call runs. The summary branch replaces the first four source turns with a forty token summary record. Those original turn counts total two hundred eighty-one. Bars show two hundred eighty-one original assigned tokens versus forty summary tokens, at one point seven pixels per token. The record is written in the source, not generated by a background model. Its fixed remembered label illustrates preservation of a constraint, not semantic fidelity or factual correctness of arbitrary summarization.

Super generates helpful tools and automates fact-checking across the internet proactively. If you enjoyed this tool, build your own with Super and share it with a friend.