autogen_agentchat.tools._team 源代码

from autogen_core import Component, ComponentModel
from pydantic import BaseModel
from typing_extensions import Self

from autogen_agentchat.teams import BaseGroupChat

from ._task_runner_tool import TaskRunnerTool


class TeamToolConfig(BaseModel):
    """TeamTool 的配置。"""

    name: str
    description: str
    team: ComponentModel


[文档] class TeamTool(TaskRunnerTool, Component[TeamToolConfig]): """可用于运行任务的工具。 该工具返回任务执行结果,格式为 :class:`~autogen_agentchat.base.TaskResult` 对象。 Args: team (BaseGroupChat): 用于运行任务的团队。 name (str): 工具名称。 description (str): 工具描述。 """ component_config_schema = TeamToolConfig component_provider_override = "autogen_agentchat.tools.TeamTool" def __init__(self, team: BaseGroupChat, name: str, description: str) -> None: self._team = team super().__init__(team, name, description)
[文档] def _to_config(self) -> TeamToolConfig: return TeamToolConfig( name=self._name, description=self._description, team=self._team.dump_component(), )
[文档] @classmethod def _from_config(cls, config: TeamToolConfig) -> Self: return cls(BaseGroupChat.load_component(config.team), config.name, config.description)