pub struct AsrProfile {
pub max_duration_seconds: u64,
pub wall_timeout_secs: u64,
pub cpu_seconds: u64,
pub max_resident_bytes: u64,
pub max_response_bytes: u32,
pub max_stderr_bytes: u64,
pub file_size_bytes: u64,
pub max_processes: u64,
pub language: String,
pub inventory: BTreeMap<String, String>,
}Expand description
The speech-transcription jail limit profile and pinned runtime hashes, held as rules data beside the image-OCR profile so a deployment changes them only in a visible versioned bump. Every number is a containment ceiling measured for the pinned engine on the pinned machine class. The registry reads this into the audio converter, which maps it into the runner limits its jailed worker enforces and sends the decoded-duration ceiling into the jail.
Fields§
§max_duration_seconds: u64Decoded-duration ceiling in seconds, asserted in-jail from the
decoded frame count with a small priming allowance. Over the
ceiling fails closed with asr-duration-exceeded, never
truncation.
wall_timeout_secs: u64Wall-clock ceiling for one source, in seconds.
cpu_seconds: u64RLIMIT_CPU for the child, in seconds. The second backstop behind the accelerator preflight: a run that fell back to CPU burns through it long before the wall clock.
max_resident_bytes: u64Parent-side ceiling on the aggregate resident bytes of the worker’s whole process group, engine child included.
max_response_bytes: u32Ceiling on the response frame payload, in bytes.
max_stderr_bytes: u64Ceiling on stderr bytes.
file_size_bytes: u64RLIMIT_FSIZE for the child, in bytes. Sits above the decoded size preflight, so the preflight is the arbiter and this only backstops it.
max_processes: u64RLIMIT_NPROC for the child.
language: StringThe pinned transcription language. The built-in decode policy
pins en, and rules parsing refuses any other value.
inventory: BTreeMap<String, String>Expected BLAKE3 per pinned runtime role, keyed by the generic
role label. asr-cli, asr-weights, and asr-decode-policy
must be present; asr-probe is accepted and pinned in the
built-in rules, and a required role whose pin a rules file
omits fails the engine path closed in the worker as
runtime-missing rather than parsing as an invented identity.
The deployment supplies the file paths through the runtime
inventory config; the cold worker re-hashes every file against
these values immediately before preflight and execution.
Trait Implementations§
Source§impl Clone for AsrProfile
impl Clone for AsrProfile
Source§impl Debug for AsrProfile
impl Debug for AsrProfile
Source§impl<'de> Deserialize<'de> for AsrProfile
impl<'de> Deserialize<'de> for AsrProfile
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 AsrProfile
impl RefUnwindSafe for AsrProfile
impl Send for AsrProfile
impl Sync for AsrProfile
impl Unpin for AsrProfile
impl UnsafeUnpin for AsrProfile
impl UnwindSafe for AsrProfile
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> 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