Home / File/ chat_models.py — langchain Source File

chat_models.py — langchain Source File

Architecture documentation for chat_models.py, a python file in the langchain codebase. 32 imports, 0 dependents.

File python LangChainCore LanguageModelBase 32 imports 18 functions 4 classes

Entity Profile

Dependency Diagram

graph LR
  a85819c7_917d_4c71_2864_a19e68947340["chat_models.py"]
  43a94385_8919_6471_1068_d923b3a3c65f["copy"]
  a85819c7_917d_4c71_2864_a19e68947340 --> 43a94385_8919_6471_1068_d923b3a3c65f
  c0b5feef_1759_3f2b_62d3_f376e06b863f["datetime"]
  a85819c7_917d_4c71_2864_a19e68947340 --> c0b5feef_1759_3f2b_62d3_f376e06b863f
  9d14ea65_8b2e_6721_a947_acc89905651f["json"]
  a85819c7_917d_4c71_2864_a19e68947340 --> 9d14ea65_8b2e_6721_a947_acc89905651f
  b7996424_637b_0b54_6edf_2e18e9c1a8bf["re"]
  a85819c7_917d_4c71_2864_a19e68947340 --> b7996424_637b_0b54_6edf_2e18e9c1a8bf
  f3365e3c_fb7a_bb9a_bc79_059b06cb7024["warnings"]
  a85819c7_917d_4c71_2864_a19e68947340 --> f3365e3c_fb7a_bb9a_bc79_059b06cb7024
  2bf6d401_816d_d011_3b05_a6114f55ff58["collections.abc"]
  a85819c7_917d_4c71_2864_a19e68947340 --> 2bf6d401_816d_d011_3b05_a6114f55ff58
  f46e1812_79f8_1bd0_7815_2ba4471dc470["functools"]
  a85819c7_917d_4c71_2864_a19e68947340 --> f46e1812_79f8_1bd0_7815_2ba4471dc470
  ba56ae45_39a0_5895_3909_d9469cd3e893["operator"]
  a85819c7_917d_4c71_2864_a19e68947340 --> ba56ae45_39a0_5895_3909_d9469cd3e893
  feec1ec4_6917_867b_d228_b134d0ff8099["typing"]
  a85819c7_917d_4c71_2864_a19e68947340 --> feec1ec4_6917_867b_d228_b134d0ff8099
  0f14624c_80b6_6bd5_5b87_acffe5a84bab["anthropic"]
  a85819c7_917d_4c71_2864_a19e68947340 --> 0f14624c_80b6_6bd5_5b87_acffe5a84bab
  17a62cb3_fefd_6320_b757_b53bb4a1c661["langchain_core.callbacks"]
  a85819c7_917d_4c71_2864_a19e68947340 --> 17a62cb3_fefd_6320_b757_b53bb4a1c661
  049d69ec_d53a_d170_b6fa_35c395793702["langchain_core.exceptions"]
  a85819c7_917d_4c71_2864_a19e68947340 --> 049d69ec_d53a_d170_b6fa_35c395793702
  e929cf21_6ab8_6ff3_3765_0d35a099a053["langchain_core.language_models"]
  a85819c7_917d_4c71_2864_a19e68947340 --> e929cf21_6ab8_6ff3_3765_0d35a099a053
  f77bacd6_1087_c145_d5d5_68e6f3937f9d["langchain_core.language_models.chat_models"]
  a85819c7_917d_4c71_2864_a19e68947340 --> f77bacd6_1087_c145_d5d5_68e6f3937f9d
  style a85819c7_917d_4c71_2864_a19e68947340 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

"""Anthropic chat models."""

from __future__ import annotations

import copy
import datetime
import json
import re
import warnings
from collections.abc import AsyncIterator, Callable, Iterator, Mapping, Sequence
from functools import cached_property
from operator import itemgetter
from typing import Any, Final, Literal, cast

import anthropic
from langchain_core.callbacks import (
    AsyncCallbackManagerForLLMRun,
    CallbackManagerForLLMRun,
)
from langchain_core.exceptions import ContextOverflowError, OutputParserException
from langchain_core.language_models import (
    LanguageModelInput,
    ModelProfile,
    ModelProfileRegistry,
)
from langchain_core.language_models.chat_models import BaseChatModel, LangSmithParams
from langchain_core.messages import (
    AIMessage,
    AIMessageChunk,
    BaseMessage,
    HumanMessage,
    SystemMessage,
    ToolCall,
    ToolMessage,
    is_data_content_block,
)
from langchain_core.messages import content as types
from langchain_core.messages.ai import InputTokenDetails, UsageMetadata
from langchain_core.messages.tool import tool_call_chunk as create_tool_call_chunk
from langchain_core.output_parsers import (
    JsonOutputKeyToolsParser,
    JsonOutputParser,
    PydanticOutputParser,
    PydanticToolsParser,
)
from langchain_core.output_parsers.base import OutputParserLike
from langchain_core.outputs import ChatGeneration, ChatGenerationChunk, ChatResult
from langchain_core.runnables import Runnable, RunnableMap, RunnablePassthrough
from langchain_core.tools import BaseTool
from langchain_core.utils import from_env, get_pydantic_field_names, secret_from_env
from langchain_core.utils.function_calling import (
    convert_to_json_schema,
    convert_to_openai_tool,
)
from langchain_core.utils.pydantic import is_basemodel_subclass
from langchain_core.utils.utils import _build_model_kwargs
from pydantic import BaseModel, ConfigDict, Field, SecretStr, model_validator
from typing_extensions import NotRequired, Self, TypedDict

from langchain_anthropic._client_utils import (
// ... (2086 more lines)

Domain

Subdomains

Dependencies

  • anthropic
  • collections.abc
  • copy
  • datetime
  • functools
  • json
  • langchain_anthropic._client_utils
  • langchain_anthropic._compat
  • langchain_anthropic.data._profiles
  • langchain_anthropic.output_parsers
  • langchain_core.callbacks
  • langchain_core.exceptions
  • langchain_core.language_models
  • langchain_core.language_models.chat_models
  • langchain_core.messages
  • langchain_core.messages.ai
  • langchain_core.messages.tool
  • langchain_core.output_parsers
  • langchain_core.output_parsers.base
  • langchain_core.outputs
  • langchain_core.runnables
  • langchain_core.tools
  • langchain_core.utils
  • langchain_core.utils.function_calling
  • langchain_core.utils.pydantic
  • langchain_core.utils.utils
  • operator
  • pydantic
  • re
  • typing
  • typing_extensions
  • warnings

Frequently Asked Questions

What does chat_models.py do?
chat_models.py is a source file in the langchain codebase, written in python. It belongs to the LangChainCore domain, LanguageModelBase subdomain.
What functions are defined in chat_models.py?
chat_models.py defines 18 function(s): _collect_code_execution_tool_ids, _compact_in_params, _convert_to_anthropic_output_config_format, _create_usage_metadata, _documents_in_params, _format_data_content_block, _format_image, _format_messages, _get_default_model_profile, _handle_anthropic_bad_request, and 8 more.
What does chat_models.py depend on?
chat_models.py imports 32 module(s): anthropic, collections.abc, copy, datetime, functools, json, langchain_anthropic._client_utils, langchain_anthropic._compat, and 24 more.
Where is chat_models.py in the architecture?
chat_models.py is located at libs/partners/anthropic/langchain_anthropic/chat_models.py (domain: LangChainCore, subdomain: LanguageModelBase, directory: libs/partners/anthropic/langchain_anthropic).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free