test_structured_output_strict() — langchain Function Reference
Architecture documentation for the test_structured_output_strict() function in test_base.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 6c19e6c9_2316_dfb3_532d_9452459f1cb2["test_structured_output_strict()"] bd382a4e_442c_13ae_530c_6e34bc43623d["test_base.py"] 6c19e6c9_2316_dfb3_532d_9452459f1cb2 -->|defined in| bd382a4e_442c_13ae_530c_6e34bc43623d style 6c19e6c9_2316_dfb3_532d_9452459f1cb2 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/partners/openai/tests/integration_tests/chat_models/test_base.py lines 775–812
def test_structured_output_strict(
model: str,
method: Literal["function_calling", "json_schema"],
use_responses_api: bool,
) -> None:
"""Test to verify structured output with strict=True."""
from pydantic import BaseModel as BaseModelProper
from pydantic import Field as FieldProper
llm = ChatOpenAI(model=model, use_responses_api=use_responses_api)
class Joke(BaseModelProper):
"""Joke to tell user."""
setup: str = FieldProper(description="question to set up a joke")
punchline: str = FieldProper(description="answer to resolve the joke")
# Pydantic class
chat = llm.with_structured_output(Joke, method=method, strict=True)
result = chat.invoke("Tell me a joke about cats.")
assert isinstance(result, Joke)
for chunk in chat.stream("Tell me a joke about cats."):
assert isinstance(chunk, Joke)
# Schema
chat = llm.with_structured_output(
Joke.model_json_schema(), method=method, strict=True
)
result = chat.invoke("Tell me a joke about cats.")
assert isinstance(result, dict)
assert set(result.keys()) == {"setup", "punchline"}
for chunk in chat.stream("Tell me a joke about cats."):
assert isinstance(chunk, dict)
assert isinstance(chunk, dict) # for mypy
assert set(chunk.keys()) == {"setup", "punchline"}
Domain
Subdomains
Source
Frequently Asked Questions
What does test_structured_output_strict() do?
test_structured_output_strict() is a function in the langchain codebase, defined in libs/partners/openai/tests/integration_tests/chat_models/test_base.py.
Where is test_structured_output_strict() defined?
test_structured_output_strict() is defined in libs/partners/openai/tests/integration_tests/chat_models/test_base.py at line 775.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free