Home / Function/ _extract_metadata() — langchain Function Reference

_extract_metadata() — langchain Function Reference

Architecture documentation for the _extract_metadata() function in factory.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  617d184c_c260_2f26_eae8_c01c084ef9e6["_extract_metadata()"]
  fd7a28b1_3772_169b_6524_1342f35143b1["factory.py"]
  617d184c_c260_2f26_eae8_c01c084ef9e6 -->|defined in| fd7a28b1_3772_169b_6524_1342f35143b1
  833c00b4_ff65_504a_fd91_d0dd020207ea["_resolve_schema()"]
  833c00b4_ff65_504a_fd91_d0dd020207ea -->|calls| 617d184c_c260_2f26_eae8_c01c084ef9e6
  style 617d184c_c260_2f26_eae8_c01c084ef9e6 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/langchain_v1/langchain/agents/factory.py lines 421–433

def _extract_metadata(type_: type) -> list[Any]:
    """Extract metadata from a field type, handling `Required`/`NotRequired` and `Annotated` wrappers."""  # noqa: E501
    # Handle Required[Annotated[...]] or NotRequired[Annotated[...]]
    if get_origin(type_) in {Required, NotRequired}:
        inner_type = get_args(type_)[0]
        if get_origin(inner_type) is Annotated:
            return list(get_args(inner_type)[1:])

    # Handle direct Annotated[...]
    elif get_origin(type_) is Annotated:
        return list(get_args(type_)[1:])

    return []

Domain

Subdomains

Called By

Frequently Asked Questions

What does _extract_metadata() do?
_extract_metadata() is a function in the langchain codebase, defined in libs/langchain_v1/langchain/agents/factory.py.
Where is _extract_metadata() defined?
_extract_metadata() is defined in libs/langchain_v1/langchain/agents/factory.py at line 421.
What calls _extract_metadata()?
_extract_metadata() is called by 1 function(s): _resolve_schema.

Analyze Your Own Codebase

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

Try Supermodel Free