char-fork/llama.cpp
git clone https://git.t4t.associates/char-fork/llama.cpp
cc7200bf1
char/aliceai-t5-moe
1from __future__import annotations 2 3from typing import Sequence 4 5from .base import gguf 6 7from .llava import LlavaVisionModel 8 9 10class PixtralModel (LlavaVisionModel ): 11model_name = "Pixtral" 12hf_arch = "" 13is_mistral_format = True 14 15def set_gguf_parameters (self ): 16super ().set_gguf_parameters () 17self .gguf_writer .add_clip_projector_type (gguf .VisionProjectorType .PIXTRAL ) 18 19self .gguf_writer .add_vision_attention_layernorm_eps ( 20self .find_hparam (["norm_eps" ]) 21 ) 22self .gguf_writer .add_rope_freq_base (self .find_vparam (["rope_theta" ])) 23 24self .gguf_writer .add_vision_use_silu (True ) 25 26# spatial_merge_size 27if self .find_vparam (["mm_projector_id" ],optional = True )== "patch_merge" : 28self .gguf_writer .add_vision_spatial_merge_size ( 29self .find_vparam (["spatial_merge_size" ]) 30 ) 31 32def map_tensor_name (self ,name :str ,try_suffixes :Sequence [str ]= (".weight" ,".bias" ))-> str : 33if name == "vision_language_adapter.w_in.weight" : 34return "mm.1.weight" 35elif name == "vision_language_adapter.w_in.bias" : 36return "mm.1.bias" 37elif name == "vision_language_adapter.w_out.weight" : 38return "mm.2.weight" 39elif name == "vision_language_adapter.w_out.bias" : 40return "mm.2.bias" 41return super ().map_tensor_name (name ,try_suffixes )