{ LLM_TENSOR_INDEXER_ATTN_Q_B, "blk.%d.indexer.attn_q_b" },
};
-static std::set<llm_tensor> llm_get_tensor_names(llm_arch arch) {
- switch (arch) {
- case LLM_ARCH_CLIP:
- return {};
- case LLM_ARCH_LLAMA:
- case LLM_ARCH_REFACT:
- case LLM_ARCH_MINICPM:
- case LLM_ARCH_GRANITE:
- case LLM_ARCH_GRANITE_MOE:
- case LLM_ARCH_DECI:
- case LLM_ARCH_MISTRAL3:
- case LLM_ARCH_LLAMA_EMBED:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ROPE_FACTORS_LONG,
- LLM_TENSOR_ROPE_FACTORS_SHORT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_ROT_EMBD,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_EXP,
- LLM_TENSOR_FFN_DOWN_EXP,
- LLM_TENSOR_FFN_UP_EXP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- };
- case LLM_ARCH_ARCEE:
- case LLM_ARCH_STARCODER2:
- case LLM_ARCH_NEMOTRON:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_ROT_EMBD,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_AFMOE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_GATE,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_POST_NORM,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- };
- case LLM_ARCH_LLAMA4:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_ROT_EMBD,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_EXP,
- LLM_TENSOR_FFN_DOWN_EXP,
- LLM_TENSOR_FFN_UP_EXP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- };
- case LLM_ARCH_BAICHUAN:
- case LLM_ARCH_ORION:
- case LLM_ARCH_XVERSE:
- case LLM_ARCH_EXAONE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_ROT_EMBD,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_FALCON:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_NORM_2,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_GROK:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_ROT_EMBD,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_EXP,
- LLM_TENSOR_FFN_DOWN_EXP,
- LLM_TENSOR_FFN_UP_EXP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_POST_NORM,
- LLM_TENSOR_LAYER_OUT_NORM,
- LLM_TENSOR_ATTN_OUT_NORM,
- };
- case LLM_ARCH_GPT2:
- case LLM_ARCH_STARCODER:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_POS_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_DOWN,
- };
- case LLM_ARCH_GPTNEOX:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_MPT:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_ACT,
- LLM_TENSOR_POS_EMBD,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K_NORM,
- };
- case LLM_ARCH_QWEN2:
- case LLM_ARCH_QWEN2VL:
- case LLM_ARCH_INTERNLM2:
- case LLM_ARCH_ERNIE4_5:
- case LLM_ARCH_PADDLEOCR:
- case LLM_ARCH_SMOLLM3:
- case LLM_ARCH_DREAM:
- case LLM_ARCH_LLADA:
- case LLM_ARCH_PANGU_EMBED:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_BERT:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_TOKEN_EMBD_NORM,
- LLM_TENSOR_TOKEN_TYPES,
- LLM_TENSOR_POS_EMBD,
- LLM_TENSOR_ATTN_OUT_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_LAYER_OUT_NORM,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_CLS,
- LLM_TENSOR_CLS_OUT,
- };
- case LLM_ARCH_NOMIC_BERT:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_TOKEN_EMBD_NORM,
- LLM_TENSOR_TOKEN_TYPES,
- LLM_TENSOR_ATTN_OUT_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_LAYER_OUT_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_NOMIC_BERT_MOE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_TOKEN_EMBD_NORM,
- LLM_TENSOR_TOKEN_TYPES,
- LLM_TENSOR_ATTN_OUT_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_LAYER_OUT_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- };
- case LLM_ARCH_NEO_BERT:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_ENC_OUTPUT_NORM,
- LLM_TENSOR_CLS,
- LLM_TENSOR_CLS_OUT,
- };
- case LLM_ARCH_EUROBERT:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_DOWN,
- };
- case LLM_ARCH_MODERN_BERT:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_TOKEN_EMBD_NORM,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_CLS,
- LLM_TENSOR_CLS_OUT,
- LLM_TENSOR_CLS_NORM,
- };
- case LLM_ARCH_JINA_BERT_V2:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_TOKEN_EMBD_NORM,
- LLM_TENSOR_TOKEN_TYPES,
- LLM_TENSOR_ATTN_NORM_2,
- LLM_TENSOR_ATTN_OUT_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_LAYER_OUT_NORM,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_CLS,
- };
- case LLM_ARCH_JINA_BERT_V3:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_TOKEN_EMBD_NORM,
- LLM_TENSOR_TOKEN_TYPES,
- LLM_TENSOR_ATTN_OUT_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_LAYER_OUT_NORM,
- };
- case LLM_ARCH_BLOOM:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_TOKEN_EMBD_NORM,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_DOWN,
- };
- case LLM_ARCH_STABLELM:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K_NORM,
- };
- case LLM_ARCH_QWEN:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_QWEN2MOE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_INP_SHEXP,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- };
- case LLM_ARCH_QWEN3:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_CLS_OUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_QWEN3MOE:
- case LLM_ARCH_QWEN3VLMOE:
- case LLM_ARCH_OLMOE:
- case LLM_ARCH_LLADA_MOE:
- case LLM_ARCH_RND1:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- };
- case LLM_ARCH_QWEN3NEXT:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_GATE,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_UP_EXPS,
- LLM_TENSOR_FFN_GATE_INP_SHEXP,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- LLM_TENSOR_SSM_A_NOSCAN,
- LLM_TENSOR_SSM_CONV1D,
- LLM_TENSOR_SSM_DT,
- LLM_TENSOR_SSM_BETA_ALPHA,
- LLM_TENSOR_SSM_IN,
- LLM_TENSOR_SSM_NORM,
- LLM_TENSOR_SSM_OUT,
- };
- case LLM_ARCH_QWEN35:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_GATE,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_SSM_A_NOSCAN,
- LLM_TENSOR_SSM_CONV1D,
- LLM_TENSOR_SSM_DT,
- LLM_TENSOR_SSM_BETA,
- LLM_TENSOR_SSM_ALPHA,
- LLM_TENSOR_SSM_NORM,
- LLM_TENSOR_SSM_OUT,
- };
- case LLM_ARCH_QWEN35MOE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_GATE,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_UP_EXPS,
- LLM_TENSOR_FFN_GATE_INP_SHEXP,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- LLM_TENSOR_SSM_A_NOSCAN,
- LLM_TENSOR_SSM_CONV1D,
- LLM_TENSOR_SSM_DT,
- LLM_TENSOR_SSM_BETA,
- LLM_TENSOR_SSM_ALPHA,
- LLM_TENSOR_SSM_NORM,
- LLM_TENSOR_SSM_OUT,
- };
- case LLM_ARCH_QWEN3VL:
- case LLM_ARCH_CHAMELEON:
- case LLM_ARCH_HUNYUAN_DENSE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_CLS_OUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_PHI2:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_PHI3:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FACTORS_LONG,
- LLM_TENSOR_ROPE_FACTORS_SHORT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_PHIMOE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FACTORS_LONG,
- LLM_TENSOR_ROPE_FACTORS_SHORT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- };
- case LLM_ARCH_PLAMO:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_ROT_EMBD,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_PLAMO2:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_ROT_EMBD,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_SSM_IN,
- LLM_TENSOR_SSM_CONV1D,
- LLM_TENSOR_SSM_X,
- LLM_TENSOR_SSM_DT,
- LLM_TENSOR_SSM_A,
- LLM_TENSOR_SSM_D,
- LLM_TENSOR_SSM_OUT,
- LLM_TENSOR_SSM_DT_NORM,
- LLM_TENSOR_SSM_B_NORM,
- LLM_TENSOR_SSM_C_NORM,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_FFN_POST_NORM,
- };
- case LLM_ARCH_PLAMO3:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_POST_NORM,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_CODESHELL:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_ROT_EMBD,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_MINICPM3:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FACTORS_LONG,
- LLM_TENSOR_ROPE_FACTORS_SHORT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q_A_NORM,
- LLM_TENSOR_ATTN_KV_A_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_A,
- LLM_TENSOR_ATTN_Q_B,
- LLM_TENSOR_ATTN_KV_A_MQA,
- LLM_TENSOR_ATTN_KV_B,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_DOWN,
- };
- case LLM_ARCH_GEMMA:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_GEMMA2:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_POST_NORM,
- };
- case LLM_ARCH_GEMMA3:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_POST_NORM,
- };
- case LLM_ARCH_GEMMA3N:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_POST_NORM,
- LLM_TENSOR_PER_LAYER_TOKEN_EMBD,
- LLM_TENSOR_PER_LAYER_MODEL_PROJ,
- LLM_TENSOR_PER_LAYER_PROJ_NORM,
- LLM_TENSOR_ALTUP_UNEMBD_PROJ,
- LLM_TENSOR_ALTUP_PROJ,
- LLM_TENSOR_PER_LAYER_INP_GATE,
- LLM_TENSOR_PER_LAYER_PROJ,
- LLM_TENSOR_PER_LAYER_POST_NORM,
- LLM_TENSOR_ALTUP_CORRECT_COEF,
- LLM_TENSOR_ALTUP_CORRECT_SCALE,
- LLM_TENSOR_ALTUP_PREDICT_COEF,
- LLM_TENSOR_ALTUP_ROUTER,
- LLM_TENSOR_ALTUP_ROUTER_NORM,
- LLM_TENSOR_LAUREL_L,
- LLM_TENSOR_LAUREL_R,
- LLM_TENSOR_LAUREL_POST_NORM,
- };
- case LLM_ARCH_GEMMA4:
- return {
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_UP_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_POST_NORM,
- LLM_TENSOR_FFN_POST_NORM_1,
- LLM_TENSOR_FFN_POST_NORM_2,
- LLM_TENSOR_FFN_PRE_NORM_2,
- LLM_TENSOR_LAYER_OUT_SCALE,
- LLM_TENSOR_PER_LAYER_TOKEN_EMBD,
- LLM_TENSOR_PER_LAYER_MODEL_PROJ,
- LLM_TENSOR_PER_LAYER_PROJ_NORM,
- LLM_TENSOR_PER_LAYER_INP_GATE,
- LLM_TENSOR_PER_LAYER_PROJ,
- LLM_TENSOR_PER_LAYER_POST_NORM,
- };
- case LLM_ARCH_GEMMA_EMBEDDING:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_DENSE_2_OUT,
- LLM_TENSOR_DENSE_3_OUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_POST_NORM,
- };
- case LLM_ARCH_MAMBA:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_SSM_IN,
- LLM_TENSOR_SSM_CONV1D,
- LLM_TENSOR_SSM_X,
- LLM_TENSOR_SSM_DT,
- LLM_TENSOR_SSM_A,
- LLM_TENSOR_SSM_D,
- LLM_TENSOR_SSM_OUT,
- };
- case LLM_ARCH_MAMBA2:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_SSM_IN,
- LLM_TENSOR_SSM_CONV1D,
- LLM_TENSOR_SSM_DT,
- LLM_TENSOR_SSM_A,
- LLM_TENSOR_SSM_D,
- LLM_TENSOR_SSM_NORM,
- LLM_TENSOR_SSM_OUT,
- };
- case LLM_ARCH_JAMBA:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_SSM_IN,
- LLM_TENSOR_SSM_CONV1D,
- LLM_TENSOR_SSM_X,
- LLM_TENSOR_SSM_DT,
- LLM_TENSOR_SSM_DT_NORM,
- LLM_TENSOR_SSM_A,
- LLM_TENSOR_SSM_B_NORM,
- LLM_TENSOR_SSM_C_NORM,
- LLM_TENSOR_SSM_D,
- LLM_TENSOR_SSM_OUT,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- };
- case LLM_ARCH_FALCON_H1:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_SSM_IN,
- LLM_TENSOR_SSM_CONV1D,
- LLM_TENSOR_SSM_DT,
- LLM_TENSOR_SSM_A,
- LLM_TENSOR_SSM_D,
- LLM_TENSOR_SSM_NORM,
- LLM_TENSOR_SSM_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_COMMAND_R:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K_NORM,
- };
- case LLM_ARCH_COHERE2:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_DBRX:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_OUT_NORM,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- };
- case LLM_ARCH_OLMO:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_OLMO2:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_FFN_POST_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_OPENELM:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_ARCTIC:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_NORM_EXPS,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- };
- case LLM_ARCH_DEEPSEEK:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_ROT_EMBD,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_INP_SHEXP,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- };
- case LLM_ARCH_DEEPSEEK2:
- case LLM_ARCH_DEEPSEEK2OCR:
- case LLM_ARCH_MISTRAL4:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q_A_NORM,
- LLM_TENSOR_ATTN_KV_A_NORM,
- LLM_TENSOR_ATTN_K, // deepseek-ocr
- LLM_TENSOR_ATTN_V, // deepseek-ocr
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_A,
- LLM_TENSOR_ATTN_Q_B,
- LLM_TENSOR_ATTN_KV_A_MQA,
- LLM_TENSOR_ATTN_KV_B,
- LLM_TENSOR_ATTN_K_B,
- LLM_TENSOR_ATTN_V_B,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_UP_EXPS,
- LLM_TENSOR_FFN_GATE_INP_SHEXP,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- };
- case LLM_ARCH_PLM:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_KV_A_MQA,
- LLM_TENSOR_ATTN_KV_A_NORM,
- LLM_TENSOR_ATTN_KV_B,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_CHATGLM:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_DOWN,
- };
- case LLM_ARCH_GLM4:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_FFN_POST_NORM,
- LLM_TENSOR_NEXTN_EH_PROJ,
- LLM_TENSOR_NEXTN_EMBED_TOKENS,
- LLM_TENSOR_NEXTN_ENORM,
- LLM_TENSOR_NEXTN_HNORM,
- LLM_TENSOR_NEXTN_SHARED_HEAD_HEAD,
- LLM_TENSOR_NEXTN_SHARED_HEAD_NORM,
- };
- case LLM_ARCH_GLM4_MOE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- LLM_TENSOR_NEXTN_EH_PROJ,
- LLM_TENSOR_NEXTN_EMBED_TOKENS,
- LLM_TENSOR_NEXTN_ENORM,
- LLM_TENSOR_NEXTN_HNORM,
- LLM_TENSOR_NEXTN_SHARED_HEAD_HEAD,
- LLM_TENSOR_NEXTN_SHARED_HEAD_NORM,
- };
- case LLM_ARCH_GLM_DSA:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q_A_NORM,
- LLM_TENSOR_ATTN_KV_A_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_A,
- LLM_TENSOR_ATTN_Q_B,
- LLM_TENSOR_ATTN_KV_A_MQA,
- LLM_TENSOR_ATTN_KV_B,
- LLM_TENSOR_ATTN_K_B,
- LLM_TENSOR_ATTN_V_B,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_INP_SHEXP,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- LLM_TENSOR_INDEXER_K_NORM,
- LLM_TENSOR_INDEXER_PROJ,
- LLM_TENSOR_INDEXER_ATTN_K,
- LLM_TENSOR_INDEXER_ATTN_Q_B,
- LLM_TENSOR_NEXTN_EH_PROJ,
- LLM_TENSOR_NEXTN_EMBED_TOKENS,
- LLM_TENSOR_NEXTN_ENORM,
- LLM_TENSOR_NEXTN_HNORM,
- LLM_TENSOR_NEXTN_SHARED_HEAD_HEAD,
- LLM_TENSOR_NEXTN_SHARED_HEAD_NORM,
- };
- case LLM_ARCH_BITNET:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_SUB_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_SUB_NORM,
- };
- case LLM_ARCH_T5:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_DEC_OUTPUT_NORM,
- LLM_TENSOR_DEC_ATTN_NORM,
- LLM_TENSOR_DEC_ATTN_Q,
- LLM_TENSOR_DEC_ATTN_K,
- LLM_TENSOR_DEC_ATTN_V,
- LLM_TENSOR_DEC_ATTN_OUT,
- LLM_TENSOR_DEC_ATTN_REL_B,
- LLM_TENSOR_DEC_CROSS_ATTN_NORM,
- LLM_TENSOR_DEC_CROSS_ATTN_Q,
- LLM_TENSOR_DEC_CROSS_ATTN_K,
- LLM_TENSOR_DEC_CROSS_ATTN_V,
- LLM_TENSOR_DEC_CROSS_ATTN_OUT,
- LLM_TENSOR_DEC_CROSS_ATTN_REL_B,
- LLM_TENSOR_DEC_FFN_NORM,
- LLM_TENSOR_DEC_FFN_GATE,
- LLM_TENSOR_DEC_FFN_DOWN,
- LLM_TENSOR_DEC_FFN_UP,
- LLM_TENSOR_ENC_OUTPUT_NORM,
- LLM_TENSOR_ENC_ATTN_NORM,
- LLM_TENSOR_ENC_ATTN_Q,
- LLM_TENSOR_ENC_ATTN_K,
- LLM_TENSOR_ENC_ATTN_V,
- LLM_TENSOR_ENC_ATTN_OUT,
- LLM_TENSOR_ENC_ATTN_REL_B,
- LLM_TENSOR_ENC_FFN_NORM,
- LLM_TENSOR_ENC_FFN_GATE,
- LLM_TENSOR_ENC_FFN_DOWN,
- LLM_TENSOR_ENC_FFN_UP,
- };
- case LLM_ARCH_T5ENCODER:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ENC_OUTPUT_NORM,
- LLM_TENSOR_ENC_ATTN_NORM,
- LLM_TENSOR_ENC_ATTN_Q,
- LLM_TENSOR_ENC_ATTN_K,
- LLM_TENSOR_ENC_ATTN_V,
- LLM_TENSOR_ENC_ATTN_OUT,
- LLM_TENSOR_ENC_ATTN_REL_B,
- LLM_TENSOR_ENC_FFN_NORM,
- LLM_TENSOR_ENC_FFN_GATE,
- LLM_TENSOR_ENC_FFN_DOWN,
- LLM_TENSOR_ENC_FFN_UP,
- };
- case LLM_ARCH_JAIS:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- };
- case LLM_ARCH_JAIS2:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_DOWN,
- };
- case LLM_ARCH_NEMOTRON_H:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_SSM_IN,
- LLM_TENSOR_SSM_CONV1D,
- LLM_TENSOR_SSM_DT,
- LLM_TENSOR_SSM_A,
- LLM_TENSOR_SSM_D,
- LLM_TENSOR_SSM_NORM,
- LLM_TENSOR_SSM_OUT,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_NEMOTRON_H_MOE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- // mamba(2) ssm layers
- LLM_TENSOR_SSM_IN,
- LLM_TENSOR_SSM_CONV1D,
- LLM_TENSOR_SSM_DT,
- LLM_TENSOR_SSM_A,
- LLM_TENSOR_SSM_D,
- LLM_TENSOR_SSM_NORM,
- LLM_TENSOR_SSM_OUT,
- // attention layers
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- // dense FFN
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- // MoE FFN (for MoE layers)
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- LLM_TENSOR_FFN_LATENT_DOWN,
- LLM_TENSOR_FFN_LATENT_UP,
- // MoE shared expert layer
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- };
- case LLM_ARCH_EXAONE4:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_POST_NORM,
- };
- case LLM_ARCH_EXAONE_MOE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- LLM_TENSOR_NEXTN_EH_PROJ,
- LLM_TENSOR_NEXTN_EMBED_TOKENS,
- LLM_TENSOR_NEXTN_ENORM,
- LLM_TENSOR_NEXTN_HNORM,
- LLM_TENSOR_NEXTN_SHARED_HEAD_HEAD,
- LLM_TENSOR_NEXTN_SHARED_HEAD_NORM,
- };
- case LLM_ARCH_RWKV6:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_TOKEN_EMBD_NORM,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_NORM_2,
- LLM_TENSOR_TIME_MIX_W1,
- LLM_TENSOR_TIME_MIX_W2,
- LLM_TENSOR_TIME_MIX_LERP_X,
- LLM_TENSOR_TIME_MIX_LERP_W,
- LLM_TENSOR_TIME_MIX_LERP_K,
- LLM_TENSOR_TIME_MIX_LERP_V,
- LLM_TENSOR_TIME_MIX_LERP_R,
- LLM_TENSOR_TIME_MIX_LERP_G,
- LLM_TENSOR_TIME_MIX_LERP_FUSED,
- LLM_TENSOR_TIME_MIX_FIRST,
- LLM_TENSOR_TIME_MIX_DECAY,
- LLM_TENSOR_TIME_MIX_DECAY_W1,
- LLM_TENSOR_TIME_MIX_DECAY_W2,
- LLM_TENSOR_TIME_MIX_KEY,
- LLM_TENSOR_TIME_MIX_VALUE,
- LLM_TENSOR_TIME_MIX_RECEPTANCE,
- LLM_TENSOR_TIME_MIX_GATE,
- LLM_TENSOR_TIME_MIX_LN,
- LLM_TENSOR_TIME_MIX_OUTPUT,
- LLM_TENSOR_CHANNEL_MIX_LERP_K,
- LLM_TENSOR_CHANNEL_MIX_LERP_R,
- LLM_TENSOR_CHANNEL_MIX_KEY,
- LLM_TENSOR_CHANNEL_MIX_VALUE,
- LLM_TENSOR_CHANNEL_MIX_RECEPTANCE,
- };
- case LLM_ARCH_RWKV6QWEN2:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_TIME_MIX_W1,
- LLM_TENSOR_TIME_MIX_W2,
- LLM_TENSOR_TIME_MIX_LERP_X,
- LLM_TENSOR_TIME_MIX_LERP_FUSED,
- LLM_TENSOR_TIME_MIX_FIRST,
- LLM_TENSOR_TIME_MIX_DECAY,
- LLM_TENSOR_TIME_MIX_DECAY_W1,
- LLM_TENSOR_TIME_MIX_DECAY_W2,
- LLM_TENSOR_TIME_MIX_KEY,
- LLM_TENSOR_TIME_MIX_VALUE,
- LLM_TENSOR_TIME_MIX_RECEPTANCE,
- LLM_TENSOR_TIME_MIX_GATE,
- LLM_TENSOR_TIME_MIX_OUTPUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_RWKV7:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_TOKEN_EMBD_NORM,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_NORM_2,
- LLM_TENSOR_TIME_MIX_W0,
- LLM_TENSOR_TIME_MIX_W1,
- LLM_TENSOR_TIME_MIX_W2,
- LLM_TENSOR_TIME_MIX_A0,
- LLM_TENSOR_TIME_MIX_A1,
- LLM_TENSOR_TIME_MIX_A2,
- LLM_TENSOR_TIME_MIX_V0,
- LLM_TENSOR_TIME_MIX_V1,
- LLM_TENSOR_TIME_MIX_V2,
- LLM_TENSOR_TIME_MIX_G1,
- LLM_TENSOR_TIME_MIX_G2,
- LLM_TENSOR_TIME_MIX_K_K,
- LLM_TENSOR_TIME_MIX_K_A,
- LLM_TENSOR_TIME_MIX_R_K,
- LLM_TENSOR_TIME_MIX_LERP_FUSED,
- LLM_TENSOR_TIME_MIX_KEY,
- LLM_TENSOR_TIME_MIX_VALUE,
- LLM_TENSOR_TIME_MIX_RECEPTANCE,
- LLM_TENSOR_TIME_MIX_LN,
- LLM_TENSOR_TIME_MIX_OUTPUT,
- LLM_TENSOR_CHANNEL_MIX_LERP_K,
- LLM_TENSOR_CHANNEL_MIX_KEY,
- LLM_TENSOR_CHANNEL_MIX_VALUE,
- };
- case LLM_ARCH_ARWKV7:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_TOKEN_EMBD_NORM,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_TIME_MIX_W0,
- LLM_TENSOR_TIME_MIX_W1,
- LLM_TENSOR_TIME_MIX_W2,
- LLM_TENSOR_TIME_MIX_A0,
- LLM_TENSOR_TIME_MIX_A1,
- LLM_TENSOR_TIME_MIX_A2,
- LLM_TENSOR_TIME_MIX_V0,
- LLM_TENSOR_TIME_MIX_V1,
- LLM_TENSOR_TIME_MIX_V2,
- LLM_TENSOR_TIME_MIX_G1,
- LLM_TENSOR_TIME_MIX_G2,
- LLM_TENSOR_TIME_MIX_K_K,
- LLM_TENSOR_TIME_MIX_K_A,
- LLM_TENSOR_TIME_MIX_R_K,
- LLM_TENSOR_TIME_MIX_LERP_FUSED,
- LLM_TENSOR_TIME_MIX_KEY,
- LLM_TENSOR_TIME_MIX_VALUE,
- LLM_TENSOR_TIME_MIX_RECEPTANCE,
- LLM_TENSOR_TIME_MIX_LN,
- LLM_TENSOR_TIME_MIX_OUTPUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_GRANITE_HYBRID:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_SSM_IN,
- LLM_TENSOR_SSM_CONV1D,
- LLM_TENSOR_SSM_DT,
- LLM_TENSOR_SSM_A,
- LLM_TENSOR_SSM_D,
- LLM_TENSOR_SSM_NORM,
- LLM_TENSOR_SSM_OUT,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- };
- case LLM_ARCH_WAVTOKENIZER_DEC:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_TOKEN_EMBD_NORM,
- LLM_TENSOR_CONV1D,
- LLM_TENSOR_CONVNEXT_DW,
- LLM_TENSOR_CONVNEXT_NORM,
- LLM_TENSOR_CONVNEXT_PW1,
- LLM_TENSOR_CONVNEXT_PW2,
- LLM_TENSOR_CONVNEXT_GAMMA,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_POS_NET_CONV1,
- LLM_TENSOR_POS_NET_CONV2,
- LLM_TENSOR_POS_NET_NORM,
- LLM_TENSOR_POS_NET_NORM1,
- LLM_TENSOR_POS_NET_NORM2,
- LLM_TENSOR_POS_NET_ATTN_NORM,
- LLM_TENSOR_POS_NET_ATTN_Q,
- LLM_TENSOR_POS_NET_ATTN_K,
- LLM_TENSOR_POS_NET_ATTN_V,
- LLM_TENSOR_POS_NET_ATTN_OUT,
- };
- case LLM_ARCH_BAILINGMOE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_INP_SHEXP,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- };
- case LLM_ARCH_BAILINGMOE2:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- LLM_TENSOR_NEXTN_EH_PROJ,
- LLM_TENSOR_NEXTN_EMBED_TOKENS,
- LLM_TENSOR_NEXTN_ENORM,
- LLM_TENSOR_NEXTN_HNORM,
- LLM_TENSOR_NEXTN_SHARED_HEAD_HEAD,
- LLM_TENSOR_NEXTN_SHARED_HEAD_NORM,
- LLM_TENSOR_LAYER_OUT_NORM,
- };
- case LLM_ARCH_DOTS1:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_INP_SHEXP,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- };
- case LLM_ARCH_ERNIE4_5_MOE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- };
- case LLM_ARCH_HUNYUAN_MOE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- };
- case LLM_ARCH_OPENAI_MOE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_SINKS,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- };
- case LLM_ARCH_LFM2:
- return {
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_SHORTCONV_CONV,
- LLM_TENSOR_SHORTCONV_INPROJ,
- LLM_TENSOR_SHORTCONV_OUTPROJ,
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM_LFM2,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_DENSE_2_OUT,
- };
- case LLM_ARCH_LFM2MOE:
- return {
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_SHORTCONV_CONV,
- LLM_TENSOR_SHORTCONV_INPROJ,
- LLM_TENSOR_SHORTCONV_OUTPROJ,
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM_LFM2,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- };
- case LLM_ARCH_SMALLTHINKER:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- };
- case LLM_ARCH_APERTUS:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_SEED_OSS:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_POST_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_GROVEMOE:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_CHEXPS,
- LLM_TENSOR_FFN_DOWN_CHEXPS,
- LLM_TENSOR_FFN_UP_CHEXPS,
- };
- case LLM_ARCH_MINIMAX_M2:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- };
- case LLM_ARCH_COGVLM:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_QKV,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_VISEXP_ATTN_QKV,
- LLM_TENSOR_VISEXP_ATTN_OUT,
- LLM_TENSOR_VISEXP_FFN_GATE,
- LLM_TENSOR_VISEXP_FFN_DOWN,
- LLM_TENSOR_VISEXP_FFN_UP,
- };
- case LLM_ARCH_MIMO2:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_SINKS,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- };
- case LLM_ARCH_STEP35:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ROPE_FACTORS_LONG,
- LLM_TENSOR_ROPE_FACTORS_SHORT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_GATE,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- };
- case LLM_ARCH_GPTJ:
- case LLM_ARCH_UNKNOWN:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- };
- case LLM_ARCH_MAINCODER:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_Q_NORM,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_K_NORM,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- };
- case LLM_ARCH_KIMI_LINEAR:
- return {
- LLM_TENSOR_TOKEN_EMBD,
- LLM_TENSOR_OUTPUT_NORM,
- LLM_TENSOR_OUTPUT,
- LLM_TENSOR_ROPE_FREQS,
- LLM_TENSOR_ATTN_NORM,
- LLM_TENSOR_ATTN_Q,
- LLM_TENSOR_ATTN_K,
- LLM_TENSOR_ATTN_V,
- LLM_TENSOR_ATTN_OUT,
- LLM_TENSOR_FFN_NORM,
- // Dense FFN (layer 0 only)
- LLM_TENSOR_FFN_GATE,
- LLM_TENSOR_FFN_DOWN,
- LLM_TENSOR_FFN_UP,
- // MoE FFN (layers 1+)
- LLM_TENSOR_FFN_GATE_INP,
- LLM_TENSOR_FFN_GATE_EXPS,
- LLM_TENSOR_FFN_DOWN_EXPS,
- LLM_TENSOR_FFN_UP_EXPS,
- LLM_TENSOR_FFN_EXP_PROBS_B,
- // Shared experts
- LLM_TENSOR_FFN_GATE_SHEXP,
- LLM_TENSOR_FFN_DOWN_SHEXP,
- LLM_TENSOR_FFN_UP_SHEXP,
- // KDA (using SSM_ enum prefix, keeping GGUF names for backward compat)
- LLM_TENSOR_SSM_CONV1D_Q,
- LLM_TENSOR_SSM_CONV1D_K,
- LLM_TENSOR_SSM_CONV1D_V,
- LLM_TENSOR_SSM_F_A,
- LLM_TENSOR_SSM_F_B,
- LLM_TENSOR_SSM_BETA,
- LLM_TENSOR_SSM_A,
- LLM_TENSOR_SSM_G_A,
- LLM_TENSOR_SSM_G_B,
- LLM_TENSOR_SSM_DT,
- LLM_TENSOR_SSM_NORM,
- // MLA
- LLM_TENSOR_ATTN_Q_A,
- LLM_TENSOR_ATTN_Q_B,
- LLM_TENSOR_ATTN_Q_A_NORM,
- LLM_TENSOR_ATTN_KV_A_MQA,
- LLM_TENSOR_ATTN_KV_B,
- LLM_TENSOR_ATTN_K_B,
- LLM_TENSOR_ATTN_V_B,
- LLM_TENSOR_ATTN_KV_A_NORM,
- };
- default:
- GGML_ABORT("unknown architecture for tensor mapping");
- }
-}
-
// declare information about the model weight tensors:
// - the layer in which the tensor is going to be used. this is needed in order to assign the correct buffer type for the weight
// - the operator which is going to use the weight. this is needed to determine if the respective backend supports the operator
}
LLM_TN_IMPL::LLM_TN_IMPL(llm_arch arch, llm_tensor tensor, const char * suffix, int bid, int xid)
- : arch(arch), tensor(tensor), suffix(suffix), bid(bid), xid(xid),
- model_tensors(llm_get_tensor_names(arch)) {}
+ : arch(arch), tensor(tensor), suffix(suffix), bid(bid), xid(xid) {}
std::string LLM_TN_IMPL::str() const {
if (LLM_TENSOR_NAMES.find(tensor) == LLM_TENSOR_NAMES.end()) {
GGML_ABORT("unknown tensor name for tensor id %d", static_cast<int>(tensor));
}
- if (model_tensors.find(tensor) == model_tensors.end()) {
- const char * name = LLM_TENSOR_NAMES.at(tensor);
- if (suffix != nullptr || bid != -1 || xid != -1) {
- LLAMA_LOG_WARN("%s: cannot properly format tensor name %s with suffix=%s bid=%d xid=%d\n",
- __func__, name, suffix, bid, xid);
- }
- return name;
- }
-
std::string name = ::format(LLM_TENSOR_NAMES.at(tensor), bid, xid);
if (suffix != nullptr) {
name += ".";