__init__.py — langchain Source File
Architecture documentation for __init__.py, a python file in the langchain codebase. 10 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 9e905e98_d092_40db_6421_ab6d874dd752["__init__.py"] 8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3["typing"] 9e905e98_d092_40db_6421_ab6d874dd752 --> 8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3 923d222e_e249_1c30_4cfe_3c907f050b78["langchain_core._import_utils"] 9e905e98_d092_40db_6421_ab6d874dd752 --> 923d222e_e249_1c30_4cfe_3c907f050b78 fc383c03_4b29_7c03_c489_626a968d8d03["langchain_core.output_parsers.base"] 9e905e98_d092_40db_6421_ab6d874dd752 --> fc383c03_4b29_7c03_c489_626a968d8d03 d45ff838_1238_0965_d3b7_5b33a0452ec0["langchain_core.output_parsers.json"] 9e905e98_d092_40db_6421_ab6d874dd752 --> d45ff838_1238_0965_d3b7_5b33a0452ec0 e2506531_acbb_2ada_3335_6574849e4389["langchain_core.output_parsers.list"] 9e905e98_d092_40db_6421_ab6d874dd752 --> e2506531_acbb_2ada_3335_6574849e4389 e621cf3d_5d65_d51d_0d81_469c2c9e4846["langchain_core.output_parsers.openai_tools"] 9e905e98_d092_40db_6421_ab6d874dd752 --> e621cf3d_5d65_d51d_0d81_469c2c9e4846 5751bc83_5d18_f727_5499_728fd52dfe92["langchain_core.output_parsers.pydantic"] 9e905e98_d092_40db_6421_ab6d874dd752 --> 5751bc83_5d18_f727_5499_728fd52dfe92 52f47dc8_0343_2bf7_c7f6_1df7a48ca84e["langchain_core.output_parsers.string"] 9e905e98_d092_40db_6421_ab6d874dd752 --> 52f47dc8_0343_2bf7_c7f6_1df7a48ca84e 5d37c56a_542f_e309_4416_d58ad5f08a28["langchain_core.output_parsers.transform"] 9e905e98_d092_40db_6421_ab6d874dd752 --> 5d37c56a_542f_e309_4416_d58ad5f08a28 6ea8ed8c_4ab1_5e30_e53f_6219182045af["langchain_core.output_parsers.xml"] 9e905e98_d092_40db_6421_ab6d874dd752 --> 6ea8ed8c_4ab1_5e30_e53f_6219182045af style 9e905e98_d092_40db_6421_ab6d874dd752 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
"""`OutputParser` classes parse the output of an LLM call into structured data.
!!! tip "Structured output"
Output parsers emerged as an early solution to the challenge of obtaining structured
output from LLMs.
Today, most LLMs support [structured output](https://docs.langchain.com/oss/python/langchain/models#structured-outputs)
natively. In such cases, using output parsers may be unnecessary, and you should
leverage the model's built-in capabilities for structured output. Refer to the
[documentation of your chosen model](https://docs.langchain.com/oss/python/integrations/providers/overview)
for guidance on how to achieve structured output directly.
Output parsers remain valuable when working with models that do not support
structured output natively, or when you require additional processing or validation
of the model's output beyond its inherent capabilities.
"""
from typing import TYPE_CHECKING
from langchain_core._import_utils import import_attr
if TYPE_CHECKING:
from langchain_core.output_parsers.base import (
BaseGenerationOutputParser,
BaseLLMOutputParser,
BaseOutputParser,
)
from langchain_core.output_parsers.json import (
JsonOutputParser,
SimpleJsonOutputParser,
)
from langchain_core.output_parsers.list import (
CommaSeparatedListOutputParser,
ListOutputParser,
MarkdownListOutputParser,
NumberedListOutputParser,
)
from langchain_core.output_parsers.openai_tools import (
JsonOutputKeyToolsParser,
JsonOutputToolsParser,
PydanticToolsParser,
)
from langchain_core.output_parsers.pydantic import PydanticOutputParser
from langchain_core.output_parsers.string import StrOutputParser
from langchain_core.output_parsers.transform import (
BaseCumulativeTransformOutputParser,
BaseTransformOutputParser,
)
from langchain_core.output_parsers.xml import XMLOutputParser
__all__ = [
"BaseCumulativeTransformOutputParser",
"BaseGenerationOutputParser",
"BaseLLMOutputParser",
"BaseOutputParser",
"BaseTransformOutputParser",
"CommaSeparatedListOutputParser",
"JsonOutputKeyToolsParser",
"JsonOutputParser",
"JsonOutputToolsParser",
"ListOutputParser",
"MarkdownListOutputParser",
"NumberedListOutputParser",
"PydanticOutputParser",
"PydanticToolsParser",
"SimpleJsonOutputParser",
"StrOutputParser",
"XMLOutputParser",
]
_dynamic_imports = {
"BaseLLMOutputParser": "base",
"BaseGenerationOutputParser": "base",
"BaseOutputParser": "base",
"JsonOutputParser": "json",
"SimpleJsonOutputParser": "json",
"ListOutputParser": "list",
"CommaSeparatedListOutputParser": "list",
"MarkdownListOutputParser": "list",
"NumberedListOutputParser": "list",
"JsonOutputKeyToolsParser": "openai_tools",
"JsonOutputToolsParser": "openai_tools",
"PydanticToolsParser": "openai_tools",
"PydanticOutputParser": "pydantic",
"StrOutputParser": "string",
"BaseTransformOutputParser": "transform",
"BaseCumulativeTransformOutputParser": "transform",
"XMLOutputParser": "xml",
}
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 __all__
Domain
Subdomains
Functions
Dependencies
- langchain_core._import_utils
- langchain_core.output_parsers.base
- langchain_core.output_parsers.json
- langchain_core.output_parsers.list
- langchain_core.output_parsers.openai_tools
- langchain_core.output_parsers.pydantic
- langchain_core.output_parsers.string
- langchain_core.output_parsers.transform
- langchain_core.output_parsers.xml
- 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 OutputParsing domain, StreamingParsers 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 10 module(s): langchain_core._import_utils, langchain_core.output_parsers.base, langchain_core.output_parsers.json, langchain_core.output_parsers.list, langchain_core.output_parsers.openai_tools, langchain_core.output_parsers.pydantic, langchain_core.output_parsers.string, langchain_core.output_parsers.transform, and 2 more.
Where is __init__.py in the architecture?
__init__.py is located at libs/core/langchain_core/output_parsers/__init__.py (domain: OutputParsing, subdomain: StreamingParsers, directory: libs/core/langchain_core/output_parsers).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free