diff --git a/conversion/pockettts.py b/conversion/pockettts.py index 04539e4681..90e16cd2b4 100644 --- a/conversion/pockettts.py +++ b/conversion/pockettts.py @@ -169,7 +169,7 @@ class PocketTTSMmprojModel(MmprojModel): self.gguf_writer.add_audio_num_mel_bins(1) # generation: flow-matching decoder + mimi decoder - # note: the SEANet and flow net hparams are hardcoded on the clip.cpp side for now + # the SEANet and flow net hparams are constant across the family, clip.cpp holds them self.gguf_writer.add_clip_has_gen_audio_encoder(True) self.gguf_writer.add_clip_gen_audio_projector_type(gguf.VisionProjectorType.POCKETTTS_GEN) self.gguf_writer.add_gen_audio_projection_dim(self.n_embd_text) diff --git a/tools/mtmd/clip-model.h b/tools/mtmd/clip-model.h index e7912c4dbb..6e9ede71e6 100644 --- a/tools/mtmd/clip-model.h +++ b/tools/mtmd/clip-model.h @@ -148,7 +148,6 @@ struct clip_hparams { int32_t mimi_downsample = 0; // encoder frame rate / model frame rate int32_t mimi_tfm_context = 0; // attention window of the mimi transformers, in frames int32_t flow_n_step = 1; // lsd_decode steps - float flow_temp = 0.7f; // noise std is sqrt(temp), the caller can override it // qwen3tts code2wav int32_t wav_tfm_n_layer = 0; diff --git a/tools/mtmd/clip.cpp b/tools/mtmd/clip.cpp index bb39d8b090..f2d9cd839a 100644 --- a/tools/mtmd/clip.cpp +++ b/tools/mtmd/clip.cpp @@ -4851,7 +4851,8 @@ bool clip_encode(struct clip_ctx * ctx, struct clip_encode_params * params) { } else { // flow matching starts from gaussian noise, std = sqrt(temp) ggml_tensor * t = get_inp_tensor("inp_noise"); - const float temp = params->flow_temp > 0.0f ? params->flow_temp : hparams.flow_temp; + // Config.default_temperature, a caller that knows its variant overrides it + const float temp = params->flow_temp > 0.0f ? params->flow_temp : 0.7f; std::normal_distribution dist(0.0f, std::sqrt(temp)); std::vector noise(ggml_nelements(t)); for (auto & v : noise) {