Skip to main content

Module reference

Module reference 

Source
Expand description

World-standard reference adapters — the “oracle” seat from Prometheus’s trial stage (prom-trial::oracle), generalized to external AI tools.

§Why batch mode is the primary contract

The naive design — invoke the reference once per clip and time it — is wrong for AI tooling, and wrong in the direction that flatters us. A Python reference spends seconds on interpreter startup and model load; transcribing a 5-second clip takes a fraction of that. Timing per-invocation would measure Python’s startup, report our Rust as spectacularly faster, and the claim would be indefensible.

So an ASR reference is invoked once for the whole corpus with a file list, and reports per-clip transcription time itself. That yields two honest numbers, both recorded:

  • warm RTF — steady-state throughput, model already loaded. This is what implementations publish, and what a server-side user experiences.
  • end-to-end RTF — total wall clock for the batch, including the one model load, amortized over the corpus. This is what a CLI user experiences.

Neither alone is the truth; quoting only the flattering one is how benchmarks lie. Single-file mode (command) remains for simple tools (tesseract) where startup is negligible.

Structs§

BatchResult
The parsed output of one batch invocation.
ClipResult
One clip’s result from a batch run.
NamedScorer
A named, executable scorer — declared HERE and not in a corpus.
ReferenceFile
The declaration file: references, and the scorers they may be paired with.
ReferenceSpec
One external reference implementation.
TtsBatchResult
The parsed output of one TTS batch invocation.
TtsClipResult
One utterance’s result from a TTS batch run: the adapter read a text file and wrote a WAV.