Home / File/ __init__.py — langchain Source File

__init__.py — langchain Source File

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

File python CoreAbstractions Serialization 5 imports 3 functions

Entity Profile

Dependency Diagram

graph LR
  3fb25088_19d0_8a84_9092_892eeeb27c19["__init__.py"]
  8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3["typing"]
  3fb25088_19d0_8a84_9092_892eeeb27c19 --> 8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3
  923d222e_e249_1c30_4cfe_3c907f050b78["langchain_core._import_utils"]
  3fb25088_19d0_8a84_9092_892eeeb27c19 --> 923d222e_e249_1c30_4cfe_3c907f050b78
  f10c7807_dbfb_545d_042b_5250f9fd7d51["langchain_core.load.dump"]
  3fb25088_19d0_8a84_9092_892eeeb27c19 --> f10c7807_dbfb_545d_042b_5250f9fd7d51
  553b7d61_3a8f_8bb0_a4d7_a5aed262f254["langchain_core.load.load"]
  3fb25088_19d0_8a84_9092_892eeeb27c19 --> 553b7d61_3a8f_8bb0_a4d7_a5aed262f254
  30d1300e_92bb_90d4_ac5e_1afe56db09d2["langchain_core.load.serializable"]
  3fb25088_19d0_8a84_9092_892eeeb27c19 --> 30d1300e_92bb_90d4_ac5e_1afe56db09d2
  style 3fb25088_19d0_8a84_9092_892eeeb27c19 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

"""**Load** module helps with serialization and deserialization."""

from typing import TYPE_CHECKING

from langchain_core._import_utils import import_attr

if TYPE_CHECKING:
    from langchain_core.load.dump import dumpd, dumps
    from langchain_core.load.load import InitValidator, loads
    from langchain_core.load.serializable import Serializable

# Unfortunately, we have to eagerly import load from langchain_core/load/load.py
# eagerly to avoid a namespace conflict. We want users to still be able to use
# `from langchain_core.load import load` to get the load function, but
# the `from langchain_core.load.load import load` absolute import should also work.
from langchain_core.load.load import load

__all__ = (
    "InitValidator",
    "Serializable",
    "dumpd",
    "dumps",
    "load",
    "loads",
)

_dynamic_imports = {
    "dumpd": "dump",
    "dumps": "dump",
    "InitValidator": "load",
    "loads": "load",
    "Serializable": "serializable",
}


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__)

Subdomains

Dependencies

  • langchain_core._import_utils
  • langchain_core.load.dump
  • langchain_core.load.load
  • langchain_core.load.serializable
  • typing

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 CoreAbstractions domain, Serialization 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 5 module(s): langchain_core._import_utils, langchain_core.load.dump, langchain_core.load.load, langchain_core.load.serializable, typing.
Where is __init__.py in the architecture?
__init__.py is located at libs/core/langchain_core/load/__init__.py (domain: CoreAbstractions, subdomain: Serialization, directory: libs/core/langchain_core/load).

Analyze Your Own Codebase

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

Try Supermodel Free