Agents API
BaseToolAgent
Main synchronous interface:
get_default_settings()step(messages, tool_registry=None, settings=None, reset_last_messages_buffer=True)stream_step(messages, tool_registry=None, settings=None, reset_last_messages_buffer=True)get_response(messages, tool_registry=None, settings=None, reset_last_messages_buffer=True)get_streaming_response(messages, tool_registry=None, settings=None, reset_last_messages_buffer=True)get_last_response()
AsyncBaseToolAgent
Main async interface:
get_default_settings()step(messages, tool_registry=None, settings=None, reset_last_messages_buffer=True)stream_step(messages, tool_registry=None, settings=None, reset_last_messages_buffer=True)get_response(messages, tool_registry=None, settings=None, reset_last_messages_buffer=True)get_streaming_response(messages, tool_registry=None, settings=None, reset_last_messages_buffer=True)get_last_response()
ChatToolAgent
from ToolAgents.agents import ChatToolAgent
agent = ChatToolAgent(chat_api=api_provider, log_output=False, log_to_file=False)
Constructor parameters:
chat_api:ChatAPIProviderlog_output: enable request/response logginglog_to_file: write logs to a timestamped file when logging is enabled
Additional method:
handle_function_calling_response(chat_message, current_messages)
AsyncChatToolAgent
from ToolAgents.agents import AsyncChatToolAgent
agent = AsyncChatToolAgent(chat_api=async_api_provider)
Current constructor parameter:
chat_api:AsyncChatAPIProvider
AdvancedAgent
from ToolAgents import ToolRegistry
from ToolAgents.agents import AdvancedAgent, ChatToolAgent
from ToolAgents.agents.advanced_agent import AgentConfig
base_agent = ChatToolAgent(chat_api=api_provider)
advanced_agent = AdvancedAgent(
agent=base_agent,
tool_registry=ToolRegistry(),
agent_config=AgentConfig(),
)
Constructor parameters:
agent: baseBaseToolAgentimplementationtool_registry: optionalToolRegistryagent_config: optionalAgentConfiguser_name: optional display name for the userassistant_name: optional display name for the assistantdebug_mode: enable verbose agent internals
Response Types
ChatResponse
Fields:
messages: full message list accumulated by the agentresponse: final assistant text
ChatResponseChunk
Fields:
chunkhas_tool_calltool_callhas_tool_call_resulttool_call_resultfinishedfinished_response
Helper methods:
get_tool_name()get_tool_arguments()get_tool_results()