build_extra() — langchain Function Reference
Architecture documentation for the build_extra() function in chat_models.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 7dbdf104_f228_c418_a2b8_c15e8c5405ee["build_extra()"] 36b59643_acfc_fb1d_752e_ae7ec32a79a4["ChatPerplexity"] 7dbdf104_f228_c418_a2b8_c15e8c5405ee -->|defined in| 36b59643_acfc_fb1d_752e_ae7ec32a79a4 style 7dbdf104_f228_c418_a2b8_c15e8c5405ee fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/partners/perplexity/langchain_perplexity/chat_models.py lines 268–291
def build_extra(cls, values: dict[str, Any]) -> Any:
"""Build extra kwargs from additional params that were passed in."""
all_required_field_names = get_pydantic_field_names(cls)
extra = values.get("model_kwargs", {})
for field_name in list(values):
if field_name in extra:
raise ValueError(f"Found {field_name} supplied twice.")
if field_name not in all_required_field_names:
logger.warning(
f"""WARNING! {field_name} is not a default parameter.
{field_name} was transferred to model_kwargs.
Please confirm that {field_name} is what you intended."""
)
extra[field_name] = values.pop(field_name)
invalid_model_kwargs = all_required_field_names.intersection(extra.keys())
if invalid_model_kwargs:
raise ValueError(
f"Parameters {invalid_model_kwargs} should be specified explicitly. "
f"Instead they were passed in as part of `model_kwargs` parameter."
)
values["model_kwargs"] = extra
return values
Domain
Subdomains
Source
Frequently Asked Questions
What does build_extra() do?
build_extra() is a function in the langchain codebase, defined in libs/partners/perplexity/langchain_perplexity/chat_models.py.
Where is build_extra() defined?
build_extra() is defined in libs/partners/perplexity/langchain_perplexity/chat_models.py at line 268.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free