Enum Message

View as Markdown

Generated from cargo doc --no-deps -p nemo-relay -p nemo-relay-adaptive -p nemo-relay-pii-redaction -p nemo-relay-ffi -p nemo-relay-types -p nemo-relay-plugin -p nemo-relay-worker-proto -p nemo-relay-worker.

pub enum Message {
    System {
        content: MessageContent,
        name: Option<String>,
    },
    User {
        content: MessageContent,
        name: Option<String>,
    },
    Developer {
        content: MessageContent,
        name: Option<String>,
    },
    Assistant {
        content: Option<MessageContent>,
        tool_calls: Option<Vec<ToolCall>>,
        name: Option<String>,
    },
    Tool {
        content: MessageContent,
        tool_call_id: String,
    },
    Function {
        content: Option<String>,
        name: String,
    },
    ToolCallItem {
        id: Option<String>,
        call_id: String,
        name: String,
        arguments: Value,
        extra: Map<String, Value>,
    },
    ToolResultItem {
        id: Option<String>,
        call_id: String,
        output: Value,
        extra: Map<String, Value>,
    },
    ProviderNative {
        provider: String,
        kind: String,
        value: Value,
    },
}

A single message in a conversation, tagged by role.

Variants

System

System

A system instruction message.

Fields

content: MessageContent

The message content.

name: Option<String>

Optional sender name.

User

User

A user message.

Fields

content: MessageContent

The message content.

name: Option<String>

Optional sender name.

Developer

Developer

A developer instruction message used by OpenAI APIs.

Fields

content: MessageContent

The message content.

name: Option<String>

Optional sender name.

Assistant

Assistant

An assistant response, optionally containing tool calls.

Fields

content: Option<MessageContent>

The message content (optional - may be absent when tool calls are present).

tool_calls: Option<Vec<ToolCall>>

Tool calls requested by the assistant.

name: Option<String>

Optional sender name.

Tool

Tool

A tool result message.

Fields

content: MessageContent

The tool execution result.

tool_call_id: String

The ID of the tool call this result corresponds to.

Function

Function

A legacy OpenAI function-result message.

Fields

content: Option<String>

The function result. OpenAI permits an explicit null value.

name: String

Function name.

ToolCallItem

ToolCallItem

A portable top-level tool-call item, primarily used by OpenAI Responses.

Fields

id: Option<String>

Optional provider item ID.

call_id: String

Provider call ID used to correlate the result.

name: String

Tool/function name.

arguments: Value

Parsed tool arguments.

extra: Map<String, Value>

Provider fields without portable semantics.

ToolResultItem

ToolResultItem

A portable top-level tool-result item, primarily used by OpenAI Responses.

Fields

id: Option<String>

Optional provider item ID.

call_id: String

Provider call ID used to correlate the result.

output: Value

Provider result payload.

extra: Map<String, Value>

Provider fields without portable semantics.

ProviderNative

ProviderNative

Lossless provider-native request item.

Fields

provider: String

Provider surface that owns the value.

kind: String

Native discriminator or a descriptive fallback.

value: Value

Exact provider JSON value.

Trait Implementations

impl Clone for Message

impl Clone for Message

clone

fn clone(&self) -> Message

clone_from

fn clone_from(&mut self, source: &Self)

impl Debug for Message

impl Debug for Message

fmt

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

impl<'de> Deserialize<'de> for Message

impl<'de> Deserialize<'de> for Message

deserialize

fn deserialize<__D>(
    __deserializer: __D,
) -> Result<Message, <__D as Deserializer<'de>>::Error>where
    __D: Deserializer<'de>,

impl PartialEq for Message

impl PartialEq for Message

eq

fn eq(&self, other: &Message) -> bool

ne

fn ne(&self, other: &Rhs) -> bool

impl Serialize for Message

impl Serialize for Message

serialize

fn serialize<__S>(
    &self,
    __serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
    __S: Serializer,

impl StructuralPartialEq for Message

impl StructuralPartialEq for Message