Tools
Agents use tools to take actions and interact with external systems.
Last updated
Agents use tools to take actions and interact with external systems.
Last updated
Tools are functions that an Agent can run to achieve tasks. For example: searching the web, running SQL, sending an email or calling APIs. You can use any python function as a tool or use a pre-built toolkit. The general syntax is:
Bitca provides many pre-built toolkits that you can add to your Agents. For example, let’s use the DuckDuckGo toolkit to search the web.
Create Web Search Agent
Create a file web_search.py
web_search.py
The following attributes allow an Agent
to use tools
tools
List[Union[Tool, Toolkit, Callable, Dict, Function]]
-
A list of tools provided to the Model. Tools are functions the model may generate JSON inputs for.
show_tool_calls
bool
False
Print the signature of the tool calls in the Model response.
tool_call_limit
int
-
Maximum number of tool calls allowed.
tool_choice
Union[str, Dict[str, Any]]
-
Controls which (if any) tool is called by the model. “none” means the model will not call a tool and instead generates a message. “auto” means the model can pick between generating a message or calling a tool. Specifying a particular function via {"type": "function", "function": {"name": "my_function"}}
forces the model to call that tool. “none” is the default when no tools are present. “auto” is the default if tools are present.
read_chat_history
bool
False
Add a tool that allows the Model to read the chat history.
search_knowledge
bool
False
Add a tool that allows the Model to search the knowledge base (aka Agentic RAG).
update_knowledge
bool
False
Add a tool that allows the Model to update the knowledge base.
read_tool_call_history
bool
False
Add a tool that allows the Model to get the tool call history.