langchain_core.messages.chat.ChatMessage

class langchain_core.messages.chat.ChatMessage[source]

Bases: BaseMessage

Message that can be assigned an arbitrary speaker (i.e. role).

Pass in content as positional arg.

Parameters
  • content – The string contents of the message.

  • kwargs – Additional fields to pass to the

param additional_kwargs: dict [Optional]

Reserved for additional payload data associated with the message.

For example, for a message from an AI, this could include tool calls as encoded by the model provider.

param content: Union[str, List[Union[str, Dict]]] [Required]

The string contents of the message.

param id: Optional[str] = None

An optional unique identifier for the message. This should ideally be provided by the provider/model which created the message.

param name: Optional[str] = None

An optional name for the message.

This can be used to provide a human-readable name for the message.

Usage of this field is optional, and whether it’s used or not is up to the model implementation.

param response_metadata: dict [Optional]

Response metadata. For example: response headers, logprobs, token counts.

param role: str [Required]

The speaker / role of the Message.

param type: Literal['chat'] = 'chat'

The type of the message (used during serialization). Defaults to “chat”.

pretty_print() None
Return type

None

pretty_repr(html: bool = False) str

Get a pretty representation of the message.

Parameters

html (bool) – Whether to format the message as HTML. If True, the message will be formatted with HTML tags. Default is False.

Returns

A pretty representation of the message.

Return type

str