Felipe97/llama-cpp-compiled
01.1k
1from __future__ import annotations2 3from typing import Callable, TYPE_CHECKING4 5if TYPE_CHECKING:6 from torch import Tensor7 8from .base import MmprojModel, ModelBase, gguf9 10from .llama import LlamaModel11 12 13@ModelBase.register("CogVLMForCausalLM")14@ModelBase.example("THUDM/cogvlm2-llama3-chat-19B", "THUDM/cogvlm-chat-hf")15class CogVLMVisionModel(MmprojModel):16 17 def set_gguf_parameters(self):18 super().set_gguf_parameters()19 self.gguf_writer.add_vision_attention_layernorm_eps(self.hparams.get("layer_norm_eps", 1e-6))20 self.gguf_writer.add_clip_projector_type(gguf.VisionProjectorType.COGVLM)21 22 @classmethod23 def filter_tensors(cls, item: tuple[str, Callable[[], Tensor]]) -> tuple[str, Callable[[], Tensor]] | None:24 name, gen = item25 26 if not name.startswith("model.vision."):27 return None28 29 return super().filter_tensors(item)30 31 32@ModelBase.register("CogVLMForCausalLM")33@ModelBase.example("THUDM/cogvlm2-llama3-chat-19B", "THUDM/cogvlm-chat-hf")34class CogVLMModel(LlamaModel):35 model_arch = gguf.MODEL_ARCH.COGVLM36 