voice_audio_multi/tools/community_models/whistle_asr/PROVENANCE.md
Fabio c36510c21e
Some checks failed
Linux Build / Linux cpu (push) Has been cancelled
Linux Build / Linux cpu-clang (push) Has been cancelled
Linux Build / Linux vulkan (push) Has been cancelled
mac-build / macOS CPU (push) Has been cancelled
Nix Build / Nix (cpu) (push) Has been cancelled
Nix Build / Nix (vulkan) (push) Has been cancelled
windows-build / Windows CPU (push) Has been cancelled
Initial import: audio.cpp with Orange Pi documentation
2026-11-04 19:05:22 +01:00

4.5 KiB

Whistle conversion provenance

Checked on 2026-10-06. This records source inspection, not recognition-quality validation or legal approval.

Model and extracted assets

Measured source inspection identifies the converter's pinned release as Cactus-Compute/whistle at b358ddadd89b7a713b5aa131f23032d3cca1b251. The model card declares Apache-2.0. The pinned LICENSE contains the Apache License, Version 2.0. Its measured length is 11,358 bytes and SHA-256 is cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30, matching convert.py.

Measured converter inspection identifies these inputs:

  • checkpoints/whistle.safetensors supplies the published FP32 checkpoint, renamed locally to whistle.safetensors.
  • config.json supplies the model configuration.
  • whistle.cact supplies the tokenizer blob, 257-by-80 mel filterbank, and two 512-element Hadamard permutations.
  • LICENSE supplies the upstream license text, not audio.cpp's license.

convert.py verifies each source file's length and SHA-256 before conversion. extract_assets.py verifies the four extracted assets' shapes, lengths, and SHA-256 hashes. The .cact file itself has pinned SHA-256 b6e02f048568ac5d01a2042556c658061e699acbc0aa2a1439f52f3d461dffeb. These checks establish byte provenance, not the training origin or ownership of each asset.

Measured inspection of the pinned repository finds one LICENSE and no NOTICE file or separate asset-license files. No tokenizer training source, mel-filterbank generation source, or permutation-generation source is identified in that release. The repository-wide Apache-2.0 declaration is the published licensing evidence for these bundled assets. Independent third-party provenance remains unverified. If separate rights or notices apply, which upstream source identifies them? Resolve that question before asserting independently audited asset rights or publishing a model package.

Notice preservation and conversion

Measured converter inspection passes the source directory through --root and verifies six embedded sidecars plus the embedded model spec. The sidecars are LICENSE, config.json, tokenizer.blob, mel_filterbank_80.f32, hadamard_perm1.f32, and hadamard_perm2.f32. The upstream LICENSE therefore remains inside the converted GGUF. Do not remove that license when extracting or repackaging the model. For any future redistribution, provide recipients a readable license copy and retain applicable attribution and NOTICE content. Identify the repackaging as an audio.cpp conversion of the pinned FP32 checkpoint with assets extracted from the pinned .cact. No downloadable package or redistribution approval is claimed here.

Reference implementations

Measured source inspection identifies the documented reconstruction as mrfakename/whistle-ONNX at 14fc92cb09ad5c271fe9a4ec4be70274790050d2. Its model card declares Apache-2.0. The file catalog contains no LICENSE or NOTICE file. Inspected scripts/wt.py, scripts/cact.py, scripts/tok.py, and scripts/weights.py contain no copyright or license notices. The card declaration is the available licensing evidence, not a separately verified code-license grant. The contributor confirms that no port code was copied or adapted from an upstream or reference implementation. This is contributor-reported provenance, not an independent code-origin audit. No ONNX reference code or engine binary is included in this port. The scope of the reference card declaration for its scripts remains unverified, but this port does not claim or rely on permission to redistribute those scripts.

Measured reference-source inspection shows that the reconstruction uses deployed, dequantized .cact weights. Matching transcripts against that reference does not establish exact FP32 numerical parity with the published Safetensors checkpoint. The locally available official needle.exe has no recorded source revision. Its presence is not evidence of a pinned reference-engine revision or of any particular licensing terms for that binary. No reference engine or ONNX reconstruction is bundled by this converter.