Skip to main content

Model

Struct Model 

Source
pub struct Model { /* private fields */ }
Expand description

A loaded transcription model.

Implementations§

Source§

impl Model

Source

pub fn load(path: impl AsRef<Path>) -> Result<Model>

Load a model from disk with default options: a GGUF, or a supported whisper.cpp .bin (Whisper, or Silero VAD v5.1.2 / v6.2.0). The format is detected from the file header, not the extension.

Source

pub fn load_with( path: impl AsRef<Path>, options: &ModelOptions, ) -> Result<Model>

Load a model from disk with explicit options (formats as for Model::load).

Source

pub fn session(&self) -> Result<Session>

Open a session bound to this model with default session options.

Source

pub fn session_with(&self, options: &SessionOptions) -> Result<Session>

Open a session bound to this model with explicit options.

Source

pub fn diarize_session(&self) -> Result<DiarizeSession>

Open a diarization session with default options. Errors with Error::UnsupportedRole unless the model serves Role::Diarize.

Source

pub fn diarize_session_with( &self, options: &DiarizeSessionOptions, ) -> Result<DiarizeSession>

Open a diarization session with explicit options.

Source

pub fn diarize_info(&self) -> Result<DiarizeInfo>

Static facts about a diarization model. Errors with Error::UnsupportedRole unless the model serves Role::Diarize.

Source

pub fn langid_session(&self) -> Result<LangIdSession>

Open a language ID session with default options. Errors with Error::UnsupportedRole unless the model serves Role::LangId.

Source

pub fn langid_session_with( &self, options: &LangIdSessionOptions, ) -> Result<LangIdSession>

Open a language ID session with explicit options.

Source

pub fn langid_info(&self) -> Result<LangIdInfo>

Static facts about a language ID model. Errors with Error::UnsupportedRole unless the model serves Role::LangId.

Source

pub fn langid_labels(&self) -> Result<Vec<(String, String)>>

(code, name) per label index. Errors with Error::UnsupportedRole unless the model serves Role::LangId.

Source

pub fn langid_label_index(&self, code: &str) -> Option<i32>

Label index of a code or alias ("he" and "iw" name the same label); None when unknown or the model does not serve the LANGID role.

Source

pub fn vad_session(&self) -> Result<VadSession>

Open a VAD session with default options. Errors with Error::UnsupportedRole unless the model serves Role::Vad.

Source

pub fn vad_session_with( &self, options: &VadSessionOptions, ) -> Result<VadSession>

Open a VAD session with explicit options.

Source

pub fn vad_info(&self) -> Result<VadInfo>

Static facts about a VAD model. Errors with Error::UnsupportedRole unless the model serves Role::Vad.

Source

pub fn roles(&self) -> Roles

The roles (kinds of work) this model serves.

Source

pub fn capabilities(&self) -> Result<Capabilities>

The model’s immutable ASR capabilities. Errors with Error::UnsupportedRole unless the model serves Role::Asr.

Source

pub fn supports(&self, feature: Feature) -> bool

Probe a yes/no feature.

Source

pub fn accepts_ext(&self, slot: ExtSlot, kind: u32) -> bool

Whether this model accepts the given family-extension kind in slot.

Source

pub fn arch(&self) -> String

The general.architecture string, e.g. “parakeet”.

Source

pub fn variant(&self) -> String

The stt.variant string, e.g. “tdt-0.6b-v2” (may be empty).

Source

pub fn backend(&self) -> String

The runtime backend bound to this model, e.g. “cpu”, “metal” — the way to detect CPU fallback after requesting a GPU.

Source

pub fn device(&self) -> Result<Device>

The compute Device this model is running on — the one that owns its weights. Its memory_free is a live snapshot, so re-call to poll how much memory is left on the device after the model loaded. Errors with Error::Backend if the model has no resolved device.

Source

pub fn tokenize(&self, text: &str) -> Result<Vec<i32>>

Tokenize plain UTF-8 text into the model’s vocabulary (no BOS/EOS, no special tags). Errors with Error::NotImplemented for families whose tokenizer has no encode path (e.g. SentencePiece today).

Trait Implementations§

Source§

impl Clone for Model

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Model

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl Freeze for Model

§

impl RefUnwindSafe for Model

§

impl Send for Model

§

impl Sync for Model

§

impl Unpin for Model

§

impl UnsafeUnpin for Model

§

impl UnwindSafe for Model

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.