File tree Expand file tree Collapse file tree 1 file changed +28
-0
lines changed Expand file tree Collapse file tree 1 file changed +28
-0
lines changed Original file line number Diff line number Diff line change @@ -3931,6 +3931,34 @@ def prepare_tensors(self):
3931
3931
super ().prepare_tensors ()
3932
3932
3933
3933
3934
+ @Model .register ("GraniteForCausalLM" )
3935
+ class GraniteModel (Model ):
3936
+ """Conversion for IBM's GraniteForCausalLM"""
3937
+ model_arch = gguf .MODEL_ARCH .GRANITE
3938
+
3939
+ def set_gguf_parameters (self ):
3940
+ """Granite uses standard llama parameters with the following differences:
3941
+
3942
+ - No head_dim support
3943
+ - New multiplier params:
3944
+ - attention_multiplier
3945
+ - embedding_multiplier
3946
+ - residual_multiplier
3947
+ - logits_scaling
3948
+ """
3949
+ if head_dim := self .hparams .pop ("head_dim" , None ):
3950
+ logger .warning ("Ignoring head_dim (%s) from config for Granite" , head_dim )
3951
+ super ().set_gguf_parameters ()
3952
+ if attention_multiplier := self .hparams .get ("attention_multiplier" ):
3953
+ self .gguf_writer .add_attention_multiplier (attention_multiplier )
3954
+ if embedding_multiplier := self .hparams .get ("embedding_multiplier" ):
3955
+ self .gguf_writer .add_embedding_multiplier (embedding_multiplier )
3956
+ if residual_multiplier := self .hparams .get ("residual_multiplier" ):
3957
+ self .gguf_writer .add_residual_multiplier (residual_multiplier )
3958
+ if logits_scaling := self .hparams .get ("logits_scaling" ):
3959
+ self .gguf_writer .add_logit_scale (logits_scaling )
3960
+
3961
+
3934
3962
###### CONVERSION LOGIC ######
3935
3963
3936
3964
# tree of lazy tensors
You can’t perform that action at this time.
0 commit comments