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 @@ -3950,6 +3950,34 @@ def prepare_tensors(self):
3950
3950
super ().prepare_tensors ()
3951
3951
3952
3952
3953
+ @Model .register ("GraniteForCausalLM" )
3954
+ class GraniteModel (Model ):
3955
+ """Conversion for IBM's GraniteForCausalLM"""
3956
+ model_arch = gguf .MODEL_ARCH .GRANITE
3957
+
3958
+ def set_gguf_parameters (self ):
3959
+ """Granite uses standard llama parameters with the following differences:
3960
+
3961
+ - No head_dim support
3962
+ - New multiplier params:
3963
+ - attention_multiplier
3964
+ - embedding_multiplier
3965
+ - residual_multiplier
3966
+ - logits_scaling
3967
+ """
3968
+ if head_dim := self .hparams .pop ("head_dim" , None ):
3969
+ logger .warning ("Ignoring head_dim (%s) from config for Granite" , head_dim )
3970
+ super ().set_gguf_parameters ()
3971
+ if attention_multiplier := self .hparams .get ("attention_multiplier" ):
3972
+ self .gguf_writer .add_attention_multiplier (attention_multiplier )
3973
+ if embedding_multiplier := self .hparams .get ("embedding_multiplier" ):
3974
+ self .gguf_writer .add_embedding_multiplier (embedding_multiplier )
3975
+ if residual_multiplier := self .hparams .get ("residual_multiplier" ):
3976
+ self .gguf_writer .add_residual_multiplier (residual_multiplier )
3977
+ if logits_scaling := self .hparams .get ("logits_scaling" ):
3978
+ self .gguf_writer .add_logit_scale (logits_scaling )
3979
+
3980
+
3953
3981
###### CONVERSION LOGIC ######
3954
3982
3955
3983
# tree of lazy tensors
You can’t perform that action at this time.
0 commit comments