pub trait EngineProvider: Send + Sync {
// Required methods
fn create_provider(&self, provider_name: &str) -> Result<Arc<dyn Provider>>;
fn resolve_model(&self, model_id: &str) -> Result<Model>;
fn default_model_id(&self) -> &str;
}Expand description
Engine provider trait — abstracts how the kernel obtains AI providers.
This trait is implemented by OxiEngineProvider and can be replaced
with a mock for testing.
Required Methods§
Sourcefn create_provider(&self, provider_name: &str) -> Result<Arc<dyn Provider>>
fn create_provider(&self, provider_name: &str) -> Result<Arc<dyn Provider>>
Create a provider for the given provider name.
Sourcefn resolve_model(&self, model_id: &str) -> Result<Model>
fn resolve_model(&self, model_id: &str) -> Result<Model>
Resolve a “provider/model” string to a Model.
Sourcefn default_model_id(&self) -> &str
fn default_model_id(&self) -> &str
Get the default model ID.