Skip to main content

ProviderAdapter

Trait ProviderAdapter 

Source
pub trait ProviderAdapter: Send + Sync {
    // Required methods
    fn provider_name(&self) -> &str;
    fn to_provider_format(
        &self,
        context: &ConversationContext,
    ) -> ProviderMessages;
    fn from_provider_format(
        &self,
        response: &ProviderResponse,
    ) -> NormalizedMessage;
    fn capabilities(&self) -> ProviderCapabilities;
    fn estimate_tokens(&self, messages: &[NormalizedMessage]) -> usize;
}
Expand description

Provider-specific message format adapter

Required Methods§

Source

fn provider_name(&self) -> &str

Provider name

Source

fn to_provider_format(&self, context: &ConversationContext) -> ProviderMessages

Convert normalized messages to provider format

Source

fn from_provider_format(&self, response: &ProviderResponse) -> NormalizedMessage

Convert provider response to normalized format

Source

fn capabilities(&self) -> ProviderCapabilities

Get supported features

Source

fn estimate_tokens(&self, messages: &[NormalizedMessage]) -> usize

Estimate tokens for messages

Implementors§