structured.py — langchain Source File
Architecture documentation for structured.py, a python file in the langchain codebase. 10 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 7bca06c0_7ad1_b26c_4875_0c69faace0f6["structured.py"] cfe2bde5_180e_e3b0_df2b_55b3ebaca8e7["collections.abc"] 7bca06c0_7ad1_b26c_4875_0c69faace0f6 --> cfe2bde5_180e_e3b0_df2b_55b3ebaca8e7 8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3["typing"] 7bca06c0_7ad1_b26c_4875_0c69faace0f6 --> 8e2034b7_ceb8_963f_29fc_2ea6b50ef9b3 6e58aaea_f08e_c099_3cc7_f9567bfb1ae7["pydantic"] 7bca06c0_7ad1_b26c_4875_0c69faace0f6 --> 6e58aaea_f08e_c099_3cc7_f9567bfb1ae7 91721f45_4909_e489_8c1f_084f8bd87145["typing_extensions"] 7bca06c0_7ad1_b26c_4875_0c69faace0f6 --> 91721f45_4909_e489_8c1f_084f8bd87145 86bb3c96_f5a9_ad2a_8f3a_e3fd170519c9["langchain_core._api.beta_decorator"] 7bca06c0_7ad1_b26c_4875_0c69faace0f6 --> 86bb3c96_f5a9_ad2a_8f3a_e3fd170519c9 a2ee9dce_2c05_f65f_71c7_74ac415394d8["langchain_core.language_models.base"] 7bca06c0_7ad1_b26c_4875_0c69faace0f6 --> a2ee9dce_2c05_f65f_71c7_74ac415394d8 e45722a2_0136_a972_1f58_7b5987500404["langchain_core.prompts.chat"] 7bca06c0_7ad1_b26c_4875_0c69faace0f6 --> e45722a2_0136_a972_1f58_7b5987500404 e10bb307_3784_1031_cf6b_680e7c362c93["langchain_core.prompts.string"] 7bca06c0_7ad1_b26c_4875_0c69faace0f6 --> e10bb307_3784_1031_cf6b_680e7c362c93 c764ccae_0d75_abec_7c23_6d5d1949a7ba["langchain_core.runnables.base"] 7bca06c0_7ad1_b26c_4875_0c69faace0f6 --> c764ccae_0d75_abec_7c23_6d5d1949a7ba f4d905c6_a2b2_eb8f_be9b_7808b72f6a16["langchain_core.utils"] 7bca06c0_7ad1_b26c_4875_0c69faace0f6 --> f4d905c6_a2b2_eb8f_be9b_7808b72f6a16 style 7bca06c0_7ad1_b26c_4875_0c69faace0f6 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
"""Structured prompt template for a language model."""
from collections.abc import AsyncIterator, Callable, Iterator, Mapping, Sequence
from typing import (
Any,
)
from pydantic import BaseModel, Field
from typing_extensions import override
from langchain_core._api.beta_decorator import beta
from langchain_core.language_models.base import BaseLanguageModel
from langchain_core.prompts.chat import (
ChatPromptTemplate,
MessageLikeRepresentation,
)
from langchain_core.prompts.string import PromptTemplateFormat
from langchain_core.runnables.base import (
Other,
Runnable,
RunnableSequence,
RunnableSerializable,
)
from langchain_core.utils import get_pydantic_field_names
@beta()
class StructuredPrompt(ChatPromptTemplate):
"""Structured prompt template for a language model."""
schema_: dict | type
"""Schema for the structured prompt."""
structured_output_kwargs: dict[str, Any] = Field(default_factory=dict)
def __init__(
self,
messages: Sequence[MessageLikeRepresentation],
schema_: dict | type[BaseModel] | None = None,
*,
structured_output_kwargs: dict[str, Any] | None = None,
template_format: PromptTemplateFormat = "f-string",
**kwargs: Any,
) -> None:
"""Create a structured prompt template.
Args:
messages: Sequence of messages.
schema_: Schema for the structured prompt.
structured_output_kwargs: Additional kwargs for structured output.
template_format: Template format for the prompt.
Raises:
ValueError: If schema is not provided.
"""
schema_ = schema_ or kwargs.pop("schema", None)
if not schema_:
err_msg = (
"Must pass in a non-empty structured output schema. Received: "
f"{schema_}"
// ... (124 more lines)
Domain
Subdomains
Classes
Dependencies
- collections.abc
- langchain_core._api.beta_decorator
- langchain_core.language_models.base
- langchain_core.prompts.chat
- langchain_core.prompts.string
- langchain_core.runnables.base
- langchain_core.utils
- pydantic
- typing
- typing_extensions
Source
Frequently Asked Questions
What does structured.py do?
structured.py is a source file in the langchain codebase, written in python. It belongs to the PromptManagement domain, ExampleSelection subdomain.
What does structured.py depend on?
structured.py imports 10 module(s): collections.abc, langchain_core._api.beta_decorator, langchain_core.language_models.base, langchain_core.prompts.chat, langchain_core.prompts.string, langchain_core.runnables.base, langchain_core.utils, pydantic, and 2 more.
Where is structured.py in the architecture?
structured.py is located at libs/core/langchain_core/prompts/structured.py (domain: PromptManagement, subdomain: ExampleSelection, directory: libs/core/langchain_core/prompts).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free