pub trait SpeechToTextModel<B: Backend>: Send {
// Required methods
fn metadata(&self) -> &ModelMetadata;
fn n_mels(&self) -> usize;
fn encode_audio(&self, mel: Tensor<B, 3>) -> Result<Tensor<B, 3>>;
fn decode_step(
&self,
tokens: &[u32],
encoded: &Tensor<B, 3>,
) -> Result<Tensor<B, 1>>;
}Expand description
Speech-to-text models (Whisper-style encoder–decoder). A separate
contract from GenerativeModel: the encoder runs once per audio
window, then the decoder is stepped over token prefixes against the
fixed encoder states.
Required Methods§
Sourcefn metadata(&self) -> &ModelMetadata
fn metadata(&self) -> &ModelMetadata
Architecture + hyperparameter metadata.
Sourcefn encode_audio(&self, mel: Tensor<B, 3>) -> Result<Tensor<B, 3>>
fn encode_audio(&self, mel: Tensor<B, 3>) -> Result<Tensor<B, 3>>
Encodes one [1, n_mels, frames] log-mel window into encoder
states [1, frames/2, hidden].
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".