__init__.py — langchain Source File
Architecture documentation for __init__.py, a python file in the langchain codebase. 8 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 5c1862ac_9968_a75d_a4f6_cda40327c6b3["__init__.py"] 8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3["typing"] 5c1862ac_9968_a75d_a4f6_cda40327c6b3 --> 8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3 923d222e_e249_1c30_4cfe_3c907f050b78["langchain_core._import_utils"] 5c1862ac_9968_a75d_a4f6_cda40327c6b3 --> 923d222e_e249_1c30_4cfe_3c907f050b78 17795dda_8689_7308_3ff9_4b900129bd10["langchain_core.tools.base"] 5c1862ac_9968_a75d_a4f6_cda40327c6b3 --> 17795dda_8689_7308_3ff9_4b900129bd10 32e7bea2_0f8a_4503_4a9c_841f81e51095["langchain_core.tools.convert"] 5c1862ac_9968_a75d_a4f6_cda40327c6b3 --> 32e7bea2_0f8a_4503_4a9c_841f81e51095 ca5ba58c_877f_7975_369b_ca5e40124948["langchain_core.tools.render"] 5c1862ac_9968_a75d_a4f6_cda40327c6b3 --> ca5ba58c_877f_7975_369b_ca5e40124948 ea346aba_8d69_0400_e065_511baeaa1d64["langchain_core.tools.retriever"] 5c1862ac_9968_a75d_a4f6_cda40327c6b3 --> ea346aba_8d69_0400_e065_511baeaa1d64 cdf8b60a_a434_4e87_10e0_a0f069a815dc["langchain_core.tools.simple"] 5c1862ac_9968_a75d_a4f6_cda40327c6b3 --> cdf8b60a_a434_4e87_10e0_a0f069a815dc b92c1fb2_4ef7_7241_137f_75491d966733["langchain_core.tools.structured"] 5c1862ac_9968_a75d_a4f6_cda40327c6b3 --> b92c1fb2_4ef7_7241_137f_75491d966733 style 5c1862ac_9968_a75d_a4f6_cda40327c6b3 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
"""Tools are classes that an Agent uses to interact with the world.
Each tool has a description. Agent uses the description to choose the righ tool for the
job.
"""
from __future__ import annotations
from typing import TYPE_CHECKING
from langchain_core._import_utils import import_attr
if TYPE_CHECKING:
from langchain_core.tools.base import (
FILTERED_ARGS,
ArgsSchema,
BaseTool,
BaseToolkit,
InjectedToolArg,
InjectedToolCallId,
SchemaAnnotationError,
ToolException,
_get_runnable_config_param,
create_schema_from_function,
)
from langchain_core.tools.convert import (
convert_runnable_to_tool,
tool,
)
from langchain_core.tools.render import (
ToolsRenderer,
render_text_description,
render_text_description_and_args,
)
from langchain_core.tools.retriever import (
RetrieverInput,
create_retriever_tool,
)
from langchain_core.tools.simple import Tool
from langchain_core.tools.structured import StructuredTool
__all__ = (
"FILTERED_ARGS",
"ArgsSchema",
"BaseTool",
"BaseToolkit",
"InjectedToolArg",
"InjectedToolCallId",
"RetrieverInput",
"SchemaAnnotationError",
"StructuredTool",
"Tool",
"ToolException",
"ToolsRenderer",
"_get_runnable_config_param",
"convert_runnable_to_tool",
"create_retriever_tool",
"create_schema_from_function",
"render_text_description",
"render_text_description_and_args",
"tool",
)
_dynamic_imports = {
"FILTERED_ARGS": "base",
"ArgsSchema": "base",
"BaseTool": "base",
"BaseToolkit": "base",
"InjectedToolArg": "base",
"InjectedToolCallId": "base",
"SchemaAnnotationError": "base",
"ToolException": "base",
"_get_runnable_config_param": "base",
"create_schema_from_function": "base",
"convert_runnable_to_tool": "convert",
"tool": "convert",
"ToolsRenderer": "render",
"render_text_description": "render",
"render_text_description_and_args": "render",
"RetrieverInput": "retriever",
"create_retriever_tool": "retriever",
"Tool": "simple",
"StructuredTool": "structured",
}
def __getattr__(attr_name: str) -> object:
module_name = _dynamic_imports.get(attr_name)
result = import_attr(attr_name, module_name, __spec__.parent)
globals()[attr_name] = result
return result
def __dir__() -> list[str]:
return list(__all__)
Domain
Subdomains
Functions
Dependencies
- langchain_core._import_utils
- langchain_core.tools.base
- langchain_core.tools.convert
- langchain_core.tools.render
- langchain_core.tools.retriever
- langchain_core.tools.simple
- langchain_core.tools.structured
- typing
Source
Frequently Asked Questions
What does __init__.py do?
__init__.py is a source file in the langchain codebase, written in python. It belongs to the AgentOrchestration domain, ToolInterface subdomain.
What functions are defined in __init__.py?
__init__.py defines 3 function(s): __dir__, __getattr__, langchain_core.
What does __init__.py depend on?
__init__.py imports 8 module(s): langchain_core._import_utils, langchain_core.tools.base, langchain_core.tools.convert, langchain_core.tools.render, langchain_core.tools.retriever, langchain_core.tools.simple, langchain_core.tools.structured, typing.
Where is __init__.py in the architecture?
__init__.py is located at libs/core/langchain_core/tools/__init__.py (domain: AgentOrchestration, subdomain: ToolInterface, directory: libs/core/langchain_core/tools).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free