Home / Class/ Tool Class — langchain Architecture

Tool Class — langchain Architecture

Architecture documentation for the Tool class in test_function_calling.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  531484e8_26e5_7d4b_df80_f44c960afc2e["Tool"]
  6f1e8e6f_d3f9_e590_b17e_1dc8afafdbe0["test_function_calling.py"]
  531484e8_26e5_7d4b_df80_f44c960afc2e -->|defined in| 6f1e8e6f_d3f9_e590_b17e_1dc8afafdbe0

Relationship Graph

Source Code

libs/core/tests/unit_tests/utils/test_function_calling.py lines 810–833

    class Tool(typed_dict):  # type: ignore[misc]
        """Docstring.

        Args:
            arg1: foo
        """

        arg1: str
        arg2: int | str | bool
        arg3: list[SubTool] | None
        arg4: annotated[Literal["bar", "baz"], ..., "this does foo"]  # noqa: F722
        arg5: annotated[float | None, None]
        arg6: annotated[
            Sequence[Mapping[str, tuple[Iterable[Any], SubTool]]] | None, []
        ]
        arg7: annotated[list[SubTool], ...]
        arg8: annotated[tuple[SubTool], ...]
        arg9: annotated[Sequence[SubTool], ...]
        arg10: annotated[Iterable[SubTool], ...]
        arg11: annotated[set[SubTool], ...]
        arg12: annotated[dict[str, SubTool], ...]
        arg13: annotated[Mapping[str, SubTool], ...]
        arg14: annotated[MutableMapping[str, SubTool], ...]
        arg15: annotated[bool, False, "flag"]  # noqa: F821

Frequently Asked Questions

What is the Tool class?
Tool is a class in the langchain codebase, defined in libs/core/tests/unit_tests/utils/test_function_calling.py.
Where is Tool defined?
Tool is defined in libs/core/tests/unit_tests/utils/test_function_calling.py at line 810.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free