What an agent actually is
A chatbot stops when it has answered. An agent stops when the job is done. That gap is the whole category.
Part of the Agents track on lAItest.
A chatbot stops when it has answered. An agent stops when the job is done, or when someone stops it.
That difference is the entire category.
A common misconception
Commonly believed: An agent is a smarter kind of model. Somebody trained a special agent model, and that training is what lets it do things instead of just talking.
Actually: It is usually the same model you already chat with. What makes it an agent is the scaffolding around it: a set of tools it is allowed to request, a program that runs it again after each result, and permission to act on something real.
Three parts, and none of them are exotic
A model that predicts the next token. A set of tools it may ask for by name. A program that runs the model, executes the tools it asks for, feeds the results back, and decides whether to go around again. Take away the loop and you have a chatbot. Take away the tools and you have a chatbot that thinks harder before saying it cannot help.
Which change turns a chatbot into an agent?
Answer: Letting it call tools and running it again with the results. The model can be identical. The agent is the loop around it: request a tool, run it, feed the result back, run the model again. A longer window and different sampling change the output; they do not give the system a way to act.
In one sentence
An agent is a model plus tools plus a loop, and almost all of the engineering lives in the loop.