load_tools#

langchain_community.agent_toolkits.load_tools.load_tools(tool_names: List[str], llm: BaseLanguageModel | None = None, callbacks: List[BaseCallbackHandler] | BaseCallbackManager | None = None, allow_dangerous_tools: bool = False, **kwargs: Any) β†’ List[BaseTool][source]#

Load tools based on their name.

Tools allow agents to interact with various resources and services like APIs, databases, file systems, etc.

Please scope the permissions of each tools to the minimum required for the application.

For example, if an application only needs to read from a database, the database tool should not be given write permissions. Moreover consider scoping the permissions to only allow accessing specific tables and impose user-level quota for limiting resource usage.

Please read the APIs of the individual tools to determine which configuration they support.

See [Security](https://python.langchain.com/docs/security) for more information.

Parameters:
  • tool_names (List[str]) – name of tools to load.

  • llm (BaseLanguageModel | None) – An optional language model may be needed to initialize certain tools. Defaults to None.

  • callbacks (List[BaseCallbackHandler] | BaseCallbackManager | None) – Optional callback manager or list of callback handlers. If not provided, default global callback manager will be used.

  • allow_dangerous_tools (bool) – Optional flag to allow dangerous tools. Tools that contain some level of risk. Please use with caution and read the documentation of these tools to understand the risks and how to mitigate them. Refer to https://python.langchain.com/docs/security for more information. Please note that this list may not be fully exhaustive. It is your responsibility to understand which tools you’re using and the risks associated with them. Defaults to False.

  • kwargs (Any) – Additional keyword arguments.

Returns:

List of tools.

Raises:
  • ValueError – If the tool name is unknown.

  • ValueError – If the tool requires an LLM to be provided.

  • ValueError – If the tool requires some parameters that were not provided.

  • ValueError – If the tool is a dangerous tool and allow_dangerous_tools is False.

Return type:

List[BaseTool]

Examples using load_tools