After Send, it is building a continuation
❓ Hitting Send feels like talking to something. What is the machine actually doing?


Hitting Send on a chat box feels like talking to something. You type. A pause. Words appear one after another. The reply can debug your function, draft a policy, or invent a citation that does not exist.
You already live on this surface. You set a system prompt. You send a user message. You pick a temperature. You cap how long the reply may be. Those knobs work. They still do not tell you what the model is doing.
The comfortable story is that the model knows things and answers questions. That story will keep failing you. It cannot explain why the same model aces a hard exam sample and then cannot count the letters in a short English word you can see with your eyes (chapter 2 tells that quiz). It cannot explain why pasting more documents into the prompt sometimes helps and sometimes drowns the answer. It cannot explain why a made-up citation can still read smoothly.
The model is not fetching an answer from a shelf. It is building a continuation. Every product behavior you care about is a side effect of that construction.
Three pieces, not one ghost

When you call a chat API, three different things are in play. Keep them separate.
The model is a giant numerical function. You give it the text so far. It gives back, for every possible next piece, a chance between 0 and 1. It is not a database. It is not a search engine. It is not a person.
The window — people say context — is the text the function is allowed to see on this step: the system prompt, the chat so far, any documents you pasted, any tool results you stuffed back in. If a fact is not in this window, the model cannot use it on this step, unless that fact was baked into the function earlier while it was being trained. The window is not long-term memory unless you write something back into it.
Your loop is the software you already wrote around the model: send the window, get the next piece, maybe run a tool, glue the result on, send again. The model has no hands. Your loop does.
People call the whole product an “agent” when it is usually model + prompt + tools, wrapped in that loop. The intelligence debate lives in the model’s learned settings. The reliability you ship lives in the loop: what you put in the window, what you allow the model to invoke, when a human has to look.
If you blur those three, every failure looks like “the AI.” If you keep them apart, you can debug.
What happens when you hit Send
One step looks like this.
- Your string is cut into chunks. The usual name is token. A token is often a whole word, a piece of a word, a space, or a punctuation mark. Chapter 3 is the cutting machine. For now: the model never sees letters as letters. It sees a row of IDs.
- Each ID is replaced by a list of numbers that the model learned to stand for that chunk. Chapter 4 is why a list of numbers can carry meaning.
- Those lists are revised, many times. In each revision the chunks share information (so it can pick up animal) and then each list is processed on its own. Chapters 8 and 9 are those two jobs.
- From the list that sits on the last chunk, the model writes a score for every chunk it knows how to say next.
- Those scores are turned into chances that add to 1.
- A picker chooses one chunk. Your loop glues it onto the text. If the model is not done, you run the whole thing again.
There is no inner narrator planning the paragraph in English. There is this loop. If the model “thinks step by step,” that thinking has to be written as more chunks, because the only working memory during a call is the growing window.
After this page, one claim is enough: after Send, the model is trying to produce a good next chunk, not retrieve an answer.
What this still cannot do
If there is no retrieved answer, what exactly is being chosen after Send?
One chunk, or a whole paragraph? Why would one chunk at a time be enough?
What is a “chunk,” and how does the machine choose among thousands of them?
The next page exists because “next chunk” is still a black box.