{ "model": "phonon-31m-en", "upstream": { "model": "gradium/phonon-31m-en", "revision": "52433c46975bfa13144c56204c9f4ee1c5b148aa", "voices": { "repo": "gradium/phonon-voices", "revision": "0ee17205f254b5abc43b266c8a0f215565c352f7" }, "official": true, "license": "apache-2.0 (model card front matter and License section; phonon-voices card front matter)", "files_sha256": { "gradium/phonon-31m-en:model.safetensors": "8a04cf833cfe69b67c2ec968b2d31244655b9accc84ade9c0ebcc176f2074607", "gradium/phonon-31m-en:config.json": "7062ea376e6b158543c8abec8e5af67df171c49ad70eb7e2a0fb25c16f265e06", "gradium/phonon-31m-en:tokenizer.json": "691a00068fa7b989f2f3e5ae5daa2d1a5bb319f2d5360deafcfb19a8bb6e7936", "gradium/phonon-31m-en:tokenizer.model": "82e4572006d64d483317074c22c368e87779640b6f3a9dcd07b7caae32b030ce", "gradium/phonon-31m-en:default-voice.safetensors": "f739e8c4c76ee7f92e7c94a82002748c8cd22e99582ac49f7b9b94cd63786e18", "gradium/phonon-31m-en:README.md": "00f09ecdcd23ed9904f3a503baecc1f0c77515637ce6172b572ed3f50ce50c29", "gradium/phonon-voices:voices/LMDIYE0Oa377Qh6Z.safetensors": "45c582673cb20edb04ddcca2b5a8865ddfb0a82599efadb269021e87d20fbdd4", "gradium/phonon-voices:voices.jsonl": "874f34998ce581b94f2b8912aa015639f52b5fd62eba3ba11e1b64dcaed7d802", "gradium/phonon-voices:README.md": "0186c7d586a9594db1e0283cb68e84e88bbd9bc3c29047cf0083c7483556f3ee" }, "loader": "recipes/_phonon.py load_weights: model.safetensors (bf16 flow LM, f32 Mimi decoder) -> float32, load_state_dict(strict=True) into a module whose keys equal the checkpoint's" }, "versions": { "python": "3.12.15+meta", "torch": "2.14.1+cpu", "torchao": "0.18.0+cpu", "executorch": "1.5.1+cpu", "executorch_git": "3b60683923245cf472b7323426920e15623ba361", "transformers": "5.19.0", "huggingface_hub": "2.2.0" }, "export": { "api": "torch.export.export(strict=False) -> to_edge_transform_and_lower(partitioner=[WebGPUPartitioner(...)]) -> to_executorch()", "partitioner": { "flow_lm": "WebGPUPartitioner(compile_options={'require_dynamic_shapes': True, 'force_fp16': False}), dynamic S in [1, 128]", "mimi": "WebGPUPartitioner() (default compile options, static shapes)" }, "dtype": "float32 (bf16 checkpoint weights converted exactly)", "quantization": "none", "model_code": "recipes/_phonon.py FlowLMProgram, MimiStepProgram" }, "files": { "phonon_flow_lm.pte": { "bytes": 111847044, "sha256": "178698a6c4539ba48c93bd74c4165586c1da4fdd393bd144c27fd09d80021ad7" }, "phonon_mimi.pte": { "bytes": 41304196, "sha256": "d7acdf2d93ba4897e63b58d933c7425f49cf855ecbd1a6f51e273c5dd65bb3cc" }, "phonon_text_embed.bf16.bin": { "bytes": 4097024, "sha256": "7c6f3394fc86b55ed181ff0b9d2472cf0371d3feeac25a5d0f2eed0a3a2eaae1" }, "phonon_bos_embed.f32.bin": { "bytes": 2048, "sha256": "a4464c50596adea27c8f0457124ead461202dc2f67daf3c6dbbc289cf289fd32" }, "voice_default.f32.bin": { "bytes": 256000, "sha256": "d8a8ffc97e46c0330ef6a3842130b95cc5ee71759f66bb54bc2ec0b79fc36e57" }, "voice_en_us_easton.f32.bin": { "bytes": 256000, "sha256": "1d6ec67cbd3a45b2bacf84ff7ddfb184fd9e8467c2204f2eac0f4975c354b66b" }, "tokenizer.json": { "bytes": 277967, "sha256": "691a00068fa7b989f2f3e5ae5daa2d1a5bb319f2d5360deafcfb19a8bb6e7936" }, "phonon.json": { "bytes": 8599, "sha256": "e8fa6604769aeb3b63e95c44c912f7ae635a324ca3793ec62fca017346521750" } }, "graph": { "flow_lm": { "non_delegated_kernels": {}, "delegates": [ { "id": "VulkanBackend", "ops": { "et_vk.prepack.default": 23, "sym_size.int": 1, "et_vk.select_as_symint.default": 1, "aten.view_copy.default": 106, "aten.linear.default": 60, "aten.sub.Tensor": 12, "et_vk.rms_norm.default": 12, "aten.add.Tensor": 47, "aten.slice_copy.Tensor": 38, "et_vk.apply_rotary_emb_hf.default": 6, "sdpa_with_kv_cache.default": 6, "aten.gelu.default": 6, "aten.select_copy.int": 1, "aten.native_layer_norm.default": 8, "aten.sigmoid.default": 7, "aten.mul.Tensor": 20, "aten.unsqueeze_copy.default": 1 }, "inputs": 3, "outputs": 3 } ] }, "mimi": { "non_delegated_kernels": {}, "delegates": [ { "id": "VulkanBackend", "ops": { "et_vk.prepack.default": 34, "aten.mul.Tensor": 18, "aten.add.Tensor": 32, "aten.view_copy.default": 30, "aten.linear.default": 9, "aten.clone.default": 14, "aten.unsqueeze_copy.default": 9, "aten.convolution.default": 12, "aten.squeeze_copy.dims": 12, "aten.slice_copy.Tensor": 35, "aten.cat.default": 21, "aten.cos.default": 2, "aten.sin.default": 2, "aten.permute_copy.default": 12, "aten.native_layer_norm.default": 4, "aten.neg.default": 4, "aten.sub.Tensor": 15, "aten.bmm.default": 4, "aten._softmax.default": 2, "aten.gelu.default": 2, "aten.relu.default": 10, "aten.clamp.default": 10, "aten.exp.default": 10 }, "inputs": 16, "outputs": 16 } ] } }, "webgpu_runtime_checks": { "op_list": "checked against --runtime-ops", "flow_lm": { "problems": [], "ok": true, "notes": { "value_kinds": [ "Bool", "Double", "FLOAT32", "INT32", "Int", "IntList", "Null", "String", "SymInt", "ValueList" ], "aten.linear input ranks": [ "2" ], "sdpa_with_kv_cache q/k_cache": [ "((1, 128, 8, 64), (1, 512, 8, 64), 'SymInt')" ] } }, "mimi": { "problems": [], "ok": true, "notes": { "value_kinds": [ "Bool", "Double", "FLOAT32", "Int", "IntList", "Null", "String", "ValueList" ], "aten.linear input ranks": [ "2" ], "aten.convolution input/weight": [ "((1, 128, 1, 480), (128, 64, 1, 8))", "((1, 128, 482), (64, 128, 3))", "((1, 128, 96), (256, 128, 1))", "((1, 256, 1, 96), (256, 128, 1, 10))", "((1, 256, 98), (128, 256, 3))", "((1, 32, 1920), (64, 32, 1))", "((1, 512, 1, 1), (512, 1, 1, 32))", "((1, 512, 1, 16), (512, 256, 1, 12))", "((1, 512, 22), (512, 512, 7))", "((1, 64, 1922), (1, 64, 3))", "((1, 64, 1922), (32, 64, 3))", "((1, 64, 480), (128, 64, 1))" ] } } }, "command": "python recipes/phonon-31m-en.py --out out/phonon-31m-en" }