pub struct ModelInferenceConfig {
pub model_path: Option<PathBuf>,
pub model_name: Option<String>,
pub batch_size: Option<usize>,
pub enable_logging: Option<bool>,
pub ort_session: Option<OrtSessionConfig>,
}Expand description
Configuration for model inference and ONNX Runtime session setup.
This struct provides configuration options for building ONNX inference engines, including runtime settings and model metadata.
Fields§
§model_path: Option<PathBuf>The path to the model file (optional).
model_name: Option<String>The name of the model (optional).
batch_size: Option<usize>The batch size for processing (optional).
enable_logging: Option<bool>Whether to enable logging (optional).
ort_session: Option<OrtSessionConfig>ONNX Runtime session configuration for this model (optional).
Implementations§
Source§impl ModelInferenceConfig
impl ModelInferenceConfig
Sourcepub fn new() -> Self
pub fn new() -> Self
Creates a new ModelInferenceConfig with default values.
§Returns
A new ModelInferenceConfig instance.
Sourcepub fn with_model_path(model_path: PathBuf) -> Self
pub fn with_model_path(model_path: PathBuf) -> Self
Sourcepub fn model_path(self, model_path: impl Into<PathBuf>) -> Self
pub fn model_path(self, model_path: impl Into<PathBuf>) -> Self
Sourcepub fn model_name(self, model_name: impl Into<String>) -> Self
pub fn model_name(self, model_name: impl Into<String>) -> Self
Sourcepub fn batch_size(self, batch_size: usize) -> Self
pub fn batch_size(self, batch_size: usize) -> Self
Sourcepub fn enable_logging(self, enable: bool) -> Self
pub fn enable_logging(self, enable: bool) -> Self
Sourcepub fn get_enable_logging(&self) -> bool
pub fn get_enable_logging(&self) -> bool
Gets whether logging is enabled for the configuration.
§Returns
True if logging is enabled, false otherwise.
Sourcepub fn ort_session(self, cfg: OrtSessionConfig) -> Self
pub fn ort_session(self, cfg: OrtSessionConfig) -> Self
Sourcepub fn validate(&self) -> Result<(), ConfigError>
pub fn validate(&self) -> Result<(), ConfigError>
Validates the configuration.
§Returns
A Result indicating success or a ConfigError if validation fails.
Sourcepub fn merge_with(self, other: &ModelInferenceConfig) -> Self
pub fn merge_with(self, other: &ModelInferenceConfig) -> Self
Sourcepub fn get_batch_size(&self) -> usize
pub fn get_batch_size(&self) -> usize
Sourcepub fn get_model_name(&self) -> String
pub fn get_model_name(&self) -> String
Trait Implementations§
Source§impl Clone for ModelInferenceConfig
impl Clone for ModelInferenceConfig
Source§fn clone(&self) -> ModelInferenceConfig
fn clone(&self) -> ModelInferenceConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl ConfigValidator for ModelInferenceConfig
impl ConfigValidator for ModelInferenceConfig
Source§fn validate(&self) -> Result<(), ConfigError>
fn validate(&self) -> Result<(), ConfigError>
Validates the configuration.
This method checks that the batch size is valid and that the model path exists if it is specified.
§Returns
A Result indicating success or a ConfigError if validation fails.
Source§fn get_defaults() -> Self
fn get_defaults() -> Self
Source§fn validate_batch_size(&self, batch_size: usize) -> Result<(), ConfigError>
fn validate_batch_size(&self, batch_size: usize) -> Result<(), ConfigError>
Source§fn validate_batch_size_with_limits(
&self,
batch_size: usize,
max_batch_size: usize,
) -> Result<(), ConfigError>
fn validate_batch_size_with_limits( &self, batch_size: usize, max_batch_size: usize, ) -> Result<(), ConfigError>
Source§fn validate_model_path(&self, path: &Path) -> Result<(), ConfigError>
fn validate_model_path(&self, path: &Path) -> Result<(), ConfigError>
Source§fn validate_image_dimensions(
&self,
width: u32,
height: u32,
) -> Result<(), ConfigError>
fn validate_image_dimensions( &self, width: u32, height: u32, ) -> Result<(), ConfigError>
Source§fn validate_confidence_threshold(
&self,
threshold: f32,
) -> Result<(), ConfigError>
fn validate_confidence_threshold( &self, threshold: f32, ) -> Result<(), ConfigError>
Source§fn validate_memory_limit(&self, limit_mb: usize) -> Result<(), ConfigError>
fn validate_memory_limit(&self, limit_mb: usize) -> Result<(), ConfigError>
Source§fn validate_thread_count(&self, thread_count: usize) -> Result<(), ConfigError>
fn validate_thread_count(&self, thread_count: usize) -> Result<(), ConfigError>
Source§fn validate_f32_range(
&self,
value: f32,
min: f32,
max: f32,
field_name: &str,
) -> Result<(), ConfigError>
fn validate_f32_range( &self, value: f32, min: f32, max: f32, field_name: &str, ) -> Result<(), ConfigError>
Source§fn validate_positive_f32(
&self,
value: f32,
field_name: &str,
) -> Result<(), ConfigError>
fn validate_positive_f32( &self, value: f32, field_name: &str, ) -> Result<(), ConfigError>
Source§fn validate_positive_usize(
&self,
value: usize,
field_name: &str,
) -> Result<(), ConfigError>
fn validate_positive_usize( &self, value: usize, field_name: &str, ) -> Result<(), ConfigError>
Source§impl Debug for ModelInferenceConfig
impl Debug for ModelInferenceConfig
Source§impl Default for ModelInferenceConfig
impl Default for ModelInferenceConfig
Source§impl<'de> Deserialize<'de> for ModelInferenceConfig
impl<'de> Deserialize<'de> for ModelInferenceConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for ModelInferenceConfig
impl RefUnwindSafe for ModelInferenceConfig
impl Send for ModelInferenceConfig
impl Sync for ModelInferenceConfig
impl Unpin for ModelInferenceConfig
impl UnsafeUnpin for ModelInferenceConfig
impl UnwindSafe for ModelInferenceConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> ConfigDefaults for Twhere
T: ConfigValidator,
impl<T> ConfigDefaults for Twhere
T: ConfigValidator,
Source§impl<T> ConfigValidatorExt for Twhere
T: ConfigValidator,
impl<T> ConfigValidatorExt for Twhere
T: ConfigValidator,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
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>
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.