mirror of
https://github.com/microsoft/autogen.git
synced 2025-12-13 07:51:21 +00:00
## Why are these changes needed? This PR implements unique ID fields for AgentChat messages to enable proper correlation between streaming chunks and completed messages. Currently, there's no way to correlate `ModelClientStreamingChunkEvent` chunks with their eventual completed message, which can lead to duplicate message display in streaming scenarios. The implementation adds: - `id: str` field to `BaseChatMessage` with automatic UUID generation - `id: str` field to `BaseAgentEvent` with automatic UUID generation - `full_message_id: str | None` field to `ModelClientStreamingChunkEvent` for chunk-to-message correlation This allows consumers of the streaming API to avoid double-printing messages by correlating chunks with their final complete message. ## Related issue number Closes #6317 ## Checks - [x] I've included any doc changes needed for <https://microsoft.github.io/autogen/>. See <https://github.com/microsoft/autogen/blob/main/CONTRIBUTING.md> to build and test documentation locally. - [x] I've added tests (if relevant) corresponding to the changes introduced in this PR. - [x] I've made sure all auto checks have passed. --------- Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
AutoGen AgentChat
AgentChat is a high-level API for building multi-agent applications.
It is built on top of the autogen-core package.
For beginner users, AgentChat is the recommended starting point.
For advanced users, autogen-core's event-driven
programming model provides more flexibility and control over the underlying components.
AgentChat provides intuitive defaults, such as Agents with preset behaviors and Teams with predefined multi-agent design patterns.