Skip to content

broadcast

autogen.agentchat.group.targets.function_target.broadcast #

broadcast(messages, group_chat, current_agent, fn_name, target, user_agent=None)

Broadcast message(s) to their target agent.

Source code in autogen/agentchat/group/targets/function_target.py
def broadcast(
    messages: list[FunctionTargetMessage] | str,
    group_chat: GroupChat,
    current_agent: ConversableAgent,
    fn_name: str,
    target: TransitionTarget,
    user_agent: ConversableAgent | None = None,
) -> None:
    """Broadcast message(s) to their target agent."""
    messages_list = construct_broadcast_messages_list(messages, group_chat, current_agent, target, user_agent)

    for message in messages_list:
        content = message.content
        broadcast = {
            "role": "system",
            "name": f"{fn_name}",
            "content": f"[FUNCTION_HANDOFF] - Reply from function {fn_name}: \n\n {content}",
        }
        if hasattr(current_agent, "_group_manager") and current_agent._group_manager is not None:
            current_agent._group_manager.send(
                broadcast,
                message.msg_target,
                request_reply=False,
                silent=False,
            )
        else:
            raise ValueError("Current agent must have a group manager to broadcast messages.")