Home / Class/ SystemMessage Class — langchain Architecture

SystemMessage Class — langchain Architecture

Architecture documentation for the SystemMessage class in system.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  5c3ab140_4d2a_43d4_63cb_89f4c4b1a8d6["SystemMessage"]
  b9553aad_b797_0a7b_73ed_8d05b0819c0f["BaseMessage"]
  5c3ab140_4d2a_43d4_63cb_89f4c4b1a8d6 -->|extends| b9553aad_b797_0a7b_73ed_8d05b0819c0f
  917acef8_cb58_963a_19d6_78c620915ba0["system.py"]
  5c3ab140_4d2a_43d4_63cb_89f4c4b1a8d6 -->|defined in| 917acef8_cb58_963a_19d6_78c620915ba0
  06c76717_8032_6073_08a5_16313bb15106["__init__()"]
  5c3ab140_4d2a_43d4_63cb_89f4c4b1a8d6 -->|method| 06c76717_8032_6073_08a5_16313bb15106

Relationship Graph

Source Code

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

class SystemMessage(BaseMessage):
    """Message for priming AI behavior.

    The system message is usually passed in as the first of a sequence
    of input messages.

    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?"),
        ]

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

    type: Literal["system"] = "system"
    """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 SystemMessage class?
SystemMessage is a class in the langchain codebase, defined in libs/core/langchain_core/messages/system.py.
Where is SystemMessage defined?
SystemMessage is defined in libs/core/langchain_core/messages/system.py at line 9.
What does SystemMessage extend?
SystemMessage extends BaseMessage.

Analyze Your Own Codebase

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

Try Supermodel Free