pub struct Classifier { /* private fields */ }Expand description
Thread-safe classifier for bird species detection
Use Classifier::builder() to construct.
Implementations§
Source§impl Classifier
impl Classifier
Sourcepub const fn builder() -> ClassifierBuilder
pub const fn builder() -> ClassifierBuilder
Create a new classifier builder
Sourcepub fn config(&self) -> &ModelConfig
pub fn config(&self) -> &ModelConfig
Get the model configuration
Sourcepub fn requested_provider(&self) -> ExecutionProviderInfo
pub fn requested_provider(&self) -> ExecutionProviderInfo
Returns the execution provider that was requested for this classifier.
Note: This returns the provider that was requested during build, not necessarily the provider that is actually active. If the requested provider is unavailable, ONNX Runtime will silently fall back to CPU.
This value is only set by the typed with_<provider>() builder methods
(e.g., with_cuda(), with_tensorrt()). The generic execution_provider()
method does not affect the value returned here.
To verify the actual provider being used, enable ONNX Runtime verbose
logging via environment variable: ORT_LOG_LEVEL=Verbose
Sourcepub fn predict(&self, segment: &[f32]) -> Result<PredictionResult>
pub fn predict(&self, segment: &[f32]) -> Result<PredictionResult>
Run inference on a single audio segment
§Arguments
segment- Audio samples (must matchconfig().sample_count)
§Returns
PredictionResultwith top predictions, embeddings (if available), and raw scores
§Errors
Returns an error if:
- Input segment size doesn’t match expected sample count
- Session lock is poisoned
- ONNX inference fails
Sourcepub fn predict_batch(
&self,
segments: &[&[f32]],
) -> Result<Vec<PredictionResult>>
pub fn predict_batch( &self, segments: &[&[f32]], ) -> Result<Vec<PredictionResult>>
Run inference on multiple audio segments (more efficient for GPU)
§Arguments
segments- Slice of audio segments (all must matchconfig().sample_count)
§Returns
- Vector of
PredictionResult, one per input segment
§Errors
Returns an error if:
- Any segment size doesn’t match expected sample count
- Session lock is poisoned
- ONNX inference fails
Trait Implementations§
Source§impl Clone for Classifier
impl Clone for Classifier
Source§fn clone(&self) -> Classifier
fn clone(&self) -> Classifier
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more