pub struct ProviderCapabilities {Show 27 fields
pub schema_version: u32,
pub provider: String,
pub model: String,
pub operation: CapabilityOperation,
pub stt_backend: Option<SttBackendClass>,
pub timestamps_reliable: bool,
pub languages: Vec<String>,
pub max_duration_secs: Option<f64>,
pub max_upload_bytes: Option<u64>,
pub max_text_chars: Option<usize>,
pub supports_cancellation: bool,
pub requires_network: bool,
pub local_only_ok: bool,
pub output_formats: Vec<String>,
pub notes: Vec<String>,
pub voice_model: Option<VoiceModel>,
pub supports_voice_ids: bool,
pub accepted_audio_formats: Vec<String>,
pub output_audio_formats: Vec<String>,
pub direct_pcm: bool,
pub sample_rates_hz: Vec<u32>,
pub speaking_rate_min: Option<f32>,
pub speaking_rate_max: Option<f32>,
pub supports_speaking_rate: bool,
pub streaming_advertised: bool,
pub streaming_implemented_by_aurum: bool,
pub descriptor_freshness: DescriptorFreshness,
}Expand description
Declared capabilities for a provider/model combination.
Fields§
§schema_version: u32§provider: String§model: String§operation: CapabilityOperation§stt_backend: Option<SttBackendClass>STT backend class when applicable.
timestamps_reliable: bool§languages: Vec<String>§max_duration_secs: Option<f64>§max_upload_bytes: Option<u64>§max_text_chars: Option<usize>§supports_cancellation: bool§requires_network: bool§local_only_ok: bool§output_formats: Vec<String>High-level product output containers (txt/srt/json/wav), not raw codecs.
notes: Vec<String>§voice_model: Option<VoiceModel>How voices are selected when operation is TTS (or multimodal).
supports_voice_ids: boolWhether the provider accepts opaque provider-native voice ids.
accepted_audio_formats: Vec<String>Accepted input audio containers/encodings for STT (e.g. wav, mp3, pcm_s16le).
output_audio_formats: Vec<String>Output audio containers/encodings for TTS (e.g. wav, mp3, pcm_f32le).
direct_pcm: boolNative PCM samples available without a container (library embed path).
sample_rates_hz: Vec<u32>Sample rates the provider advertises (Hz). Empty = unspecified / native-only.
speaking_rate_min: Option<f32>Inclusive speaking-rate minimum when rate is supported.
speaking_rate_max: Option<f32>Inclusive speaking-rate maximum when rate is supported.
supports_speaking_rate: boolWhether speaking-rate is an accepted request parameter.
streaming_advertised: boolProvider (or wire protocol) claims streaming is available.
streaming_implemented_by_aurum: boolAurum actually implements streaming for this vertical today.
Deliberately separate from Self::streaming_advertised: advertising
alone must not imply product support.
descriptor_freshness: DescriptorFreshnessFreshness / trust label for this descriptor.
Implementations§
Trait Implementations§
Source§impl Clone for ProviderCapabilities
impl Clone for ProviderCapabilities
Source§fn clone(&self) -> ProviderCapabilities
fn clone(&self) -> ProviderCapabilities
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ProviderCapabilities
impl Debug for ProviderCapabilities
Source§impl<'de> Deserialize<'de> for ProviderCapabilities
impl<'de> Deserialize<'de> for ProviderCapabilities
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>,
Source§impl PartialEq for ProviderCapabilities
impl PartialEq for ProviderCapabilities
Source§impl Serialize for ProviderCapabilities
impl Serialize for ProviderCapabilities
impl StructuralPartialEq for ProviderCapabilities
Auto Trait Implementations§
impl Freeze for ProviderCapabilities
impl RefUnwindSafe for ProviderCapabilities
impl Send for ProviderCapabilities
impl Sync for ProviderCapabilities
impl Unpin for ProviderCapabilities
impl UnsafeUnpin for ProviderCapabilities
impl UnwindSafe for ProviderCapabilities
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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 more