_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
Source
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