pub trait ProviderResolver:
Send
+ Sync
+ 'static {
// Required methods
fn resolve_provider(&self, name: &str) -> Option<Arc<dyn Provider>>;
fn resolve_model(&self, model_id: &str) -> Option<Model>;
}Expand description
Trait for resolving providers and models within an Agent.
This abstracts away global static registries, allowing SDK users to provide isolated provider/model lookups.
When using the SDK (oxi-sdk), the Oxi engine implements this trait.
When using Agent::new() directly, a global fallback is used.
Required Methods§
Sourcefn resolve_provider(&self, name: &str) -> Option<Arc<dyn Provider>>
fn resolve_provider(&self, name: &str) -> Option<Arc<dyn Provider>>
Resolve a provider by name, returning an Arc handle.
Sourcefn resolve_model(&self, model_id: &str) -> Option<Model>
fn resolve_model(&self, model_id: &str) -> Option<Model>
Resolve a model ID (“provider/model” or bare “model”) to a Model.