Source code for autogen_agentchat.agents._tool_use_assistant_agent
import logging
import warnings
from typing import Any, Awaitable, Callable, List
from autogen_core.components.models import (
ChatCompletionClient,
)
from autogen_core.components.tools import Tool
from .. import EVENT_LOGGER_NAME
from ._assistant_agent import AssistantAgent
event_logger = logging.getLogger(EVENT_LOGGER_NAME)
[docs]
class ToolUseAssistantAgent(AssistantAgent):
"""[DEPRECATED] An agent that provides assistance with tool use.
It responds with a StopMessage when 'terminate' is detected in the response.
Args:
name (str): The name of the agent.
model_client (ChatCompletionClient): The model client to use for inference.
registered_tools (List[Tool | Callable[..., Any] | Callable[..., Awaitable[Any]]): The tools to register with the agent.
description (str, optional): The description of the agent.
system_message (str, optional): The system message for the model.
"""
def __init__(
self,
name: str,
model_client: ChatCompletionClient,
registered_tools: List[Tool | Callable[..., Any] | Callable[..., Awaitable[Any]]],
*,
description: str = "An agent that provides assistance with ability to use tools.",
system_message: str = "You are a helpful AI assistant. Solve tasks using your tools. Reply with 'TERMINATE' when the task has been completed.",
):
# Deprecation warning.
warnings.warn(
"ToolUseAssistantAgent is deprecated. Use AssistantAgent instead.",
DeprecationWarning,
stacklevel=2,
)
super().__init__(
name, model_client, tools=registered_tools, description=description, system_message=system_message
)