Skip to main content

MessageConversion

Trait MessageConversion 

Source
pub trait MessageConversion {
    // Required methods
    fn to_anthropic_message(&self) -> Result<MessageParam, TypeError>;
    fn to_google_message(&self) -> Result<GeminiContent, TypeError>;
    fn to_openai_message(&self) -> Result<ChatMessage, TypeError>;
}
Expand description

Trait for converting between different provider message formats

This trait enables conversion of messages between different LLM provider formats (e.g., Anthropic MessageParam ↔ Google GeminiContent ↔ OpenAI ChatMessage).

Currently focused on text content conversion, with support for other content types planned for future implementation.

Required Methods§

Source

fn to_anthropic_message(&self) -> Result<MessageParam, TypeError>

Convert this message to an Anthropic MessageParam

§Errors

Returns TypeError::UnsupportedConversion if the message contains content types that cannot be represented in Anthropic’s format

Source

fn to_google_message(&self) -> Result<GeminiContent, TypeError>

Convert this message to a Google GeminiContent

§Errors

Returns TypeError::UnsupportedConversion if the message contains content types that cannot be represented in Google’s format

Source

fn to_openai_message(&self) -> Result<ChatMessage, TypeError>

Convert this message to an OpenAI ChatMessage

§Errors

Returns TypeError::UnsupportedConversion if the message contains content types that cannot be represented in OpenAI’s format

Implementors§