Home / File/ tool.py — langchain Source File

tool.py — langchain Source File

Architecture documentation for tool.py, a python file in the langchain codebase. 4 imports, 0 dependents.

File python CoreAbstractions Serialization 4 imports 2 functions

Entity Profile

Dependency Diagram

graph LR
  0f1874de_e8ea_ad85_b7c4_43f49a0f68f5["tool.py"]
  8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3["typing"]
  0f1874de_e8ea_ad85_b7c4_43f49a0f68f5 --> 8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3
  439a4142_6fa6_fe9a_2cba_7c9fb0cdceb7["langchain_classic._api"]
  0f1874de_e8ea_ad85_b7c4_43f49a0f68f5 --> 439a4142_6fa6_fe9a_2cba_7c9fb0cdceb7
  97c44105_85ed_f479_19d6_1ae9898b8651["langchain_community.tools"]
  0f1874de_e8ea_ad85_b7c4_43f49a0f68f5 --> 97c44105_85ed_f479_19d6_1ae9898b8651
  f030a88c_ce0d_d180_32c3_4a1704edd40c["langchain_community.tools.ddg_search.tool"]
  0f1874de_e8ea_ad85_b7c4_43f49a0f68f5 --> f030a88c_ce0d_d180_32c3_4a1704edd40c
  style 0f1874de_e8ea_ad85_b7c4_43f49a0f68f5 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

from typing import TYPE_CHECKING, Any

from langchain_classic._api import create_importer

if TYPE_CHECKING:
    from langchain_community.tools import DuckDuckGoSearchResults, DuckDuckGoSearchRun
    from langchain_community.tools.ddg_search.tool import DDGInput, DuckDuckGoSearchTool

# Create a way to dynamically look up deprecated imports.
# Used to consolidate logic for raising deprecation warnings and
# handling optional imports.
DEPRECATED_LOOKUP = {
    "DDGInput": "langchain_community.tools.ddg_search.tool",
    "DuckDuckGoSearchRun": "langchain_community.tools",
    "DuckDuckGoSearchResults": "langchain_community.tools",
    "DuckDuckGoSearchTool": "langchain_community.tools.ddg_search.tool",
}

_import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)


def __getattr__(name: str) -> Any:
    """Look up attributes dynamically."""
    return _import_attribute(name)


__all__ = [
    "DDGInput",
    "DuckDuckGoSearchResults",
    "DuckDuckGoSearchRun",
    "DuckDuckGoSearchTool",
]

Subdomains

Dependencies

  • langchain_classic._api
  • langchain_community.tools
  • langchain_community.tools.ddg_search.tool
  • typing

Frequently Asked Questions

What does tool.py do?
tool.py is a source file in the langchain codebase, written in python. It belongs to the CoreAbstractions domain, Serialization subdomain.
What functions are defined in tool.py?
tool.py defines 2 function(s): __getattr__, langchain_community.
What does tool.py depend on?
tool.py imports 4 module(s): langchain_classic._api, langchain_community.tools, langchain_community.tools.ddg_search.tool, typing.
Where is tool.py in the architecture?
tool.py is located at libs/langchain/langchain_classic/tools/ddg_search/tool.py (domain: CoreAbstractions, subdomain: Serialization, directory: libs/langchain/langchain_classic/tools/ddg_search).

Analyze Your Own Codebase

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

Try Supermodel Free