grazzolini commited on
Commit
895b249
·
verified ·
1 Parent(s): 3f82555

Organize model families under versionless paths

Browse files
.gitattributes CHANGED
@@ -34,3 +34,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
  beat-this-small0/beat-this-small0.pte filter=lfs diff=lfs merge=lfs -text
 
 
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
  beat-this-small0/beat-this-small0.pte filter=lfs diff=lfs merge=lfs -text
37
+ beat-this/beat-this-small0.pte filter=lfs diff=lfs merge=lfs -text
README.md CHANGED
@@ -1,83 +1,24 @@
1
  ---
2
- license: bsd-2-clause
3
- library_name: onnxruntime
4
- pipeline_tag: audio-classification
5
  tags:
6
- - chord-recognition
7
  - music-information-retrieval
8
- - onnx
9
  ---
10
 
11
- # Crema 0.2.0 ONNX for TuneForge
12
 
13
- ONNX conversion of the pretrained chord-recognition model distributed in
14
- [Crema 0.2.0](https://github.com/bmcfee/crema/tree/0.2.0). TuneForge did not
15
- train this model. This repository supplies a reproducible format conversion,
16
- fixed inference state, integrity manifest, and validation tooling.
17
 
18
- ## Intended use
 
 
 
19
 
20
- Experimental CPU chord recognition in local TuneForge builds. TensorFlow Crema
21
- remains TuneForge's default while this conversion receives day-to-day testing.
22
- The model is not intended for safety-critical or unrelated audio classification.
23
 
24
- ## Inputs and outputs
25
-
26
- - Input: float32 HCQT magnitude, shape `[batch, frames, 216, 2]`, sampled at
27
- 44,100 Hz with hop length 4,096.
28
- - Outputs, in order: `chord_tag` (170 classes), `chord_pitch` (12),
29
- `chord_root` (13), and `chord_bass` (13).
30
- - Runtime state: reviewed JSON containing fixed HCQT parameters, the ordered
31
- chord vocabulary, and compact transition probabilities. Runtime loading does
32
- not use pickle.
33
-
34
- ## Conversion and validation
35
-
36
- The verified Crema wheel and embedded H5 weights are converted with TensorFlow
37
- 2.15.1, tf2onnx 1.16.1, ONNX 1.17.0, and opset 18. ONNX Runtime 1.29.0 uses only
38
- `CPUExecutionProvider`.
39
-
40
- Each release build validates two independent conversions. Required gates:
41
-
42
- - reported TensorFlow/ONNX tensor difference for numerical diagnostics;
43
- - exact argmax parity across all four heads;
44
- - exact normalized labels, boundaries, extensions, and inversions;
45
- - exact normalized timelines, which provide identical input to TuneForge's
46
- deterministic scorer;
47
- - maximum aligned confidence difference `0.10`;
48
- - zero run-to-run timeline drift.
49
-
50
- The release manifest records actual artifact hashes and sizes. Rebuilding may
51
- produce a different ONNX byte hash. Exact argmax and timeline behavior, not
52
- raw floating-point or byte identity, form the reproducibility gate.
53
-
54
- A separate sanitized private checkpoint compared six scorer results directly
55
- and found zero mismatches. Repository CI does not import or invoke TuneForge's
56
- scorer.
57
-
58
- ## Source, authorship, and provenance
59
-
60
- - Upstream author: Brian McFee.
61
- - Crema version: 0.2.0; tag commit
62
- `051c91697fd16856a0a1019cc06ee1f11fb52c5f`.
63
- - Verified wheel SHA-256:
64
- `b2787afd0367463438ca2b9b2944c490308eee1f307e5796078ec540a6281484`.
65
- - Embedded H5 SHA-256:
66
- `08b80e5b648e743c89284e9bc0b12b993dad1129157a75e0de70e076b0b8a235`.
67
-
68
- Crema's distribution includes the pretrained model but does not provide a
69
- machine-readable per-track training manifest. Upstream publications and source
70
- documentation describe evaluation and development using established chord
71
- annotation corpora; this conversion cannot independently reconstruct or audit
72
- the complete training set. Do not infer dataset ownership or broader rights
73
- from this model card.
74
-
75
- ## License
76
-
77
- Crema ships a BSD 2-Clause license covering its distribution, including the
78
- packaged model files. PyPI metadata labels version 0.2.0 as ISC, conflicting
79
- with the byte-identical license files in the wheel, source distribution, and
80
- upstream repository. This release preserves the exact shipped BSD notice in
81
- `LICENSES/crema-0.2.0-BSD-2-Clause.txt`.
82
-
83
- TuneForge's MIT license does not relicense Crema or this converted artifact.
 
1
  ---
 
 
 
2
  tags:
 
3
  - music-information-retrieval
4
+ - audio
5
  ---
6
 
7
+ # TuneForge model catalog
8
 
9
+ Versioned, checksummed model releases maintained for
10
+ [TuneForge](https://github.com/grazzolini/tuneforge). TuneForge did not train these models.
 
 
11
 
12
+ | Family | Task | Format | Runtime | License | Files |
13
+ | --- | --- | --- | --- | --- | --- |
14
+ | Crema 0.2.0 | Chord recognition | ONNX opset 18 | ONNX Runtime 1.29.0 CPU | BSD 2-Clause | [`crema/`](./crema/README.md) |
15
+ | Beat This 1.1.0 `small0` | Beat and downbeat tracking | ExecuTorch PTE FP32 | ExecuTorch 1.4.0 XNNPACK | MIT; runtime BSD 3-Clause | [`beat-this/`](./beat-this/README.md) |
16
 
17
+ Each family directory contains its model card, release manifest, licenses, and
18
+ family-relative `SHA256SUMS`. The Crema release also contains its fixed runtime state. The Beat
19
+ This PTE does not bundle ExecuTorch; application distributions supply the runtime separately.
20
 
21
+ The Git source, reproducible conversion tooling, and publication workflows live in the
22
+ [TuneForge models repository](https://github.com/grazzolini/tuneforge-models). New model releases
23
+ use maintainer-approved workflows, short-lived OIDC credentials, anonymous byte verification,
24
+ and artifact provenance attestations.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
{beat-this-small0 → beat-this}/LICENSES/beat-this-1.1.0-MIT.txt RENAMED
File without changes
{beat-this-small0 → beat-this}/LICENSES/executorch-1.4.0-BSD-3-Clause.txt RENAMED
File without changes
{beat-this-small0 → beat-this}/README.md RENAMED
File without changes
{beat-this-small0 → beat-this}/SHA256SUMS RENAMED
File without changes
{beat-this-small0 → beat-this}/beat-this-small0.pte RENAMED
File without changes
{beat-this-small0 → beat-this}/manifest.json RENAMED
File without changes
{beat-this-small0 → beat-this}/validation.json RENAMED
File without changes
{LICENSES → crema/LICENSES}/crema-0.2.0-BSD-2-Clause.txt RENAMED
File without changes
crema/README.md ADDED
@@ -0,0 +1,84 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: bsd-2-clause
3
+ library_name: onnxruntime
4
+ pipeline_tag: audio-classification
5
+ tags:
6
+ - chord-recognition
7
+ - music-information-retrieval
8
+ - onnx
9
+ ---
10
+
11
+ # Crema 0.2.0 ONNX for TuneForge
12
+
13
+ ONNX conversion of the pretrained chord-recognition model distributed in
14
+ [Crema 0.2.0](https://github.com/bmcfee/crema/tree/0.2.0). TuneForge did not
15
+ train this model. This repository supplies a reproducible format conversion,
16
+ fixed inference state, integrity manifest, and validation tooling.
17
+
18
+ ## Intended use
19
+
20
+ CPU chord recognition for TuneForge's default Advanced Chords engine. TuneForge packages this
21
+ pinned model and its runtime state whenever Advanced Chords is enabled; the Crema Python package,
22
+ TensorFlow, and Keras are not required at runtime.
23
+ The model is not intended for safety-critical or unrelated audio classification.
24
+
25
+ ## Inputs and outputs
26
+
27
+ - Input: float32 HCQT magnitude, shape `[batch, frames, 216, 2]`, sampled at
28
+ 44,100 Hz with hop length 4,096.
29
+ - Outputs, in order: `chord_tag` (170 classes), `chord_pitch` (12),
30
+ `chord_root` (13), and `chord_bass` (13).
31
+ - Runtime state: reviewed JSON containing fixed HCQT parameters, the ordered
32
+ chord vocabulary, and compact transition probabilities. Runtime loading does
33
+ not use pickle.
34
+
35
+ ## Conversion and validation
36
+
37
+ The verified Crema wheel and embedded H5 weights are converted with TensorFlow
38
+ 2.15.1, tf2onnx 1.16.1, ONNX 1.17.0, and opset 18. ONNX Runtime 1.29.0 uses only
39
+ `CPUExecutionProvider`.
40
+
41
+ Each release build validates two independent conversions. Required gates:
42
+
43
+ - reported TensorFlow/ONNX tensor difference for numerical diagnostics;
44
+ - exact argmax parity across all four heads;
45
+ - exact normalized labels, boundaries, extensions, and inversions;
46
+ - exact normalized timelines, which provide identical input to TuneForge's
47
+ deterministic scorer;
48
+ - maximum aligned confidence difference `0.10`;
49
+ - zero run-to-run timeline drift.
50
+
51
+ The release manifest records actual artifact hashes and sizes. Rebuilding may
52
+ produce a different ONNX byte hash. Exact argmax and timeline behavior, not
53
+ raw floating-point or byte identity, form the reproducibility gate.
54
+
55
+ A separate sanitized private checkpoint compared six scorer results directly
56
+ and found zero mismatches. Repository CI does not import or invoke TuneForge's
57
+ scorer.
58
+
59
+ ## Source, authorship, and provenance
60
+
61
+ - Upstream author: Brian McFee.
62
+ - Crema version: 0.2.0; tag commit
63
+ `051c91697fd16856a0a1019cc06ee1f11fb52c5f`.
64
+ - Verified wheel SHA-256:
65
+ `b2787afd0367463438ca2b9b2944c490308eee1f307e5796078ec540a6281484`.
66
+ - Embedded H5 SHA-256:
67
+ `08b80e5b648e743c89284e9bc0b12b993dad1129157a75e0de70e076b0b8a235`.
68
+
69
+ Crema's distribution includes the pretrained model but does not provide a
70
+ machine-readable per-track training manifest. Upstream publications and source
71
+ documentation describe evaluation and development using established chord
72
+ annotation corpora; this conversion cannot independently reconstruct or audit
73
+ the complete training set. Do not infer dataset ownership or broader rights
74
+ from this model card.
75
+
76
+ ## License
77
+
78
+ Crema ships a BSD 2-Clause license covering its distribution, including the
79
+ packaged model files. PyPI metadata labels version 0.2.0 as ISC, conflicting
80
+ with the byte-identical license files in the wheel, source distribution, and
81
+ upstream repository. This release preserves the exact shipped BSD notice in
82
+ `LICENSES/crema-0.2.0-BSD-2-Clause.txt`.
83
+
84
+ TuneForge's MIT license does not relicense Crema or this converted artifact.
SHA256SUMS → crema/SHA256SUMS RENAMED
@@ -1,5 +1,5 @@
 
 
1
  a903f9709821fccebb31d4e93d7d783642faaa90859f45f308c0f9131cc7ca59 crema-0.2.0-opset18.onnx
2
  3744bf9ecb47de7194cb9f250fba26678ea347911af32ec4813645d5e033aca2 crema-0.2.0-runtime-state.json
3
- 3fab560f13ec4a284f62a504676911011323492e1a9b34b3c47059c2972b4640 README.md
4
- 81858cdf4828dc809be65331411ceee9641e896a2fa43a703d331a03410c2dad LICENSES/crema-0.2.0-BSD-2-Clause.txt
5
- 7f73ccd7da3740c5234b5f3ded22e3a00be42a48cebdc654e1eed1c1b81b66e1 manifest.json
 
1
+ 81858cdf4828dc809be65331411ceee9641e896a2fa43a703d331a03410c2dad LICENSES/crema-0.2.0-BSD-2-Clause.txt
2
+ d2045db926e6574a74dc321165fd0fbaefc6518bc1e137bf25bf51039b557b85 README.md
3
  a903f9709821fccebb31d4e93d7d783642faaa90859f45f308c0f9131cc7ca59 crema-0.2.0-opset18.onnx
4
  3744bf9ecb47de7194cb9f250fba26678ea347911af32ec4813645d5e033aca2 crema-0.2.0-runtime-state.json
5
+ 177a3526ac5714abf8e1db0a1080cd4352f9ec433e1e70d4caecd10f787b1012 manifest.json
 
 
crema-0.2.0-opset18.onnx → crema/crema-0.2.0-opset18.onnx RENAMED
File without changes
crema-0.2.0-runtime-state.json → crema/crema-0.2.0-runtime-state.json RENAMED
File without changes
manifest.json → crema/manifest.json RENAMED
@@ -48,8 +48,8 @@
48
  "size": 1316
49
  },
50
  "README.md": {
51
- "sha256": "3fab560f13ec4a284f62a504676911011323492e1a9b34b3c47059c2972b4640",
52
- "size": 3396
53
  },
54
  "crema-0.2.0-opset18.onnx": {
55
  "sha256": "a903f9709821fccebb31d4e93d7d783642faaa90859f45f308c0f9131cc7ca59",
 
48
  "size": 1316
49
  },
50
  "README.md": {
51
+ "sha256": "d2045db926e6574a74dc321165fd0fbaefc6518bc1e137bf25bf51039b557b85",
52
+ "size": 3481
53
  },
54
  "crema-0.2.0-opset18.onnx": {
55
  "sha256": "a903f9709821fccebb31d4e93d7d783642faaa90859f45f308c0f9131cc7ca59",