File tree Expand file tree Collapse file tree 1 file changed +21
-0
lines changed Expand file tree Collapse file tree 1 file changed +21
-0
lines changed Original file line number Diff line number Diff line change @@ -492,6 +492,27 @@ namespace Qwen {
492492 bool flash_attn = false )
493493 : GGMLRunner(backend, offload_params_to_cpu) {
494494 qwen_image_params.flash_attn = flash_attn;
495+
496+ int model_layers = qwen_image_params.num_layers ;
497+ int num_layers = 1 ;
498+ std::string layer_prefix = " transformer_blocks." ;
499+ if (prefix.size () > 0 ) {
500+ layer_prefix = prefix + " ." + layer_prefix;
501+ }
502+ for (int layer = model_layers; layer > num_layers; layer--) {
503+ std::string layer_name = layer_prefix + std::to_string (layer-1 ) + " .attn.add_k_proj.bias" ;
504+ for (auto pair : tensor_types) {
505+ if (pair.first .find (layer_name) != std::string::npos) {
506+ num_layers = layer;
507+ break ;
508+ }
509+ }
510+ }
511+ if (num_layers < model_layers) {
512+ LOG_INFO (" Qwen Image: some layers missing, assuming pruned model" );
513+ }
514+
515+ qwen_image_params.num_layers = num_layers;
495516 qwen_image = QwenImageModel (qwen_image_params);
496517 qwen_image.init (params_ctx, tensor_types, prefix);
497518 }
You can’t perform that action at this time.
0 commit comments