The primary content of the message. The type and interpretation depend on the role:
system: string (The system instruction).user: string (The user's text input).assistant: string | null (The AI's text response, or null/empty if only making tool_calls).tool_request: object | null (Structured representation of the tool call, often implicitly handled via assistant message's tool_calls).tool_result: string (Stringified JSON output or error message from the tool execution).OptionalnameOptional name associated with the message. Primarily used for tool_result role to specify the name of the tool that was executed.
The role indicating the source or type of the message.
Optionaltool_Optional identifier linking a 'tool_result' message back to the specific 'tool_calls' entry in the preceding 'assistant' message that requested it. Required for 'tool_result' role.
Optionaltool_Optional array of tool calls requested by the assistant.
Details of the function to be called.
A stringified JSON object representing the arguments for the function.
The name of the function/tool to call.
A unique identifier for this specific tool call request.
The type of the tool call, typically 'function'.
Represents a single message in the standardized, provider-agnostic
ArtStandardPromptformat.Remarks
This structure aims to capture common message elements used by various LLM APIs.
ArtStandardMessage