pub struct ModelRuntimeBuilder { /* private fields */ }Expand description
Builder for constructing a ModelRuntime with registered providers,
a model catalog, and a warmup policy.
let runtime = ModelRuntime::builder()
// .register_provider(...)
// .catalog(...)
.build()
.await?;Implementations§
Source§impl ModelRuntimeBuilder
impl ModelRuntimeBuilder
Sourcepub fn register_provider<P: ModelProvider + 'static>(self, provider: P) -> Self
pub fn register_provider<P: ModelProvider + 'static>(self, provider: P) -> Self
Register a provider. The provider’s
provider_id is used as
the lookup key; registering a second provider with the same ID
replaces the first.
Sourcepub fn catalog(self, catalog: Vec<ModelAliasSpec>) -> Self
pub fn catalog(self, catalog: Vec<ModelAliasSpec>) -> Self
Set the model catalog from a pre-built vector of specs.
Sourcepub fn catalog_from_str(self, s: &str) -> Result<Self>
pub fn catalog_from_str(self, s: &str) -> Result<Self>
Load catalog from a JSON string (array of model alias specs).
Sourcepub fn catalog_from_file(self, path: impl AsRef<Path>) -> Result<Self>
pub fn catalog_from_file(self, path: impl AsRef<Path>) -> Result<Self>
Load catalog from a JSON file (array of model alias specs).
Sourcepub fn warmup_policy(self, policy: WarmupPolicy) -> Self
pub fn warmup_policy(self, policy: WarmupPolicy) -> Self
Set the global warmup policy applied to providers during
build.
Sourcepub async fn build(self) -> Result<Arc<ModelRuntime>>
pub async fn build(self) -> Result<Arc<ModelRuntime>>
Validate the catalog, execute the warmup policy, and return the
constructed ModelRuntime.
Returns an error if any spec references an unknown provider, contains invalid options, or if a required eager warmup fails.
Trait Implementations§
Source§impl Default for ModelRuntimeBuilder
impl Default for ModelRuntimeBuilder
Source§fn default() -> ModelRuntimeBuilder
fn default() -> ModelRuntimeBuilder
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for ModelRuntimeBuilder
impl !RefUnwindSafe for ModelRuntimeBuilder
impl Send for ModelRuntimeBuilder
impl Sync for ModelRuntimeBuilder
impl Unpin for ModelRuntimeBuilder
impl !UnwindSafe for ModelRuntimeBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more