Readonly[Optionalfunction_call?: FunctionCallOptionaltool_calls?: OpenAIToolCall[]Array of content blocks that make up the message content
OptionalidUnique identifier for this message
A path to the module that contains the class, eg. ["langchain", "llms"] Usually should be the same as the entrypoint the class is exported from.
OptionalnameAn optional name for the message participant.
This property is primarily used to:
Identify agent roles in multi-agent systems: When multiple agents
collaborate, setting name helps distinguish which agent produced a
message, preventing confusion about who said what.
Pass participant names to model providers: Some providers (notably
OpenAI, e.g. see OpenAI Chat Completions API)
use this field to differentiate between participants with the
same role. For example, when using OpenAI's Chat Completions API, the
name is included in the message payload sent to the model.
// Setting name on an AIMessage to identify the agent
const message = new AIMessage({
content: "I'll handle the calendar scheduling.",
name: "calendar_agent"
});
// In a multi-agent system, this helps track message origins
const researcherMessage = new AIMessage({
content: "Here are the findings...",
name: "researcher"
});
const writerMessage = new AIMessage({
content: "I've drafted the report.",
name: "writer"
});
Metadata about the message
ReadonlytypeThe message type/role
A map of aliases for constructor args. Keys are the attribute names, e.g. "foo". Values are the alias that will replace the key in serialization. This is used to eg. make argument names match Python.
A map of additional attributes to merge with constructor args. Keys are the attribute names, e.g. "foo". Values are the attribute values, which will be serialized. These attributes need to be accepted by the constructor as arguments.
The final serialized identifier for the module.
A map of secrets, which will be omitted from serialization. Keys are paths to the secret in constructor args, e.g. "foo.bar.baz". Values are the secret ids, which will be used when deserializing.
A manual list of keys that should be serialized. If not overridden, all fields passed into the constructor will be serialized.
Get text content of the message.
StaticisStaticlc_The name of the serializable. Override to provide an alias or to preserve the serialized module name in minified environments.
Implemented as a static method to support loading logic.
Represents a chunk of a function message, which can be concatenated with other function message chunks.