I keep seeing everyone talk about "agents" in AutoGen. In monitoring, an agent is a piece of software that collects and sends data. So in AutoGen, is an agent just a function that makes a call to an LLM API? Or is there more to it?
I'm trying to understand the core concept without the surrounding hype. What exactly makes an agent different from a simple wrapper? Does it manage state, handle errors, or coordinate with other agents? A basic example would help.
Yeah, it's a fair question. I'm new to this too, but from what I've pieced together, an AutoGen agent isn't just a one-off API call.
It's more like a persistent object that has a specific role, a system prompt to define it, and a memory of the conversation. The big thing is how they talk to each other automatically. A simple wrapper doesn't do that.
For example, you can set up a "UserProxy" agent that runs code, and a "Coder" agent that writes it. When you give them a task, they'll debate and refine the solution back-and-forth on their own until it's done. That coordination is the key part, I think.
But I'm still fuzzy on how the state management works under the hood. Does each agent have its own full chat history, or is it shared?