Model provenance and compatibility inventory¶
Status: inventory dated 2026-10-28; read-only; not a recommendation to add any model. Part of epic #692 / issue #694. Android pinning was done separately in #683 (closed as completed on 2026-10-25, through PR #684); this document does not duplicate it.
How to read this¶
- Scope. Every model YazSes downloads, loads, lists in code, or names as a default, plus the models the project benchmarked, plus a short list of candidates for the camera/gaze, EMG and EEG research tracks. Nothing was downloaded as weights; Hub metadata and model cards were read through the public API and the raw README.
- Revision (
sha). Hugging Face git commit at the head ofmainon the fetch date (2026-10-28). It is the commit that the repository pointed to when read. It is not a pin YazSes uses, and it will drift when the repository changes. Where the code pins nothing, the table says so. - Licence (as stated). The value in the Hub metadata (
cardData.licenseor thelicense:tag) and/or the licence text in the model card, quoted or closely paraphrased. "Not verified" means the licence was not read in this pass. - Used by YazSes. Yes/no and
file:linein this repository. "Listed" means the name appears in a lookup table but is not loaded by default. "Opt-in" means a config value or extra must be set before the code path runs. - Independently benchmarked by YazSes. "Yes" means a file under
paper/results/records a measurement that names the model. Those files record the model name and, for Persian runs only, arevisionfield; most do not record the Hub repository or revision actually loaded, so they cannot be tied to a sha. "No" means no result file names the model. - Two different licences. For each Whisper-family row, the conversion repository (what YazSes downloads) and the upstream original (what it was converted from) are listed separately (see Table A3).
- Code facts. Every "YazSes does X" statement cites
file:line. Line numbers are for commit4fda3403onmain; every repository file cited here is identical there to0e0dcfd1, the commit the inventory was written against.
Table A: models YazSes uses or lists¶
A1. Whisper family, faster-whisper / CTranslate2 conversions (downloaded by YazSes)¶
YazSes resolves a short name through WHISPER_MODELS (src/yazses/stt/download.py:47-67), which mirrors upstream faster_whisper/utils.py:11-31 (verified against the installed faster-whisper 1.2.1 in this worktree's environment). Every repository below is an ordinary Hub model; none is gated. Every conversion repository declares license: mit in its front matter; none has a licence section in the body, and each names its upstream OpenAI or Distil-Whisper card as "the original model" (see Table A3).
| Model (YazSes name) | Original org/author | Official URL | Licence (as stated) and conditions | Immutable revision (sha, lastModified) | Runtime | CPU/GPU requirements | Intended use and limitations (as stated) | Used by YazSes | Independently benchmarked by YazSes |
|---|---|---|---|---|---|---|---|---|---|
Systran/faster-whisper-tiny (tiny) | Converted by Systran from openai/whisper-tiny | https://huggingface.co/Systran/faster-whisper-tiny | mit (front matter). Body: none; links upstream card | d90ca5fe260221311c53c58e660288d3deb8d356 (2023-11-23) | faster-whisper / CTranslate2 | not stated | not stated in the conversion card | Listed: stt/download.py:64; loaded only if [stt] model = "tiny" | No (only tiny.en measured) |
Systran/faster-whisper-tiny.en (tiny.en) | Systran, from openai/whisper-tiny.en | https://huggingface.co/Systran/faster-whisper-tiny.en | mit (front matter) | 0d3d19a32d3338f10357c0889762bd8d64bbdeba (2023-11-23) | faster-whisper / CTranslate2 | not stated | not stated in the conversion card | Listed: stt/download.py:65; named in docs/models.md:90 | Yes: paper/results/wer.json (laptop); probes/wer-matrix.json, probes/wer-vm-clean.json, wer-test-other.json (Xeon). Model name only, no repo or sha recorded |
Systran/faster-whisper-base (base) | Systran, from openai/whisper-base | https://huggingface.co/Systran/faster-whisper-base | mit (front matter) | ebe41f70d5b6dfa9166e2c581c45c9c0cfc57b66 (2023-11-23) | faster-whisper / CTranslate2 | not stated | not stated in the conversion card | Listed: stt/download.py:48 | Yes, multilingual Persian runs: paper/results/persian-fleurs-test50-base.json, persian-fleurs-test871-base.json (these record revision: null) |
Systran/faster-whisper-base.en (base.en) | Systran, from openai/whisper-base.en | https://huggingface.co/Systran/faster-whisper-base.en | mit (front matter) | 3d3d5dee26484f91867d81cb899cfcf72b96be6c (2023-11-23) | faster-whisper / CTranslate2 | not stated | English only (en tag); card does not state limitations | Yes, default: src/yazses/config.py:43 (model: str = "base.en"); mapping stt/download.py:49; docs/models.md:15, :24 | Yes: wer.json (laptop); probes/wer-matrix.json, probes/wer-vm-clean.json, wer-test-other.json, probes/decode-determinism-base.en-*.json |
Systran/faster-whisper-small (small) | Systran, from openai/whisper-small | https://huggingface.co/Systran/faster-whisper-small | mit (front matter) | 536b0662742c02347bc0e980a01041f333bce120 (2023-11-23) | faster-whisper / CTranslate2 | not stated | not stated in the conversion card | Listed: stt/download.py:62 | Yes, Persian runs: persian-fleurs-test50-small*.json, persian-fleurs-test871-small*.json. persian-cvfa-test10559-small.json records revision: 536b0662742c02347bc0e980a01041f333bce120, which equals this sha |
Systran/faster-whisper-small.en (small.en) | Systran, from openai/whisper-small.en | https://huggingface.co/Systran/faster-whisper-small.en | mit (front matter) | d1d751a5f8271d482d14ca55d9e2deeebbae577f (2023-11-23) | faster-whisper / CTranslate2 | not stated | English only | Listed: stt/download.py:63; docs/models.md:92 | Yes: wer.json (laptop); probes/wer-matrix.json, probes/wer-vm-clean.json, wer-test-other.json, probes/decode-determinism-small.en-*.json |
Systran/faster-whisper-medium (medium) | Systran, from openai/whisper-medium | https://huggingface.co/Systran/faster-whisper-medium | mit (front matter) | 08e178d48790749d25932bbc082711ddcfdfbc4f (2023-11-23) | faster-whisper / CTranslate2 | not stated | not stated in the conversion card | Listed: stt/download.py:60 | Yes, Persian: persian-fleurs-test50-medium.json |
Systran/faster-whisper-medium.en (medium.en) | Systran, from openai/whisper-medium.en | https://huggingface.co/Systran/faster-whisper-medium.en | mit (front matter) | a29b04bd15381511a9af671baec01072039215e3 (2023-11-23) | faster-whisper / CTranslate2 | not stated | English only | Listed: stt/download.py:61 | Yes: probes/wer-matrix.json, wer-test-other.json, probes/decode-determinism-medium.en-*.json |
Systran/faster-whisper-large-v1 (large-v1) | Systran, from openai/whisper-large (v1) | https://huggingface.co/Systran/faster-whisper-large-v1 | mit (front matter) | b07c8d4be0be90092aa01a29c975077acb8d15c9 (2023-11-23) | faster-whisper / CTranslate2 | not stated | not stated in the conversion card | Listed: stt/download.py:56 | No |
Systran/faster-whisper-large-v2 (large-v2) | Systran, from openai/whisper-large-v2 | https://huggingface.co/Systran/faster-whisper-large-v2 | mit (front matter) | f0fe81560cb8b68660e564f55dd99207059c092e (2023-11-23) | faster-whisper / CTranslate2 | not stated | not stated in the conversion card | Listed: stt/download.py:57 | No |
Systran/faster-whisper-large-v3 (large-v3, alias large) | Systran, from openai/whisper-large-v3 | https://huggingface.co/Systran/faster-whisper-large-v3 | mit (front matter). Upstream card says apache-2.0 (Table A3) | edaa852ec7e145841d8ffdb056a99866b5f0a478 (2023-11-23) | faster-whisper / CTranslate2 | not stated | not stated in the conversion card | Listed: stt/download.py:55 and :58 | Yes: probes/wer-matrix.json, wer-test-other.json, wer-vm-clean.json (English); probes/largev3-instability-*.json. No repo or sha recorded |
Systran/faster-distil-whisper-large-v2 | Conversion of distil-whisper/distil-large-v2 | https://huggingface.co/Systran/faster-distil-whisper-large-v2 | mit (front matter); upstream distil card mit | fe9b404fc56de3f7c38606ef9ba6fd83526d05e4 (2024-05-09) | faster-whisper / CTranslate2 | not stated | English only (per upstream card, Table A3) | Listed: stt/download.py:50 | No |
Systran/faster-distil-whisper-large-v3 | Conversion of distil-whisper/distil-large-v3 | https://huggingface.co/Systran/faster-distil-whisper-large-v3 | mit (front matter); upstream mit | c3058b475261292e64a0412df1d2681c06260fab (2024-03-25) | faster-whisper / CTranslate2 | not stated | English only (per upstream card) | Listed: stt/download.py:51 | No |
Systran/faster-distil-whisper-medium.en | Conversion; upstream named by repository name (card not read) | https://huggingface.co/Systran/faster-distil-whisper-medium.en | mit (front matter); upstream mit | 80ddfce281f77766d8943d63109199fc8145dfa5 (2024-01-19) | faster-whisper / CTranslate2 | not stated | English only | Listed: stt/download.py:53 | No |
Systran/faster-distil-whisper-small.en | Conversion of distil-whisper/distil-small.en | https://huggingface.co/Systran/faster-distil-whisper-small.en | mit (front matter); upstream mit | ef77d90526ccd62cde3808ee70626a01e5cf83e4 (2024-01-22) | faster-whisper / CTranslate2 | not stated | English only | Listed: stt/download.py:54 | No |
distil-whisper/distil-large-v3.5-ct2 (distil-large-v3.5) | distil-whisper (Hugging Face) | https://huggingface.co/distil-whisper/distil-large-v3.5-ct2 | mit. Card: "inherits the MIT license from OpenAI's Whisper model" | 9793ccc07920e0f830e1dba0343efcdf0ef8c903 (2025-03-19) | faster-whisper / CTranslate2 | not stated | English only (en tag) | Listed: stt/download.py:52 | No |
mobiuslabsgmbh/faster-whisper-large-v3-turbo (turbo, large-v3-turbo) | Requested id is a Mobius Labs repo. The API call returned HTTP 307 to dropbox-dash/faster-whisper-large-v3-turbo; the content read is at the redirect target | https://huggingface.co/dropbox-dash/faster-whisper-large-v3-turbo (redirect from the id in code) | mit (front matter, redirect target). Card: conversion of openai/whisper-large-v3-turbo | 0a363e9161cbc7ed1431c9597a8ceaf0c4f78fcf (2025-11-05), read at the redirect target | faster-whisper / CTranslate2 | not stated | not stated in the conversion card | Listed: stt/download.py:59 and :66 | Yes, Persian only: persian-fleurs-test871-large-v3-turbo.json (revision: null) |
Notes on A1:
- Whisper large-v3 benchmarks read the English figures from result files that use the model name
large-v3; the repository actually loaded in those runs is not recorded. - The
mobiuslabsgmbhredirect. The id instt/download.py:59and:66(and in upstream faster-whisper 1.2.1) is answered by the Hub with a redirect to a different owner. Whether the redirect is permanent, and whether the content is identical, is not verified. YazSes does not pin the revision, so a future content change would be picked up silently on the next fresh download.
A2. Speech-to-text engines other than faster-whisper¶
| Model | Original org/author | Official URL | Licence (as stated) and conditions | Immutable revision (sha, lastModified) | Runtime | CPU/GPU requirements | Intended use and limitations (as stated) | Used by YazSes | Independently benchmarked by YazSes |
|---|---|---|---|---|---|---|---|---|---|
NVIDIA Parakeet TDT 0.6B v2 (nemo-parakeet-tdt-0.6b-v2, YazSes name) | NVIDIA | https://huggingface.co/nvidia/parakeet-tdt-0.6b-v2 | cc-by-4.0. Card: "GOVERNING TERMS: Use of this model is governed by the CC-BY-4.0 license" (line 179) | ae9ad07059c7c739ffaf932226a8fe64ae2620b0 (2026-06-29) upstream NeMo repo | Upstream is NeMo (.nemo). YazSes loads via onnx-asr (see the ONNX note below) | Card: "designed to run on NVIDIA GPU-accelerated systems" (line 229); "At least 2GB RAM for model to load" (line 350); supported GPU microarchitectures and Linux listed (lines 338-346). No CPU-only figure stated | "Designed for high-quality English transcription" (line 161). Limitations: "Transcripts may be not 100% accurate. Accuracy varies based on language and characteristics of input audio" (line 512) | Opt-in engine: src/yazses/stt/parakeet.py:39 (DEFAULT_MODEL); load at parakeet.py:164 and :173 (onnx_asr.load_model), wrapped by load_cache_first at parakeet.py:194. Name also in language/capability.py:51-54 (ENGINE_DEFAULT_MODELS) and :178 | Yes: probes/wer-matrix.json, wer-test-other.json, probes/wer-vm-clean.json (Xeon). Model name only |
| ONNX conversion of Parakeet TDT 0.6B v2 (candidate source of the ONNX files) | Converter account istupakov (not the original author), for onnx-asr | https://huggingface.co/istupakov/parakeet-tdt-0.6b-v2-onnx | cc-by-4.0; base_model: nvidia/parakeet-tdt-0.6b-v2 | 0bbb45a3365852604aef28b538a8f066f4ccaa85 (2026-02-17) | onnx-asr / ONNX Runtime | not stated | Inherits the upstream card (not separately read) | Not verified as the repository YazSes downloads. The code names only the alias nemo-parakeet-tdt-0.6b-v2 and onnx-asr is not installed in this worktree, so the alias-to-repo mapping was not inspected | No (not benchmarked as this repo) |
NVIDIA Parakeet TDT 0.6B v3 (nemo-parakeet-tdt-0.6b-v3) | NVIDIA | https://huggingface.co/nvidia/parakeet-tdt-0.6b-v3 | cc-by-4.0 (line 812) | 541d1f99c6b0c3cd0b11a95167540bb8edefd82b (2026-08-05) | NeMo; safetensors; GGUF variant also listed on the Hub | "Designed for high-throughput speech-to-text" (line 789); hardware statements not read in full | Multilingual (25 European languages per card, line 794) | Listed only: language/capability.py:89 (source) and :182 (table row). Not the engine default. No code path loads it by default | No (no result file names v3) |
UsefulSensors Moonshine (now moonshine-ai/moonshine on the Hub) | Useful Sensors (card: "Useful Sensors developed the models") | https://huggingface.co/moonshine-ai/moonshine (the id in code, UsefulSensors/moonshine, redirects here) | mit (front matter). Redirect target | 48b4e427b587bcf67797a5be706d6ddc4a298149 (2025-11-30) | useful-moonshine-onnx (ONNX Runtime) | not stated numerically. Card says intended for platforms "severely constrained in memory capacity and computational resources" (intent, not a figure) | English only; tiny and base are English-only (table, card line 23-24). "prone to generating repetitive texts" (line 58) | Opt-in engine: src/yazses/stt/moonshine.py:46 (DEFAULT_MODEL = "moonshine/base"); load at moonshine.py:131-147. The installed package downloads from the id UsefulSensors/moonshine with hf_hub_download and no revision: .venv/lib/python3.14/site-packages/moonshine_onnx/model.py:5-9, package version 20251121 | Yes: probes/wer-matrix.json (tiny 4.20, base 3.17), wer-test-other.json, probes/wer-vm-clean.json. Model name only |
SpeechBrain ECAPA-TDNN speaker encoder (speechbrain/spkrec-ecapa-voxceleb) | SpeechBrain team; architecture Desplanques et al. (Interspeech 2020, card citation) | https://huggingface.co/speechbrain/spkrec-ecapa-voxceleb | apache-2.0 (front matter and metadata) | 0f99f2d0ebe89ac095bcc5903c4dd8f72b367286 (2025-02-18) | SpeechBrain (PyTorch) | not stated in card (card gives a GPU option, run_opts={"device":"cuda"}, line 80) | Trained on VoxCeleb. "The SpeechBrain team does not provide any warranty on the performance achieved by this model when used on other datasets" (line 104-106) | Optional (voiceprint extra, pyproject.toml:214): src/yazses/voiceprint/ecapa.py:28-29 with load_cache_first; default backend value src/yazses/config.py:788 ("ecapa"). Whether the voiceprint feature is on by default was not checked | No (only log files mention speechbrain: probes/logs/x86-*.log) |
pyannote speaker diarization pipeline 3.1 (pyannote/speaker-diarization-3.1) | pyannote (Hugging Face organisation) | https://huggingface.co/pyannote/speaker-diarization-3.1 | mit (Hub metadata). Gated (gated: auto); the model card body returned HTTP 401 without a token and was not read | 84fd25912480287da0247647c3d2b4853cb3ee5d (2024-05-10) | pyannote.audio (PyTorch) | not stated (not read) | not read | Opt-in ([recimport] backend = "pyannote", src/yazses/config.py:1762 comment; src/yazses/recimport/pyannote_backend.py:70, :196, Pipeline.from_pretrained(..., token=...)). Requires accepted conditions (pyannote_backend.py:162-163) | No |
pyannote segmentation 3.0 (pyannote/segmentation-3.0) | pyannote | https://huggingface.co/pyannote/segmentation-3.0 | mit (Hub metadata). Gated (auto); body returned HTTP 401 | e66f3d3b9eb0873085418a7b813d3b369bf160bb (2024-05-10) | pyannote.audio | not stated (not read) | not read | Loaded by the pyannote pipeline (pyannote_backend.py:76 comment: "the pipeline loads both"). Its weights, converted, are also the default sherpa segmentation model (next row) | No, as the pyannote runtime. The sherpa conversion is benchmarked (below) |
sherpa-onnx pyannote segmentation 3.0 ONNX (sherpa-onnx-pyannote-segmentation-3-0.onnx) | k2-fsa (sherpa-onnx), converting pyannote segmentation 3.0 | Release asset: https://github.com/k2-fsa/sherpa-onnx/releases/download/speaker-segmentation-models/sherpa-onnx-pyannote-segmentation-3-0.tar.bz2 (not a Hub repository) | Not verified for the conversion. Upstream pyannote segmentation 3.0 is mit per Hub metadata. sherpa-onnx code is Apache-2.0 (LICENSE fetched) | Not a commit. Tag-based URL (speaker-segmentation-models); no checksum in code. HEAD returned HTTP 200 on 2026-10-28; Content-Length not reported | sherpa-onnx (ONNX Runtime, no torch) | not stated | not stated | Default diarizer backend: src/yazses/config.py:1762 (backend: str = "sherpa"); URL src/yazses/recimport/download.py:22-24; filename src/yazses/recimport/diarizer.py:18 | Yes: paper/results/diarization-ami16_corpus-der.json (backend recorded as "sherpa-onnx (pyannote segmentation-3.0 + 3D-Speaker ERes2Net)"); diarization-ami16_corpus-maxspk4.json, probes/ami16-shipped.json, probes/ami-der.json |
3D-Speaker ERes2Net base, zh-cn ONNX (3dspeaker-eres2net-base.onnx) | 3D-Speaker project (repository modelscope/3D-Speaker). Variant name in URL: zh-cn | Release asset: https://github.com/k2-fsa/sherpa-onnx/releases/download/speaker-recongition-models/3dspeaker_speech_eres2net_base_sv_zh-cn_3dspeaker_16k.onnx (not a Hub repository; tag spelled recongition in the URL) | Not verified for the weights. 3D-Speaker repository code licence: Apache-2.0 (LICENSE fetched, raw.githubusercontent.com/modelscope/3D-Speaker/main/LICENSE) | Not a commit. Tag-based URL; no checksum in code. HEAD returned HTTP 200 on 2026-10-28 | sherpa-onnx | not stated | not stated | Default diarizer embedding model: src/yazses/recimport/download.py:26-28; src/yazses/recimport/diarizer.py:19 | Yes: diarization-ami16_corpus-der.json, centroid-merge-ami16_corpus-*.json, probes/embmodel-test.json (compares ERes2Net, CAM++ and WeSpeaker variants) |
Silero VAD, faster-whisper bundled (silero_vad_v6.onnx) | Silero Team (snakers4/silero-vad, named in faster_whisper/vad.py:13 comment) | Bundled in the faster-whisper package; no Hub repo fetched | Not verified in this pass (licence of the Silero model was not read; faster-whisper package metadata says MIT) | Not a Hub commit. File in the worktree environment: SHA-256 4cbf549b8326f60f80f2536d9eefeb450a9abe83365a098031c89719f1be17d2, 1,245,151 bytes (faster-whisper 1.2.1) | ONNX Runtime via faster-whisper | not stated | not stated | Yes, used: speech detector for file import (src/yazses/recimport/audio_io.py:152-160, faster_whisper.vad). No download: the file ships in the package | No measurement file names this VAD model. paper/results/platform-resolution.json mentions silero in a resolution context only |
Silero VAD, silero-vad package (optional) | Silero Team | Package silero-vad (PyPI); not fetched | Not verified | Not fetched | load_silero_vad(onnx=True) | Per the project's own docstring (src/yazses/meeting/silero_vad.py:5-8, measured by the project 2026-08-23): pulls torch and torchaudio, about 3 GB. Not re-measured here | not stated | Opt-in ([meeting] vad_backend = "silero", default calibrated): src/yazses/meeting/silero_vad.py:41-46; src/yazses/config.py:1834; pyproject.toml:321-322 | No |
MediaPipe FaceLandmarker, float16 bundle (face_landmarker.task) | Google (MediaPipe) | https://storage.googleapis.com/mediapipe-models/face_landmarker/face_landmarker/float16/1/face_landmarker.task (src/yazses/gaze/download.py:27-29) | Not verified. No licence or terms page was read | Not a Hub commit. Versioned path float16/1; no checksum in code. HEAD on 2026-10-28: HTTP 200, Content-Length: 3758596, ETag (MD5, hex) b0e7274907a1644404fef66b28dd6d85, Last-Modified: Wed, 03 May 2023. File not downloaded, so the hash was not recomputed | MediaPipe Tasks (Python), CPU path | not stated in code or read docs | not read | Opt-in (gaze/perception features, both off by default: src/yazses/config.py:585-586 and :653): src/yazses/gaze/download.py:121-130 (fetch once to the user cache, MIN_MODEL_BYTES), used by src/yazses/gaze/mediapipe_backend.py:27-37 and src/yazses/perception/mediapipe_backend.py:110-120 | No (no result file names face_landmarker) |
L2CS-Net (gaze backend l2cs, manual install) | Ahmednull/L2CS-Net (named as base model of the LiteRT conversion in Table B); upstream authors not verified here | Not fetched | Not verified | Not fetched | PyTorch, via the l2cs package | not stated | not stated | Opt-in, manual install only: src/yazses/gaze/l2cs.py:18 (from l2cs import Pipeline), :25 (weights=None, comment says the package resolves its bundled ResNet). src/yazses/gaze/factory.py:12-14 | No |
Notes on A2:
- Parakeet ONNX mapping.
src/yazses/stt/parakeet.pynever names a Hub repository; it passes the alias toonnx_asr.load_model. Theonnx-asrpackage is not installed in the worktree environment, so which repository it fetches, and at which revision, was not verified. The conversion card (istupakov/...) shows the same alias in its example, which suggests the alias belongs toonnx-asr, but that is inference from the card, not from the library source. - Moonshine revision. The package fetches
UsefulSensors/moonshineby subfolder (onnx/merged/base/float,model.py:5-9). Because the id is a redirect, the repository being read ismoonshine-ai/moonshine; the file tree was not compared against theonnx/merged/base/floatfiles that the package uses.
Table A3: upstream originals (for provenance; not downloaded by YazSes)¶
| Upstream | Official URL | Licence as stated on the Hub card | Revision (sha) | What the card says about use or limits | Relation to the conversion in Table A1 |
|---|---|---|---|---|---|
| OpenAI Whisper code | https://github.com/openai/whisper | MIT License, "Copyright © 2022 OpenAI" (LICENSE fetched 2026-10-28) | GitHub repository (not pinned here) | not in scope of the card | The code. The weights are separate (next rows) |
openai/whisper-tiny | https://huggingface.co/openai/whisper-tiny | apache-2.0 (Hub metadata) | 169d4a4341b33bc18d8881c4b69c2e104e1cc0af | not read in full; the large-v3 card is representative | Upstream of Systran/faster-whisper-tiny. The Systran card says mit |
openai/whisper-tiny.en | https://huggingface.co/openai/whisper-tiny.en | apache-2.0 | 87c7102498dcde7456f24cfd30239ca606ed9063 | not read in full | Upstream of Systran/faster-whisper-tiny.en. Systran says mit |
openai/whisper-base | https://huggingface.co/openai/whisper-base | apache-2.0 | e37978b90ca9030d5170a5c07aadb050351a65bb | not read in full | Upstream of Systran/faster-whisper-base. Systran says mit |
openai/whisper-base.en | https://huggingface.co/openai/whisper-base.en | apache-2.0 | 911407f4214e0e1d82085af863093ec0b66f9cd6 | not read in full | Upstream of Systran/faster-whisper-base.en (default). Systran says mit |
openai/whisper-small | https://huggingface.co/openai/whisper-small | apache-2.0 | 973afd24965f72e36ca33b3055d56a652f456b4d | not read in full | Upstream of Systran/faster-whisper-small. Systran says mit |
openai/whisper-small.en | https://huggingface.co/openai/whisper-small.en | apache-2.0 | e8727524f962ee844a7319d92be39ac1bd25655a | not read in full | Upstream of Systran/faster-whisper-small.en. Systran says mit |
openai/whisper-medium | https://huggingface.co/openai/whisper-medium | apache-2.0 | abdf7c39ab9d0397620ccaea8974cc764cd0953e | not read in full | Upstream of Systran/faster-whisper-medium. Systran says mit |
openai/whisper-medium.en | https://huggingface.co/openai/whisper-medium.en | apache-2.0 | 2e98eb6279edf5095af0c8dedb36bdec0acd172b | not read in full | Upstream of Systran/faster-whisper-medium.en. Systran says mit |
openai/whisper-large (v1) | https://huggingface.co/openai/whisper-large | Not verified (not fetched) | not verified | not verified | Upstream named by Systran/faster-whisper-large-v1 |
openai/whisper-large-v2 | https://huggingface.co/openai/whisper-large-v2 | apache-2.0 | ae4642769ce2ad8fc292556ccea8e901f1530655 | not read in full | Upstream of Systran/faster-whisper-large-v2. Systran says mit |
openai/whisper-large-v3 | https://huggingface.co/openai/whisper-large-v3 | apache-2.0 (front matter, line 112 of the README) | 06f233fe06e710322aca913c1bc4249a0d71fce1 | Intended users: AI researchers. Caution against surveillance and "subjective classification" (line 499). Not recommended for high-risk domains (line 499). Repetition loops may occur (line 517). No minimum CPU or RAM stated; GPU speed-ups only (lines 306-459) | Upstream of Systran/faster-whisper-large-v3. Licence mismatch: Systran says mit, the upstream card says apache-2.0 |
openai/whisper-large-v3-turbo | https://huggingface.co/openai/whisper-large-v3-turbo | mit (Hub metadata) | 41f01f3fe87f28c78e2fbf8b568835947dd65ed9 | not read in full | Upstream of dropbox-dash/faster-whisper-large-v3-turbo (the redirect target). Both say mit: matches |
distil-whisper/distil-large-v2 | https://huggingface.co/distil-whisper/distil-large-v2 | mit | 97d2c8f9cae1b0f6c8fc2e173495ee4cedc05843 | not read in full; the Parakeet-v2-style CC licence does not apply here | Upstream of Systran/faster-distil-whisper-large-v2. Both mit: matches |
distil-whisper/distil-large-v3 | https://huggingface.co/distil-whisper/distil-large-v3 | mit | 8031d2e6ce6631b7fc45629dddfc00271116d981 | not read in full | Upstream of Systran/faster-distil-whisper-large-v3. Matches |
distil-whisper/distil-large-v3.5 | https://huggingface.co/distil-whisper/distil-large-v3.5 | mit | 728a7691f3ff1d3d971528d3203a6e9559165d41 | not read in full | Upstream of distil-whisper/distil-large-v3.5-ct2. The ct2 card cites MIT inherited from OpenAI Whisper (line 65). Matches on the field |
distil-whisper/distil-medium.en | https://huggingface.co/distil-whisper/distil-medium.en | mit | 6e61418885eaf4d5cc9f64e508e80ac5b4c052b7 | not read in full | Upstream of Systran/faster-distil-whisper-medium.en (matched by repository name; the Systran card was not read) |
distil-whisper/distil-small.en | https://huggingface.co/distil-whisper/distil-small.en | mit | 9e4a67ca4569c30be43a3fe7fba1621e504f0093 | not read in full | Upstream of Systran/faster-distil-whisper-small.en |
Observation for the record: for the non-distil Whisper family, the code is MIT (OpenAI), the upstream weights cards are Apache-2.0, and every Systran conversion card says MIT. The conversion card's licence field does not match its upstream card. This document does not decide which licence governs the weights; it records what the cards say.
Table A4: benchmarked by YazSes, not used at runtime¶
| Model | Official URL | Licence (as stated) | Revision (sha) | Benchmark file | Note |
|---|---|---|---|---|---|
steja/whisper-small-persian (fine-tune, converted to CTranslate2 int8 for the benchmark) | https://huggingface.co/steja/whisper-small-persian | apache-2.0 (Hub metadata) | 8c600b6b69f552730abab77a6a46311d673ea584 (2024-11-28); the MANIFEST says rev 8c600b6b, which is a prefix of this sha | paper/results/persian-cvfa-test10559-steja-small.json, persian-fleurs-test871-steja-small.json | Not in WHISPER_MODELS; not shipped as a default; the conversion was done for the benchmark only |
Table B: candidates, NOT used, NOT recommended¶
Candidate - requires licence review and independent benchmark; no evidence of fitness. A Hub model existing is not evidence of accuracy or licence suitability. Model cards are self-reported; none of the figures below was reproduced.
| Track | Candidate (Hub id) | Licence field | Revision (sha, 2026-10-28) | Status and reason |
|---|---|---|---|---|
| Camera/gaze | litert-community/L2CS-Gaze360-LiteRT (base model Ahmednull/L2CS-Net) | mit | f0c19a658e0a67c913e5704b051378200021e85d | Candidate - requires licence review and independent benchmark; no evidence of fitness. Upstream L2CS-Net licence not verified. On-device timings are the publisher's own |
| Camera/gaze | BcantCode/GazeInceptionLite | mit | 89bf6c3a4ad1313bfdc5346f6dd5bab036029b3c | Candidate - requires licence review and independent benchmark; no evidence of fitness. Card says "clinical validation needed" and "requires separate face/eye detection" |
| Camera/gaze | Skulleton12/mediapipe-face-landmarker (a face_landmarker.task re-upload) | apache-2.0 | e8098a34013a130b8d8c88de0772f162b450dfad | Candidate - requires licence review and independent benchmark; no evidence of fitness. Card has no provenance text. The file size equals the Google asset's Content-Length (3,758,596 bytes); the hash was not compared |
| Camera/gaze | jkyy/actb-face-landmarker (a face_landmarker.task re-upload) | apache-2.0 | 20cb28de63b6989ad8b3e6692ec4e15b9513d424 | Candidate - requires licence review and independent benchmark; no evidence of fitness. Card (in Chinese) says the weights were re-hosted from Google's MediaPipe release under Apache-2.0; this is a third-party statement and was not checked against Google. Same size and LFS SHA-256 as the row above |
| EEG | braindecode/eegpt-pretrained | bsd-3-clause | e41cb3ae2ce4fd9eb736862292c91f8128d15618 | Candidate - requires licence review and independent benchmark; no evidence of fitness. Pretrained EEG model for braindecode; no EEG task, electrode set or accuracy was checked |
| EMG | braindecode/VEMG2Pose-emg2pose | cc-by-nc-sa-4.0 | 12043578f59ad21c206aa3229196d1736da0ff70 | Candidate - requires licence review and independent benchmark; no evidence of fitness. Card: weights are Meta's, under CC BY-NC-SA 4.0 (non-commercial, share-alike); UmeTrack labels CC BY-NC 4.0 (lines 35-38) |
Search results with no relevant hit: openseeface returned 0 models (search API, 2026-10-28), so none identified for OpenSeeFace. EEG and EMG keyword searches returned many unrelated hits (for example GGUF language models for "em" in German), which were not padded into the table.
Offline and cache behaviour¶
- Where models live. The Hub cache is
HF_HUB_CACHE, elseHF_HOME/hub, else$XDG_CACHE_HOME/huggingface/hub(default~/.cache/huggingface/hub).src/yazses/stt/download.py:149-167(hub_cache_dir).docs/models.md:62-63says the same path on Linux, macOS and Windows. - Default engine.
src/yazses/config.py:23(engine = "faster-whisper") andsrc/yazses/config.py:43(model = "base.en"). - Whisper load, cache first.
src/yazses/stt/faster_whisper.py:40-44callsWhisperModel(..., local_files_only=True)first. If that raises, it logs "not in the local cache; downloading it once" (line 63) and callsWhisperModelagain with network access (line 66). Errors are mapped toModelUnavailableError(lines 67-83). The module docstring (faster_whisper.py:16-31) records a measured hang on a cached model when the hub was consulted on every start. - Explicit download.
src/yazses/stt/download.py:201-214(download_stt_model) callsfaster_whisper.utils.download_model(name)without arevisionargument (download.py:212). faster-whisper 1.2.1 defaultsrevisiontoNone(faster_whisper/utils.py:54), which resolves to the repository's default branch at the time of download. - No revision pins anywhere in the loaders. Searched
src/yazses/stt,src/yazses/recimport,src/yazses/gaze,src/yazses/perception,src/yazses/voiceprint,src/yazses/meetingforrevision,sha,checksum,sha256: none in the model-loading code. Hub loads are therefore floating. The sherpa and MediaPipe URLs are versioned by path or tag but carry no hash. - Parakeet.
src/yazses/stt/parakeet.py:152-195.onnx_asr.load_modelhas no offline switch (comment atparakeet.py:188-190), so the whole load is wrapped inload_cache_first(parakeet.py:194). No revision argument (parakeet.py:164,:173). - Moonshine.
src/yazses/stt/moonshine.py:131-147wraps the load inload_cache_first. The package's own download (moonshine_onnx/model.py:5-9) does not pass a revision. - Shared mechanism.
src/yazses/system/hfcache.py:135-157(load_cache_first). It first runs the load withHF_HUB_OFFLINE=1(throughcache_first, lines 82-133). On failure it logs and retries online (lines 149-157). If the user already set offline mode, it does not retry (lines 143-144). The flag is process-global during the load (module docstring,hfcache.py:33-36). - Gated pyannote.
src/yazses/recimport/pyannote_backend.py:81(token env names),:108(token=Trueuses the stored login),:162-163(the user must accept conditions on both repositories),:196(load throughload_cache_first). - ECAPA.
src/yazses/voiceprint/ecapa.py:27-31, throughload_cache_first. - Sherpa diarization (default). Models are not fetched by the diarizer at run time.
src/yazses/recimport/diarizer.py:30-37(model_dir, from the platform data directorydiarization/, or[recimport] model_dir).SherpaDiarizerraisesFileNotFoundErrorwhen the files are missing (diarizer.py:~88-95) and points atyazses transcribe --download-models. The download itself isrecimport/download.py:30-45, usingurllib, no checksum. - MediaPipe FaceLandmarker.
src/yazses/gaze/download.py:121-130fetches once into the user cache (model_dir,download.py:44-47, plus.partand a minimum size of 1,000,000 bytes,MIN_MODEL_BYTES,download.py:39). A truncated transfer is rejected whenContent-Lengthdisagrees (download.py:112-118). No checksum. Construction of the backends calls it:src/yazses/gaze/mediapipe_backend.py:36,src/yazses/perception/mediapipe_backend.py:120. - Silero (faster-whisper bundled). No download; the ONNX file ships in the package (
faster_whisper/assets/silero_vad_v6.onnx).src/yazses/recimport/audio_io.py:131-160says the same. - Silero (optional package).
src/yazses/meeting/silero_vad.py:5-8docstring says the wheel carries the ONNX and no model is downloaded. Not verified in this pass (package not installed). - Repository-level rule.
AGENTS.md(Non-negotiable rule 1) requires that outbound network paths are registered and classified in ADR-019 (design/adr/adr-019-egress-inventory-and-escalation.md). The gaze download is named insrc/yazses/gaze/mediapipe_backend.py:21-24as the one outbound path there. That ADR was not read in this pass.
Verification log¶
All requests were GET (or HEAD where marked). No Hugging Face token was used. No upload or write request was made. Status is the HTTP status observed on 2026-10-28.
Hugging Face public API (/api/models/<id>), 200 unless noted:
Systran/faster-whisper-tiny,-tiny.en,-base,-base.en,-small,-small.en,-medium,-medium.en,-large-v1,-large-v2,-large-v3,faster-distil-whisper-large-v2,faster-distil-whisper-large-v3,faster-distil-whisper-medium.en,faster-distil-whisper-small.en: all 200.distil-whisper/distil-large-v3.5-ct2: 200.mobiuslabsgmbh/faster-whisper-large-v3-turbo: 307 (redirect); followed todropbox-dash/faster-whisper-large-v3-turbo: 200.UsefulSensors/moonshine: 307 (redirect); followed tomoonshine-ai/moonshine: 200.nvidia/parakeet-tdt-0.6b-v2: 200.nvidia/parakeet-tdt-0.6b-v3: 200.istupakov/parakeet-tdt-0.6b-v2-onnx: 200.speechbrain/spkrec-ecapa-voxceleb: 200.pyannote/speaker-diarization-3.1: 200 (metadata).pyannote/segmentation-3.0: 200 (metadata).openai/whisper-large-v3: 200.openai/whisper-tiny,-tiny.en,-base,-base.en,-small,-small.en,-medium,-medium.en,-large-v2,-large-v3-turbo: 200 (metadata).distil-whisper/distil-large-v3,-distil-large-v2,-distil-large-v3.5,-distil-small.en,-distil-medium.en: 200 (metadata).litert-community/L2CS-Gaze360-LiteRT,BcantCode/GazeInceptionLite,jkyy/actb-face-landmarker,Skulleton12/mediapipe-face-landmarker,braindecode/eegpt-pretrained,braindecode/VEMG2Pose-emg2pose: 200.Skulleton12/mediapipe-face-landmarker?blobs=true,jkyy/actb-face-landmarker?blobs=true: 200 (file size and LFS SHA-256 offace_landmarker.task).steja/whisper-small-persian: 200.- Hugging Face search:
api/models?search=gaze,face+landmarker,openseeface,eeg,emg;api/datasets?search=eeg,emg: all 200.
Hugging Face raw model cards (/<id>/raw/main/README.md):
- Systran (15 repos),
distil-whisper/distil-large-v3.5-ct2,nvidia/parakeet-tdt-0.6b-v2,nvidia/parakeet-tdt-0.6b-v3,istupakov/parakeet-tdt-0.6b-v2-onnx,speechbrain/spkrec-ecapa-voxceleb,openai/whisper-large-v3: 200. mobiuslabsgmbh/faster-whisper-large-v3-turbo: 307, followed todropbox-dash/...: 200.UsefulSensors/moonshine: 307, followed tomoonshine-ai/moonshine: 200.pyannote/speaker-diarization-3.1,pyannote/segmentation-3.0: 401 (gated; not read).Skulleton12/mediapipe-face-landmarker,jkyy/actb-face-landmarker,litert-community/L2CS-Gaze360-LiteRT,braindecode/VEMG2Pose-emg2pose,braindecode/eegpt-pretrained,BcantCode/GazeInceptionLite: 200.
Other hosts:
https://raw.githubusercontent.com/openai/whisper/main/LICENSE: 200 (MIT License, Copyright 2022 OpenAI).https://raw.githubusercontent.com/k2-fsa/sherpa-onnx/master/LICENSE: 200 (Apache License 2.0; code licence, not model licence).https://raw.githubusercontent.com/modelscope/3D-Speaker/main/LICENSE: 200 (Apache License 2.0; code licence, not model licence).HEAD https://storage.googleapis.com/mediapipe-models/face_landmarker/face_landmarker/float16/1/face_landmarker.task: 200,Content-Length: 3758596,ETagb0e7274907a1644404fef66b28dd6d85,Last-Modified: Wed, 03 May 2023 18:02:21 GMT.HEAD https://github.com/k2-fsa/sherpa-onnx/releases/download/speaker-segmentation-models/sherpa-onnx-pyannote-segmentation-3-0.tar.bz2: 200 (after redirects).HEAD https://github.com/k2-fsa/sherpa-onnx/releases/download/speaker-recongition-models/3dspeaker_speech_eres2net_base_sv_zh-cn_3dspeaker_16k.onnx: 200 (after redirects).
Local (no network) checks in the worktree:
faster_whisper/utils.py_MODELS(faster-whisper 1.2.1 in.venv) compared withsrc/yazses/stt/download.py:47-67: same keys and repository ids (19 keys each; identical key set and repository ids).faster_whisper/assets/silero_vad_v6.onnx: SHA-256 and size recorded above..venv/lib/python3.14/site-packages/moonshine_onnx/model.py: repository id and file layout.
Not verified¶
- Parakeet ONNX source. Which repository
onnx-asrfetches fornemo-parakeet-tdt-0.6b-v2, and at which revision.onnx-asris not installed in this worktree. - Moonshine redirect. Whether
UsefulSensors/moonshine→moonshine-ai/moonshineis permanent, and whether theonnx/merged/base/floatfiles are unchanged since the package was released. mobiuslabsgmbhredirect. Same questions formobiuslabsgmbh/faster-whisper-large-v3-turbo→dropbox-dash/....- Gated pyannote model bodies. Model card text (intended use, limits, hardware) of
pyannote/speaker-diarization-3.1andpyannote/segmentation-3.0was not read (HTTP 401 without a token). Only Hub metadata (MIT, gated) was read. - Licence of sherpa-hosted conversions. The sherpa-onnx segmentation 3.0 and 3D-Speaker ERes2Net
.onnxfiles: licence of the weights not read; only the code licences were fetched. - MediaPipe FaceLandmarker licence and hash. Google's terms for the
.taskfile were not read. The file was not downloaded, so its SHA-256 and MD5 were not recomputed; only the HTTP headers were recorded. - Silero VAD licence. Not read. The
silero-vadpackage was not installed or fetched. - L2CS-Net. Upstream origin, weights, licence and revision were not verified; the
l2cspackage was not installed. - Upstream
openai/whisper-large(v1), and the full text of most upstream Whisper cards. Only licence fields and selected sections were read. - Parakeet, Moonshine, ECAPA hardware figures for CPU. Not stated in the cards read; no CPU figure is given here.
- Whether any optional model is active by default for a user. Gaze and perception are off by default (
config.py:653); whether the voiceprint and diarization features are on for a default install was not traced. - Benchmark-to-revision link. Result files record model names, not Hub repositories or revisions, except the Persian
cvfa-smallfile (see Table A1). Benchmarked numbers cannot be tied to a sha. - Candidate fitness. None of the Table B candidates was run, benchmarked or validated; their card figures are self-reported.
- EEG and EMG search coverage. Keyword searches only; not a survey.