Trait InferenceGatewayAPI

Source
pub trait InferenceGatewayAPI {
    // Required methods
    fn list_models(&self) -> Result<Vec<ProviderModels>, Box<dyn Error>>;
    fn get_provider_models(
        &self,
        provider: Provider,
    ) -> Result<ProviderModels, Box<dyn Error>>;
    fn generate_content(
        &self,
        provider: Provider,
        model: &str,
        messages: Vec<Message>,
    ) -> Result<GenerateResponse, Box<dyn Error>>;
    fn health_check(&self) -> Result<bool, Box<dyn Error>>;
}
Expand description

Core API interface for the Inference Gateway

Required Methods§

Source

fn list_models(&self) -> Result<Vec<ProviderModels>, Box<dyn Error>>

Lists available models from all providers

Source

fn get_provider_models( &self, provider: Provider, ) -> Result<ProviderModels, Box<dyn Error>>

Lists available models from a specific provider

Source

fn generate_content( &self, provider: Provider, model: &str, messages: Vec<Message>, ) -> Result<GenerateResponse, Box<dyn Error>>

Generates content using a specified model

§Arguments
  • provider - The LLM provider to use
  • model - Name of the model
  • messages - Conversation history and prompt
Source

fn health_check(&self) -> Result<bool, Box<dyn Error>>

Checks if the API is available

Implementors§