stt-gemma_embedding-2 / config.json
harshit2312's picture
stt-gemma_embedding-2: Core ML package (fp16, multifunction), tokenizer, subword 6-gram LM
cf06ce2 verified
Raw History Blame Contribute Delete
4.18 kB
{
"name": "V1: EmbeddingGemma 2 audio tower (layers 0-11) + causal CTC head, Core ML",
"version": "v1",
"license": "apache-2.0",
"base_model": {
"id": "google/embeddinggemma-2",
"revision": "914f7f89142e33e77833254d9c9b90c3cef7303b",
"license": "apache-2.0",
"component": "audio_tower",
"layers": [
0,
11
]
},
"package": {
"file": "v1.mlpackage",
"format": "mlprogram (multifunction, shared weights)",
"precision": "fp16",
"source_build": "fp16safe/fp16",
"specification_version": 9,
"minimum_os": "macOS 15 / iOS 18",
"compute_units": {
"recommended": "CPU_AND_NE",
"supported": [
"CPU_AND_NE",
"CPU_AND_GPU",
"CPU_ONLY"
]
},
"default_function": "win_10s"
},
"windows": [
{
"function": "win_5s",
"seconds": 5.0,
"mel_frames": 500,
"output_frames": 125
},
{
"function": "win_10s",
"seconds": 10.0,
"mel_frames": 1000,
"output_frames": 250
},
{
"function": "win_20s",
"seconds": 20.0,
"mel_frames": 2000,
"output_frames": 500
},
{
"function": "win_35s",
"seconds": 35.0,
"mel_frames": 3500,
"output_frames": 875
}
],
"window_choice": "smallest window with mel_frames >= valid mel frames",
"inputs": [
{
"name": "mel",
"shape": [
"1",
"T_mel",
"128"
],
"dtype": "float32",
"description": "log-mel frames (see feature_extractor), zero-padded to the function's window"
},
{
"name": "valid_len",
"shape": [
"1"
],
"dtype": "int32",
"description": "number of valid mel frames"
}
],
"outputs": [
{
"name": "log_probs",
"shape": [
"1",
"T_mel/4",
"257"
],
"dtype": "float16",
"description": "CTC log-probabilities (natural log), 256 pieces + blank"
},
{
"name": "l11",
"shape": [
"1",
"T_mel/4",
"1024"
],
"dtype": "float16",
"description": "layer-11 features after the int8 round trip"
}
],
"valid_output_frames": "ceil(valid_len / 4)",
"feature_extractor": {
"class": "Gemma4AudioFeatureExtractor",
"preprocessor_config": {
"dither": 0.0,
"feature_extractor_type": "Gemma4AudioFeatureExtractor",
"feature_size": 128,
"fft_length": 512,
"fft_overdrive": false,
"frame_length": 320,
"hop_length": 160,
"input_scale_factor": 1.0,
"max_frequency": 8000.0,
"mel_floor": 0.001,
"min_frequency": 0.0,
"padding_side": "right",
"padding_value": 0.0,
"per_bin_mean": null,
"per_bin_stddev": null,
"preemphasis": 0.0,
"preemphasis_htk_flavor": true,
"return_attention_mask": true,
"sampling_rate": 16000
},
"source": "google/embeddinggemma-2@914f7f89142e33e77833254d9c9b90c3cef7303b/preprocessor_config.json (unchanged)",
"call": {
"sampling_rate": 16000,
"padding": "longest",
"truncation": false
},
"valid_mel_frames": "sum(input_features_mask)",
"mel_frame_rate_hz": 100
},
"frame_rate_hz": 25,
"subsampling": 4,
"lookahead_ms": 160,
"encoder_lookahead_ms": 0,
"ctc_head": {
"params": 13283585,
"future_frames": 4,
"causal_conv": true
},
"vocab": {
"tokenizer": "spm_unigram256.model",
"type": "sentencepiece-unigram",
"size": 256,
"blank_id": 256,
"num_classes": 257
},
"decoder": {
"library": "ctc-beam-decoder",
"library_version": "0.2.0",
"lm": "sp256_6gram.bin",
"lm_order": 6,
"piece_word_prefix": "t",
"alpha": 0.8,
"beta": 1.0,
"beam": 32,
"units": "piece",
"beam_prune_logp": -10.0,
"token_min_logp": -5.0,
"unk_score_offset": -10.0,
"lm_score_boundary": true,
"prune_history": true
},
"long_audio": {
"max_mel_frames": 3500,
"left_context_s": 2.0,
"cut": "quietest point in the last 10 s (code repo: coreml/transcribe.py)"
},
"text_normalization": "lowercase, collapse whitespace"
}