Home / Class/ HumanMessage Class — langchain Architecture

HumanMessage Class — langchain Architecture

Architecture documentation for the HumanMessage class in human.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  e0e879bf_e732_8d0f_6ce2_3d40e66f4eb3["HumanMessage"]
  b9553aad_b797_0a7b_73ed_8d05b0819c0f["BaseMessage"]
  e0e879bf_e732_8d0f_6ce2_3d40e66f4eb3 -->|extends| b9553aad_b797_0a7b_73ed_8d05b0819c0f
  b7e16685_5fd7_85d7_611e_d902da4eab66["human.py"]
  e0e879bf_e732_8d0f_6ce2_3d40e66f4eb3 -->|defined in| b7e16685_5fd7_85d7_611e_d902da4eab66
  a4176370_198c_ae73_f200_bb209eb5be1f["__init__()"]
  e0e879bf_e732_8d0f_6ce2_3d40e66f4eb3 -->|method| a4176370_198c_ae73_f200_bb209eb5be1f

Relationship Graph

Source Code

libs/core/langchain_core/messages/human.py lines 9–60

class HumanMessage(BaseMessage):
    """Message from the user.

    A `HumanMessage` is a message that is passed in from a user to the model.

    Example:
        ```python
        from langchain_core.messages import HumanMessage, SystemMessage

        messages = [
            SystemMessage(content="You are a helpful assistant! Your name is Bob."),
            HumanMessage(content="What is your name?"),
        ]

        # Instantiate a chat model and invoke it with the messages
        model = ...
        print(model.invoke(messages))
        ```
    """

    type: Literal["human"] = "human"
    """The type of the message (used for serialization)."""

    @overload
    def __init__(
        self,
        content: str | list[str | dict],
        **kwargs: Any,
    ) -> None: ...

    @overload
    def __init__(
        self,
        content: str | list[str | dict] | None = None,
        content_blocks: list[types.ContentBlock] | None = None,
        **kwargs: Any,
    ) -> None: ...

    def __init__(
        self,
        content: str | list[str | dict] | None = None,
        content_blocks: list[types.ContentBlock] | None = None,
        **kwargs: Any,
    ) -> None:
        """Specify `content` as positional arg or `content_blocks` for typing."""
        if content_blocks is not None:
            super().__init__(
                content=cast("str | list[str | dict]", content_blocks),
                **kwargs,
            )
        else:
            super().__init__(content=content, **kwargs)

Extends

Frequently Asked Questions

What is the HumanMessage class?
HumanMessage is a class in the langchain codebase, defined in libs/core/langchain_core/messages/human.py.
Where is HumanMessage defined?
HumanMessage is defined in libs/core/langchain_core/messages/human.py at line 9.
What does HumanMessage extend?
HumanMessage extends BaseMessage.

Analyze Your Own Codebase

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

Try Supermodel Free