diff --git a/.gitattributes b/.gitattributes index a6344aac8c09253b3b630fb776ae94478aa0275b..52373fe24473b1aa44333d318f578ae6bf04b49b 100644 --- a/.gitattributes +++ b/.gitattributes @@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text *.zip filter=lfs diff=lfs merge=lfs -text *.zst filter=lfs diff=lfs merge=lfs -text *tfevents* filter=lfs diff=lfs merge=lfs -text +tokenizer.json filter=lfs diff=lfs merge=lfs -text diff --git a/README.md b/README.md new file mode 100644 index 0000000000000000000000000000000000000000..301a4caa959b733fa0c1a3bda4eb05cc1f58f5a8 --- /dev/null +++ b/README.md @@ -0,0 +1,38 @@ +--- +pipeline_tag: text-generation +license: other +license_name: modified-mit +license_link: https://github.com/MiniMax-AI/MiniMax-M2.7/blob/main/LICENSE +library_name: mlx +base_model: MiniMaxAI/MiniMax-M2.7 +tags: +- mlx +--- + +# mlx-community/MiniMax-M2.7 + +This model [mlx-community/MiniMax-M2.7](https://huggingface.co/mlx-community/MiniMax-M2.7) was +converted to MLX format from [MiniMaxAI/MiniMax-M2.7](https://huggingface.co/MiniMaxAI/MiniMax-M2.7) +using mlx-lm version **0.31.3**. + +## Use with mlx + +```bash +pip install mlx-lm +``` + +```python +from mlx_lm import load, generate + +model, tokenizer = load("mlx-community/MiniMax-M2.7") + +prompt = "hello" + +if tokenizer.chat_template is not None: + messages = [{"role": "user", "content": prompt}] + prompt = tokenizer.apply_chat_template( + messages, add_generation_prompt=True, return_dict=False, + ) + +response = generate(model, tokenizer, prompt=prompt, verbose=True) +``` diff --git a/chat_template.jinja b/chat_template.jinja new file mode 100644 index 0000000000000000000000000000000000000000..a09ec0ddecae9b0f7a25b4916d224c9986ad372f --- /dev/null +++ b/chat_template.jinja @@ -0,0 +1,159 @@ +{# ----------‑‑‑ special token variables ‑‑‑---------- #} +{%- set toolcall_begin_token = '' -%} +{%- set toolcall_end_token = '' -%} +{#- Tool Rendering Functions ============================================== -#} +{%- macro render_tool_namespace(namespace_name, tool_list) -%} +{%- for tool in tool_list -%} +{{ tool.function | tojson(ensure_ascii=False) }} +{% endfor -%} +{%- endmacro -%} +{%- macro visible_text(content) -%} + {%- if content is string -%} + {{ content }} + {%- elif content is iterable and content is not mapping -%} + {%- for item in content -%} + {%- if item is mapping and item.type == 'text' -%} + {{- item.text }} + {%- elif item is string -%} + {{- item }} + {%- endif -%} + {%- endfor -%} + {%- else -%} + {{- content }} + {%- endif -%} +{%- endmacro -%} +{#- System Message Construction ============================================ -#} +{%- macro build_system_message(system_message) -%} + {%- if system_message and system_message.content -%} + {{- visible_text(system_message.content) }} + {%- else -%} + {%- if model_identity is not defined -%} + {%- set model_identity = "You are a helpful assistant. Your name is MiniMax-M2.7 and is built by MiniMax." -%} + {%- endif -%} + {{- model_identity }} + {%- endif -%} + + {#- Handle current_date -#} + {%- if system_message and system_message.current_date -%} + {{- '\n' ~ 'Current date: ' + system_message.current_date }} + {%- endif -%} + {#- Handle current_location -#} + {%- if system_message and system_message.current_location -%} + {{- '\n' ~ 'Current location: ' + system_message.current_location }} + {%- endif -%} +{%- endmacro -%} +{#- Main Template Logic ================================================= -#} +{#- Extract system message (only first message if it's system) -#} +{%- set system_message = none -%} +{%- set conversation_messages = messages -%} +{%- if messages and messages[0].role == "system" -%} + {%- set system_message = messages[0] -%} + {%- set conversation_messages = messages[1:] -%} +{%- endif -%} +{#- Get the last user message turn, for interleved thinking -#} +{%- set ns = namespace(last_user_index=-1) %} +{% for m in conversation_messages %} + {%- if m.role == 'user' %} + {% set ns.last_user_index = loop.index0 -%} + {%- endif %} +{%- endfor %} +{#- Render system message -#} +{{- ']~!b[' ~ ']~b]system' ~ '\n' }} +{{- build_system_message(system_message) }} +{#- Render tools if available -#} +{%- if tools -%} + {{- '\n\n' ~ '# Tools' ~ '\n' ~ 'You may call one or more tools to assist with the user query.\nHere are the tools available in JSONSchema format:' ~ '\n' }} + {{- '\n' ~ '' ~ '\n' }} + {{- render_tool_namespace("functions", tools) }} + {{- '' ~ '\n\n' }} +{{- 'When making tool calls, use XML format to invoke tools and pass parameters:' ~ '\n' }} +{{- '\n' ~ toolcall_begin_token }} + +param-value-1 +param-value-2 +... + +{{- '\n' ~ toolcall_end_token }} +{%- endif -%} +{{- '[e~[\n' }} + +{#- Render messages -#} +{%- set last_tool_call = namespace(name=none) -%} +{%- for message in conversation_messages -%} + {%- if message.role == 'assistant' -%} + {#- Only render reasoning_content if no user message follows -#} + {{- ']~b]ai' ~ '\n' }} + + {%- set reasoning_content = '' %} + {%- set content = visible_text(message.content) %} + {%- if message.reasoning_content is string %} + {%- set reasoning_content = message.reasoning_content %} + {%- else %} + {%- if '' in content %} + {%- set reasoning_content = content.split('')[0].strip('\n').split('')[-1].strip('\n') %} + {%- set content = content.split('')[-1].strip('\n') %} + {%- endif %} + {%- endif %} + {%- if reasoning_content and loop.index0 > ns.last_user_index -%} + {{- '' ~ '\n' ~ reasoning_content ~ '\n' ~ '' ~ '\n\n' }} + {%- endif -%} + {%- if content -%} + {{- content }} + {%- endif -%} + {%- if message.tool_calls -%} + {{- '\n' ~ toolcall_begin_token ~ '\n' }} + + {%- for tool_call in message.tool_calls -%} + {%- if tool_call.function %} + {%- set tool_call = tool_call.function %} + {%- endif %} + {{- '' }} + {% set _args = tool_call.arguments %} + {%- for k, v in _args.items() %} + {{- '' }} + {{- v | tojson(ensure_ascii=False) if v is not string else v }} + {{- '' }} + {% endfor %} + {{- '' ~ '\n' }} + {%- endfor -%} + + {{- toolcall_end_token}} + {%- set last_tool_call.name = message.tool_calls[-1].name -%} + {%- else -%} + {%- set last_tool_call.name = none -%} + {%- endif -%} + {{- '[e~[' ~ '\n' }} + + {%- elif message.role == 'tool' -%} + {%- if last_tool_call.name is none -%} + {{- raise_exception("Message has tool role, but there was no previous assistant message with a tool call!") }} + {%- endif -%} + {%- if loop.first or (conversation_messages[loop.index0 - 1].role != 'tool') -%} + {{- ']~b]tool' }} + {%- endif -%} + {%- if message.content is string -%} + {{- '\n' }} + {{- message.content }} + {{- '' }} + {%- else -%} + {%- for tr in message.content -%} + {{- '\n' }} + {{- tr.output if tr.output is defined else (tr.text if tr.type == 'text' and tr.text is defined else tr) }} + {{- '\n' }} + {%- endfor -%} + {%- endif -%} + {%- if loop.last or (conversation_messages[loop.index0 + 1].role != 'tool') -%} + {{- '[e~[\n' -}} + {%- endif -%} + + {%- elif message.role == 'user' -%} + {{- ']~b]user' ~ '\n' }} + {{- visible_text(message.content) }} + {{- '[e~[' ~ '\n' }} + {%- endif -%} +{%- endfor -%} + +{#- Generation prompt -#} +{%- if add_generation_prompt -%} +{{- ']~b]ai' ~ '\n' ~ '' ~ '\n' }} +{%- endif -%} diff --git a/config.json b/config.json new file mode 100644 index 0000000000000000000000000000000000000000..9150e54036c325fb579bd5ca3aef610f487579cc --- /dev/null +++ b/config.json @@ -0,0 +1,115 @@ +{ + "architectures": [ + "MiniMaxM2ForCausalLM" + ], + "attn_type_list": [ + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1 + ], + "auto_map": { + "AutoConfig": "configuration_minimax_m2.MiniMaxM2Config", + "AutoModelForCausalLM": "modeling_minimax_m2.MiniMaxM2ForCausalLM" + }, + "dtype": "bfloat16", + "eos_token_id": 200020, + "head_dim": 128, + "hidden_act": "silu", + "hidden_size": 3072, + "intermediate_size": 1536, + "max_position_embeddings": 196608, + "model_type": "minimax_m2", + "mtp_transformer_layers": 1, + "num_attention_heads": 48, + "num_experts_per_tok": 8, + "num_hidden_layers": 62, + "num_key_value_heads": 8, + "num_local_experts": 256, + "num_mtp_modules": 3, + "qk_norm_type": "per_layer", + "quantization_config": { + "activation_scheme": "dynamic", + "fmt": "float8_e4m3fn", + "quant_method": "fp8", + "weight_block_size": [ + 128, + 128 + ], + "modules_to_not_convert": [ + "gate", + "e_score_correction_bias", + "lm_head" + ] + }, + "rms_norm_eps": 1e-06, + "rope_theta": 5000000, + "rotary_dim": 64, + "scoring_func": "sigmoid", + "shared_intermediate_size": 0, + "tie_word_embeddings": false, + "transformers_version": "4.46.1", + "use_cache": true, + "use_mtp": true, + "use_qk_norm": true, + "use_routing_bias": true, + "vocab_size": 200064 +} \ No newline at end of file diff --git a/configuration_minimax_m2.py b/configuration_minimax_m2.py new file mode 100644 index 0000000000000000000000000000000000000000..7fcd9861c389c8c8c437784de4f5f2adf4688747 --- /dev/null +++ b/configuration_minimax_m2.py @@ -0,0 +1,200 @@ +# 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨 +# This file was automatically generated from src/transformers/models/minimax_m2/modular_minimax_m2.py. +# Do NOT edit this file manually as any edits will be overwritten by the generation of +# the file from the modular. If any change should be done, please apply the change to the +# modular_minimax_m2.py file directly. One of our CI enforces this. +# 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨 +# coding=utf-8 +# Copyright 2025 the HuggingFace Team. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +from transformers.configuration_utils import PretrainedConfig + + +class MiniMaxM2Config(PretrainedConfig): + r""" + This is the configuration class to store the configuration of a [`MiniMaxM2Model`]. It is used to instantiate an + MiniMaxM2 model according to the specified arguments, defining the model architecture. Instantiating a configuration + with the defaults will yield a similar configuration to that of the MiniMaxM2-7B-v0.1 or MiniMaxM2-7B-Instruct-v0.1. + + [minimax_m2ai/MiniMaxM2-8x7B](https://huggingface.co/minimax_m2ai/MiniMaxM2-8x7B) + [minimax_m2ai/MiniMaxM2-7B-Instruct-v0.1](https://huggingface.co/minimax_m2ai/MiniMaxM2-7B-Instruct-v0.1) + + Configuration objects inherit from [`PretrainedConfig`] and can be used to control the model outputs. Read the + documentation from [`PretrainedConfig`] for more information. + + + Args: + vocab_size (`int`, *optional*, defaults to 32000): + Vocabulary size of the MiniMaxM2 model. Defines the number of different tokens that can be represented by the + `inputs_ids` passed when calling [`MiniMaxM2Model`] + hidden_size (`int`, *optional*, defaults to 4096): + Dimension of the hidden representations. + intermediate_size (`int`, *optional*, defaults to 14336): + Dimension of the MLP representations. + num_hidden_layers (`int`, *optional*, defaults to 32): + Number of hidden layers in the Transformer encoder. + num_attention_heads (`int`, *optional*, defaults to 32): + Number of attention heads for each attention layer in the Transformer encoder. + num_key_value_heads (`int`, *optional*, defaults to 8): + This is the number of key_value heads that should be used to implement Grouped Query Attention. If + `num_key_value_heads=num_attention_heads`, the model will use Multi Head Attention (MHA), if + `num_key_value_heads=1` the model will use Multi Query Attention (MQA) otherwise GQA is used. When + converting a multi-head checkpoint to a GQA checkpoint, each group key and value head should be constructed + by meanpooling all the original heads within that group. For more details, check out [this + paper](https://huggingface.co/papers/2305.13245). If it is not specified, will default to `8`. + head_dim (`int`, *optional*, defaults to `hidden_size // num_attention_heads`): + The attention head dimension. + hidden_act (`str` or `function`, *optional*, defaults to `"silu"`): + The non-linear activation function (function or string) in the decoder. + max_position_embeddings (`int`, *optional*, defaults to `4096*32`): + The maximum sequence length that this model might ever be used with. MiniMaxM2's sliding window attention + allows sequence of up to 4096*32 tokens. + initializer_range (`float`, *optional*, defaults to 0.02): + The standard deviation of the truncated_normal_initializer for initializing all weight matrices. + rms_norm_eps (`float`, *optional*, defaults to 1e-05): + The epsilon used by the rms normalization layers. + use_cache (`bool`, *optional*, defaults to `True`): + Whether or not the model should return the last key/values attentions (not used by all models). Only + relevant if `config.is_decoder=True`. + pad_token_id (`int`, *optional*): + The id of the padding token. + bos_token_id (`int`, *optional*, defaults to 1): + The id of the "beginning-of-sequence" token. + eos_token_id (`int`, *optional*, defaults to 2): + The id of the "end-of-sequence" token. + tie_word_embeddings (`bool`, *optional*, defaults to `False`): + Whether the model's input and output word embeddings should be tied. + rope_theta (`float`, *optional*, defaults to 1000000.0): + The base period of the RoPE embeddings. + sliding_window (`int`, *optional*): + Sliding window attention window size. If not specified, will default to `4096`. + attention_dropout (`float`, *optional*, defaults to 0.0): + The dropout ratio for the attention probabilities. + num_experts_per_tok (`int`, *optional*, defaults to 2): + The number of experts to route per-token, can be also interpreted as the `top-k` routing + parameter + num_local_experts (`int`, *optional*, defaults to 8): + Number of experts per Sparse MLP layer. + output_router_logits (`bool`, *optional*, defaults to `False`): + Whether or not the router logits should be returned by the model. Enabling this will also + allow the model to output the auxiliary loss. See [here]() for more details + router_aux_loss_coef (`float`, *optional*, defaults to 0.001): + The aux loss factor for the total loss. + router_jitter_noise (`float`, *optional*, defaults to 0.0): + Amount of noise to add to the router. + + ```python + >>> from transformers import MiniMaxM2Model, MiniMaxM2Config + + >>> # Initializing a MiniMaxM2 7B style configuration + >>> configuration = MiniMaxM2Config() + + >>> # Initializing a model from the MiniMaxM2 7B style configuration + >>> model = MiniMaxM2Model(configuration) + + >>> # Accessing the model configuration + >>> configuration = model.config + ```""" + + model_type = "minimax_m2" + keys_to_ignore_at_inference = ["past_key_values"] + base_model_tp_plan = { + "layers.*.self_attn.q_proj": "colwise", + "layers.*.self_attn.k_proj": "colwise", + "layers.*.self_attn.v_proj": "colwise", + "layers.*.self_attn.o_proj": "rowwise", + "layers.*.block_sparse_moe.gate": "colwise_rep", # we need to replicate here to correctly route experts + "layers.*.block_sparse_moe.experts.*.w1": "colwise", + "layers.*.block_sparse_moe.experts.*.w2": "rowwise", + "layers.*.block_sparse_moe.experts.*.w3": "colwise", + } + base_model_pp_plan = { + "embed_tokens": (["input_ids"], ["inputs_embeds"]), + "layers": (["hidden_states", "attention_mask"], ["hidden_states"]), + "norm": (["hidden_states"], ["hidden_states"]), + } + + def __init__( + self, + vocab_size=32000, + hidden_size=4096, + intermediate_size=14336, + num_hidden_layers=32, + num_attention_heads=32, + num_key_value_heads=8, + head_dim=None, + hidden_act="silu", + max_position_embeddings=4096 * 32, + initializer_range=0.02, + rms_norm_eps=1e-5, + use_cache=True, + pad_token_id=None, + bos_token_id=1, + eos_token_id=2, + tie_word_embeddings=False, + rope_theta=1e6, + sliding_window=None, + attention_dropout=0.0, + num_experts_per_tok=2, + num_local_experts=8, + output_router_logits=False, + router_aux_loss_coef=0.001, + router_jitter_noise=0.0, + **kwargs, + ): + self.vocab_size = vocab_size + self.max_position_embeddings = max_position_embeddings + self.hidden_size = hidden_size + self.intermediate_size = intermediate_size + self.num_hidden_layers = num_hidden_layers + self.num_attention_heads = num_attention_heads + self.sliding_window = sliding_window + + # for backward compatibility + if num_key_value_heads is None: + num_key_value_heads = num_attention_heads + + self.num_key_value_heads = num_key_value_heads + self.hidden_act = hidden_act + self.initializer_range = initializer_range + self.rms_norm_eps = rms_norm_eps + self.use_cache = use_cache + self.rope_theta = rope_theta + self.attention_dropout = attention_dropout + self.head_dim = head_dim + + self.num_experts_per_tok = num_experts_per_tok + self.num_local_experts = num_local_experts + self.output_router_logits = output_router_logits + self.router_aux_loss_coef = router_aux_loss_coef + self.router_jitter_noise = router_jitter_noise + + self.use_qk_norm = kwargs.pop("use_qk_norm", False) + self.rotary_dim = kwargs.pop("rotary_dim", self.head_dim) + self.partial_rotary_factor = kwargs.pop("partial_rotary_factor", 1) + if self.head_dim is not None: + self.partial_rotary_factor = self.rotary_dim / self.head_dim + + super().__init__( + pad_token_id=pad_token_id, + bos_token_id=bos_token_id, + eos_token_id=eos_token_id, + tie_word_embeddings=tie_word_embeddings, + **kwargs, + ) + + +__all__ = ["MiniMaxM2Config"] diff --git a/generation_config.json b/generation_config.json new file mode 100644 index 0000000000000000000000000000000000000000..30b418a48e04bf5e6d584093aa23393614678619 --- /dev/null +++ b/generation_config.json @@ -0,0 +1,9 @@ +{ + "bos_token_id": 200019, + "do_sample": true, + "eos_token_id": 200020, + "temperature": 1.0, + "top_p": 0.95, + "top_k": 40, + "transformers_version": "4.46.1" +} diff --git a/model-00003-of-00094.safetensors b/model-00003-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..6f4b0e8aa01215b6dffc17b23fc0cb726e3487f3 --- /dev/null +++ b/model-00003-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c417695fc25c7ca5f72d385624b1d2add08ccd76577687a1a1cba1435aa6f576 +size 4831838522 diff --git a/model-00005-of-00094.safetensors b/model-00005-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..e1a8759c027dc9abb03e3eaa7af0e893a91464d0 --- /dev/null +++ b/model-00005-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e32da526acca5a6da9eddecaec62aa01f76d54df06fb72cfdff03d09a5a28bf3 +size 4923093446 diff --git a/model-00006-of-00094.safetensors b/model-00006-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..9d304d569aa93543fa2f9bd04d6820b4a3735bd9 --- /dev/null +++ b/model-00006-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fc246fa2f4eb14679311504d5b680e0a7f9b5c13d23fe0ef1b053e9a85f4a15 +size 4831838522 diff --git a/model-00009-of-00094.safetensors b/model-00009-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..42c6d7fd2ebb565d307b8a29a4df08dcf452172d --- /dev/null +++ b/model-00009-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a721897196abfc57977bcbe74e524a8f284fa859796f2281b4bffc25b475b20 +size 4831838522 diff --git a/model-00012-of-00094.safetensors b/model-00012-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..77ee9e5ad92ab20655636ca7a612bb181b00e9a0 --- /dev/null +++ b/model-00012-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9f0058aaf5aa7b0a08ec94bf5e6ea78c511af33b154a2c419566098d6c47da5 +size 4831838522 diff --git a/model-00014-of-00094.safetensors b/model-00014-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..26ea82c265d7b20827b4f1cca0d546fe665499ed --- /dev/null +++ b/model-00014-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:646d99744b0ce1d296b5a7f39c5c87ffc3525bdc0d501215a81e6e708c349447 +size 4923093416 diff --git a/model-00017-of-00094.safetensors b/model-00017-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..5ae019c7d214141236519402f559b786523d21c0 --- /dev/null +++ b/model-00017-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6490d2906b37e56ea2c4b591050db03595ee7d222e350965b26b6f0825b6d48 +size 4923093416 diff --git a/model-00031-of-00094.safetensors b/model-00031-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..560832f9abfb85c572c05c3f283fbda479875ea9 --- /dev/null +++ b/model-00031-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:653ce9777063f1d7d8c88287a63dd3a4b77bb0a62d2192700d6d1fc2b5f89ebf +size 4923093466 diff --git a/model-00032-of-00094.safetensors b/model-00032-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..9a8d151cfbbdab24374da2c84f3fd18a402aa180 --- /dev/null +++ b/model-00032-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3e040d4a8662c83e2abc12c2f955b4b988067dbfb61331718d5798e1901d668 +size 4923093446 diff --git a/model-00034-of-00094.safetensors b/model-00034-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..dcb69240a268b309fbd3e34d80d3a38dff1a2295 --- /dev/null +++ b/model-00034-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a6d54d31bed7051873a062d48a368f581d31d2e3af4fe2e056fd31862940d25 +size 4923093424 diff --git a/model-00037-of-00094.safetensors b/model-00037-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..375a674abddd4d09a285e045613af5bea5fe14f4 --- /dev/null +++ b/model-00037-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e1ec50f2815c5c9b9736b38401274d9736446b17dd102d86ad58af5f81b5577 +size 4923093466 diff --git a/model-00038-of-00094.safetensors b/model-00038-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..7af8cd317428e2cb837710410b6668a1f760fd9b --- /dev/null +++ b/model-00038-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05dc74088988f94bab6cc16619c00913761a6e85d2edfe897af9d7979cad759b +size 4923093452 diff --git a/model-00041-of-00094.safetensors b/model-00041-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..e5443b3c387703e39c1b9e0183bb6a400907e53b --- /dev/null +++ b/model-00041-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bcba47e85e6a7131fc279369e85b6bb58416c2e0fd322f13631aaf87be3a1a8 +size 4923093418 diff --git a/model-00042-of-00094.safetensors b/model-00042-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..e76e2eb3475d32fa8676f2115c7707ee8112c85c --- /dev/null +++ b/model-00042-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d21dafc4e7826703be19bffa560e7e9d630256f709fa998ed6eb9c0b62093109 +size 4831838524 diff --git a/model-00044-of-00094.safetensors b/model-00044-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..f0c6e9b1f8203c88bcabf064ea80875389fc42d4 --- /dev/null +++ b/model-00044-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62330fc71faee7b6b665f4ee8b747eec280c5617983b75b4460fbbebf6953c51 +size 4923093458 diff --git a/model-00046-of-00094.safetensors b/model-00046-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..72084250a4ce7126d9b34051281d81ec29d257d7 --- /dev/null +++ b/model-00046-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f31f61abb224bcc07b9b5b887bb87746de8a1747b20cf396506bc3a744e4f641 +size 4923093426 diff --git a/model-00047-of-00094.safetensors b/model-00047-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..d5ca7a265a4b5c0138422a0477657fd0a516a14d --- /dev/null +++ b/model-00047-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8b71bd551ce522bab38495aa176857106ab2b45a9c5aa9ca4453982c3bbf9ba +size 4923093428 diff --git a/model-00048-of-00094.safetensors b/model-00048-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..f227d9c31820f805dc45cdd9ef41515e743e1144 --- /dev/null +++ b/model-00048-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84b54ca2c37709829c1c76ec11f456698c2985c3eabc1510ef67224237dc1715 +size 4831838524 diff --git a/model-00049-of-00094.safetensors b/model-00049-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..fb778bb9b3ea14bb5689df0d1f34af14c296c437 --- /dev/null +++ b/model-00049-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03b84b73184842904f2dd02f6141f52e4aa3f659d8cc697b15fef8697019a272 +size 4923093466 diff --git a/model-00050-of-00094.safetensors b/model-00050-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..167a632464f32669558a116ac6524f4a070c115e --- /dev/null +++ b/model-00050-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba6bcd76db0123c84c42bef7f200e472f09c9146f66ff6e17d85bcdbce08a93e +size 4923093412 diff --git a/model-00053-of-00094.safetensors b/model-00053-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..d90360900250987566657b763bbedb3b465471ef --- /dev/null +++ b/model-00053-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bdecc8dc20ef2b36f6ab7e544c53ca5bc5a12887fe5881b7a3b0eac91b1a143 +size 4923093446 diff --git a/model-00055-of-00094.safetensors b/model-00055-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..27f83049a5c11e92fd669e80cef3a2037d5a1d07 --- /dev/null +++ b/model-00055-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1634335801519125895fa6f69c4f84b31118415a7c39eaf325eeb581554c75ab +size 4923093466 diff --git a/model-00056-of-00094.safetensors b/model-00056-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..03f72586d7d4bf100022136a870bff860b036d02 --- /dev/null +++ b/model-00056-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f425487239a4ecf0611309b71bab1a07a5aff844a55dd26538d5574a9cc44a5 +size 4923093436 diff --git a/model-00062-of-00094.safetensors b/model-00062-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..f327d3b31069dbba9dc1a83eb6dff698e9908e2b --- /dev/null +++ b/model-00062-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:524bd376a65659c19562946b5be3f500a489262be3587e646b91504becbbbcfd +size 4923093422 diff --git a/model-00067-of-00094.safetensors b/model-00067-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..5397ae96a555aa3dad8d3b5f9617d44125deb5c0 --- /dev/null +++ b/model-00067-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5f64885932c4f55d917aa99ae894569674e68b9bd1bd2156c3b82e117c12ffe +size 4923093466 diff --git a/model-00068-of-00094.safetensors b/model-00068-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..7b68c3ba5d42ea3e8cc43ed56321159afcad61af --- /dev/null +++ b/model-00068-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9cfbffe2c0ba73da2e2feaeb010e8bc98e896a7f356a67c2f8ac3bcf7e7bad6 +size 4923093458 diff --git a/model-00070-of-00094.safetensors b/model-00070-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..48e9f3e56f2ee4e962d53d09e15fd887880a3139 --- /dev/null +++ b/model-00070-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae05be3ec3bd24b4aa63e291b60688d64fad8ea040da8f31657137f7764361c0 +size 4923093454 diff --git a/model-00071-of-00094.safetensors b/model-00071-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..c0a28fc5ef84bd8f0744546a422e57a79bed0274 --- /dev/null +++ b/model-00071-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4293bb9e5f9a394f8e158b193b5c26f8022012bb859da0d603c6f16ee9c16eee +size 4923093430 diff --git a/model-00073-of-00094.safetensors b/model-00073-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..cb92b2628de40daffe271a33186a629f7dd76808 --- /dev/null +++ b/model-00073-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2c4cb0d54e2725cbc667110602030615c297be5cb76debe8d9712a8f7ce060a +size 4923093466 diff --git a/model-00075-of-00094.safetensors b/model-00075-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..9ff72ee382757827cae13b4fec3a52e527ad911a --- /dev/null +++ b/model-00075-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bb60991ab983848962cb5ef7bd30e6de06acfec49d833545915c852ad793a8f +size 4831838524 diff --git a/model-00076-of-00094.safetensors b/model-00076-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..3d498b27793bab2c086d4bfe3629110c5b3b10ab --- /dev/null +++ b/model-00076-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc88e974262f85286261daae60079c6e568ec57866f2e4af87a8bac4358e8dc1 +size 4923093454 diff --git a/model-00079-of-00094.safetensors b/model-00079-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..56aefc00f1644f191462ed9c160f08e1ca468517 --- /dev/null +++ b/model-00079-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58188b8cc48f2fbad66a1783a42b3fa637e299d34bece04111907677a98c6976 +size 4923093466 diff --git a/model-00080-of-00094.safetensors b/model-00080-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..0ef09ca6dea8c81fae791e921910a6812abbe5cb --- /dev/null +++ b/model-00080-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0bc3b8f4773ef79f829c6c2f82a1e3e2277e8f9292b325641835e2ee38668050 +size 4923093458 diff --git a/model-00082-of-00094.safetensors b/model-00082-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..12d70dfce37d89eb7bb755fb3554eff7fde31b36 --- /dev/null +++ b/model-00082-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9dffe4684ec29930d3ffd173cac07d869faf63109af4c5c409f2dec570de57fe +size 4923093442 diff --git a/model-00083-of-00094.safetensors b/model-00083-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..22d5025bfdedb54fdf4b902a4398ec2410cfdc80 --- /dev/null +++ b/model-00083-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a32a546edc1ffb78f29c50784f5a836ca0b198ce85becc80bd5501f3c2a5f97 +size 4923093416 diff --git a/model-00085-of-00094.safetensors b/model-00085-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..609a7e89471da5543e235eab2080cc72e3d5ea2b --- /dev/null +++ b/model-00085-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:806ca7a7f3e408d22641a4f52aa233a1fb88512b5317d4ef895f80442571a315 +size 4923093466 diff --git a/model-00086-of-00094.safetensors b/model-00086-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..52590fe3039a3ec99e18258eebc76ccb5da13ec4 --- /dev/null +++ b/model-00086-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39581fa4c3fe8caa413db1f32dd4821b799a0c66398cb83119207c1b572d2746 +size 4923093408 diff --git a/model-00088-of-00094.safetensors b/model-00088-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..23eea489ec44a2d024bb5dbe27bbce0b13b8db96 --- /dev/null +++ b/model-00088-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d06be3d4630020db1727dbe2e39b01ef8250fe2c81975019cb410cc3dbfd0e3f +size 4923093448 diff --git a/model-00089-of-00094.safetensors b/model-00089-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..20325ed47900bd8b1caf79cdec2b57ebedc58aa0 --- /dev/null +++ b/model-00089-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6db433148d16b01ce48033f73f11d607d55b2c94f5c8d36405762aca86ddcfc9 +size 4923093432 diff --git a/model-00091-of-00094.safetensors b/model-00091-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..2164c1edede4756573d86a8700911f0a1a1188f4 --- /dev/null +++ b/model-00091-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d495b84823cfbe7ff2ed4b2b67b482736e1eed27a46733ebe9026ba83061cf9b +size 4923093466 diff --git a/model-00094-of-00094.safetensors b/model-00094-of-00094.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..afadd848a443cbacc5de53ef1de11eb438ea12a8 --- /dev/null +++ b/model-00094-of-00094.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc70e06f67c241f61de74870f8414162834b54b9c5b1f42a56dc02a450f690e5 +size 3645132486 diff --git a/model.safetensors.index.json b/model.safetensors.index.json new file mode 100644 index 0000000000000000000000000000000000000000..70f7cf990bb2fb08ef137bc8389df8339d062f4c --- /dev/null +++ b/model.safetensors.index.json @@ -0,0 +1,817 @@ +{ + "metadata": { + "total_size": 457477079040, + "total_parameters": 228689748992 + }, + "weight_map": { + "lm_head.weight": "model-00094-of-00094.safetensors", + "model.embed_tokens.weight": "model-00001-of-00094.safetensors", + "model.layers.0.block_sparse_moe.e_score_correction_bias": "model-00002-of-00094.safetensors", + "model.layers.0.block_sparse_moe.gate.weight": "model-00001-of-00094.safetensors", + "model.layers.0.block_sparse_moe.switch_mlp.down_proj.weight": "model-00002-of-00094.safetensors", + "model.layers.0.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00001-of-00094.safetensors", + "model.layers.0.block_sparse_moe.switch_mlp.up_proj.weight": "model-00002-of-00094.safetensors", + "model.layers.0.input_layernorm.weight": "model-00002-of-00094.safetensors", + "model.layers.0.post_attention_layernorm.weight": "model-00002-of-00094.safetensors", + "model.layers.0.self_attn.k_norm.weight": "model-00001-of-00094.safetensors", + "model.layers.0.self_attn.k_proj.weight": "model-00001-of-00094.safetensors", + "model.layers.0.self_attn.o_proj.weight": "model-00001-of-00094.safetensors", + "model.layers.0.self_attn.q_norm.weight": "model-00001-of-00094.safetensors", + "model.layers.0.self_attn.q_proj.weight": "model-00001-of-00094.safetensors", + "model.layers.0.self_attn.v_proj.weight": "model-00001-of-00094.safetensors", + "model.layers.1.block_sparse_moe.e_score_correction_bias": "model-00004-of-00094.safetensors", + "model.layers.1.block_sparse_moe.gate.weight": "model-00002-of-00094.safetensors", + "model.layers.1.block_sparse_moe.switch_mlp.down_proj.weight": "model-00004-of-00094.safetensors", + "model.layers.1.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00003-of-00094.safetensors", + "model.layers.1.block_sparse_moe.switch_mlp.up_proj.weight": "model-00003-of-00094.safetensors", + "model.layers.1.input_layernorm.weight": "model-00004-of-00094.safetensors", + "model.layers.1.post_attention_layernorm.weight": "model-00004-of-00094.safetensors", + "model.layers.1.self_attn.k_norm.weight": "model-00002-of-00094.safetensors", + "model.layers.1.self_attn.k_proj.weight": "model-00002-of-00094.safetensors", + "model.layers.1.self_attn.o_proj.weight": "model-00002-of-00094.safetensors", + "model.layers.1.self_attn.q_norm.weight": "model-00002-of-00094.safetensors", + "model.layers.1.self_attn.q_proj.weight": "model-00002-of-00094.safetensors", + "model.layers.1.self_attn.v_proj.weight": "model-00002-of-00094.safetensors", + "model.layers.10.block_sparse_moe.e_score_correction_bias": "model-00017-of-00094.safetensors", + "model.layers.10.block_sparse_moe.gate.weight": "model-00016-of-00094.safetensors", + "model.layers.10.block_sparse_moe.switch_mlp.down_proj.weight": "model-00017-of-00094.safetensors", + "model.layers.10.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00016-of-00094.safetensors", + "model.layers.10.block_sparse_moe.switch_mlp.up_proj.weight": "model-00017-of-00094.safetensors", + "model.layers.10.input_layernorm.weight": "model-00017-of-00094.safetensors", + "model.layers.10.post_attention_layernorm.weight": "model-00017-of-00094.safetensors", + "model.layers.10.self_attn.k_norm.weight": "model-00016-of-00094.safetensors", + "model.layers.10.self_attn.k_proj.weight": "model-00016-of-00094.safetensors", + "model.layers.10.self_attn.o_proj.weight": "model-00016-of-00094.safetensors", + "model.layers.10.self_attn.q_norm.weight": "model-00016-of-00094.safetensors", + "model.layers.10.self_attn.q_proj.weight": "model-00016-of-00094.safetensors", + "model.layers.10.self_attn.v_proj.weight": "model-00016-of-00094.safetensors", + "model.layers.11.block_sparse_moe.e_score_correction_bias": "model-00019-of-00094.safetensors", + "model.layers.11.block_sparse_moe.gate.weight": "model-00017-of-00094.safetensors", + "model.layers.11.block_sparse_moe.switch_mlp.down_proj.weight": "model-00019-of-00094.safetensors", + "model.layers.11.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00018-of-00094.safetensors", + "model.layers.11.block_sparse_moe.switch_mlp.up_proj.weight": "model-00018-of-00094.safetensors", + "model.layers.11.input_layernorm.weight": "model-00019-of-00094.safetensors", + "model.layers.11.post_attention_layernorm.weight": "model-00019-of-00094.safetensors", + "model.layers.11.self_attn.k_norm.weight": "model-00017-of-00094.safetensors", + "model.layers.11.self_attn.k_proj.weight": "model-00017-of-00094.safetensors", + "model.layers.11.self_attn.o_proj.weight": "model-00017-of-00094.safetensors", + "model.layers.11.self_attn.q_norm.weight": "model-00017-of-00094.safetensors", + "model.layers.11.self_attn.q_proj.weight": "model-00017-of-00094.safetensors", + "model.layers.11.self_attn.v_proj.weight": "model-00017-of-00094.safetensors", + "model.layers.12.block_sparse_moe.e_score_correction_bias": "model-00020-of-00094.safetensors", + "model.layers.12.block_sparse_moe.gate.weight": "model-00019-of-00094.safetensors", + "model.layers.12.block_sparse_moe.switch_mlp.down_proj.weight": "model-00020-of-00094.safetensors", + "model.layers.12.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00019-of-00094.safetensors", + "model.layers.12.block_sparse_moe.switch_mlp.up_proj.weight": "model-00020-of-00094.safetensors", + "model.layers.12.input_layernorm.weight": "model-00020-of-00094.safetensors", + "model.layers.12.post_attention_layernorm.weight": "model-00020-of-00094.safetensors", + "model.layers.12.self_attn.k_norm.weight": "model-00019-of-00094.safetensors", + "model.layers.12.self_attn.k_proj.weight": "model-00019-of-00094.safetensors", + "model.layers.12.self_attn.o_proj.weight": "model-00019-of-00094.safetensors", + "model.layers.12.self_attn.q_norm.weight": "model-00019-of-00094.safetensors", + "model.layers.12.self_attn.q_proj.weight": "model-00019-of-00094.safetensors", + "model.layers.12.self_attn.v_proj.weight": "model-00019-of-00094.safetensors", + "model.layers.13.block_sparse_moe.e_score_correction_bias": "model-00022-of-00094.safetensors", + "model.layers.13.block_sparse_moe.gate.weight": "model-00020-of-00094.safetensors", + "model.layers.13.block_sparse_moe.switch_mlp.down_proj.weight": "model-00022-of-00094.safetensors", + "model.layers.13.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00021-of-00094.safetensors", + "model.layers.13.block_sparse_moe.switch_mlp.up_proj.weight": "model-00021-of-00094.safetensors", + "model.layers.13.input_layernorm.weight": "model-00022-of-00094.safetensors", + "model.layers.13.post_attention_layernorm.weight": "model-00022-of-00094.safetensors", + "model.layers.13.self_attn.k_norm.weight": "model-00020-of-00094.safetensors", + "model.layers.13.self_attn.k_proj.weight": "model-00020-of-00094.safetensors", + "model.layers.13.self_attn.o_proj.weight": "model-00020-of-00094.safetensors", + "model.layers.13.self_attn.q_norm.weight": "model-00020-of-00094.safetensors", + "model.layers.13.self_attn.q_proj.weight": "model-00020-of-00094.safetensors", + "model.layers.13.self_attn.v_proj.weight": "model-00020-of-00094.safetensors", + "model.layers.14.block_sparse_moe.e_score_correction_bias": "model-00023-of-00094.safetensors", + "model.layers.14.block_sparse_moe.gate.weight": "model-00022-of-00094.safetensors", + "model.layers.14.block_sparse_moe.switch_mlp.down_proj.weight": "model-00023-of-00094.safetensors", + "model.layers.14.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00022-of-00094.safetensors", + "model.layers.14.block_sparse_moe.switch_mlp.up_proj.weight": "model-00023-of-00094.safetensors", + "model.layers.14.input_layernorm.weight": "model-00023-of-00094.safetensors", + "model.layers.14.post_attention_layernorm.weight": "model-00023-of-00094.safetensors", + "model.layers.14.self_attn.k_norm.weight": "model-00022-of-00094.safetensors", + "model.layers.14.self_attn.k_proj.weight": "model-00022-of-00094.safetensors", + "model.layers.14.self_attn.o_proj.weight": "model-00022-of-00094.safetensors", + "model.layers.14.self_attn.q_norm.weight": "model-00022-of-00094.safetensors", + "model.layers.14.self_attn.q_proj.weight": "model-00022-of-00094.safetensors", + "model.layers.14.self_attn.v_proj.weight": "model-00022-of-00094.safetensors", + "model.layers.15.block_sparse_moe.e_score_correction_bias": "model-00025-of-00094.safetensors", + "model.layers.15.block_sparse_moe.gate.weight": "model-00023-of-00094.safetensors", + "model.layers.15.block_sparse_moe.switch_mlp.down_proj.weight": "model-00025-of-00094.safetensors", + "model.layers.15.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00024-of-00094.safetensors", + "model.layers.15.block_sparse_moe.switch_mlp.up_proj.weight": "model-00024-of-00094.safetensors", + "model.layers.15.input_layernorm.weight": "model-00025-of-00094.safetensors", + "model.layers.15.post_attention_layernorm.weight": "model-00025-of-00094.safetensors", + "model.layers.15.self_attn.k_norm.weight": "model-00023-of-00094.safetensors", + "model.layers.15.self_attn.k_proj.weight": "model-00023-of-00094.safetensors", + "model.layers.15.self_attn.o_proj.weight": "model-00023-of-00094.safetensors", + "model.layers.15.self_attn.q_norm.weight": "model-00023-of-00094.safetensors", + "model.layers.15.self_attn.q_proj.weight": "model-00023-of-00094.safetensors", + "model.layers.15.self_attn.v_proj.weight": "model-00023-of-00094.safetensors", + "model.layers.16.block_sparse_moe.e_score_correction_bias": "model-00026-of-00094.safetensors", + "model.layers.16.block_sparse_moe.gate.weight": "model-00025-of-00094.safetensors", + "model.layers.16.block_sparse_moe.switch_mlp.down_proj.weight": "model-00026-of-00094.safetensors", + "model.layers.16.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00025-of-00094.safetensors", + "model.layers.16.block_sparse_moe.switch_mlp.up_proj.weight": "model-00026-of-00094.safetensors", + "model.layers.16.input_layernorm.weight": "model-00026-of-00094.safetensors", + "model.layers.16.post_attention_layernorm.weight": "model-00026-of-00094.safetensors", + "model.layers.16.self_attn.k_norm.weight": "model-00025-of-00094.safetensors", + "model.layers.16.self_attn.k_proj.weight": "model-00025-of-00094.safetensors", + "model.layers.16.self_attn.o_proj.weight": "model-00025-of-00094.safetensors", + "model.layers.16.self_attn.q_norm.weight": "model-00025-of-00094.safetensors", + "model.layers.16.self_attn.q_proj.weight": "model-00025-of-00094.safetensors", + "model.layers.16.self_attn.v_proj.weight": "model-00025-of-00094.safetensors", + "model.layers.17.block_sparse_moe.e_score_correction_bias": "model-00028-of-00094.safetensors", + "model.layers.17.block_sparse_moe.gate.weight": "model-00026-of-00094.safetensors", + "model.layers.17.block_sparse_moe.switch_mlp.down_proj.weight": "model-00028-of-00094.safetensors", + "model.layers.17.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00027-of-00094.safetensors", + "model.layers.17.block_sparse_moe.switch_mlp.up_proj.weight": "model-00027-of-00094.safetensors", + "model.layers.17.input_layernorm.weight": "model-00028-of-00094.safetensors", + "model.layers.17.post_attention_layernorm.weight": "model-00028-of-00094.safetensors", + "model.layers.17.self_attn.k_norm.weight": "model-00026-of-00094.safetensors", + "model.layers.17.self_attn.k_proj.weight": "model-00026-of-00094.safetensors", + "model.layers.17.self_attn.o_proj.weight": "model-00026-of-00094.safetensors", + "model.layers.17.self_attn.q_norm.weight": "model-00026-of-00094.safetensors", + "model.layers.17.self_attn.q_proj.weight": "model-00026-of-00094.safetensors", + "model.layers.17.self_attn.v_proj.weight": "model-00026-of-00094.safetensors", + "model.layers.18.block_sparse_moe.e_score_correction_bias": "model-00029-of-00094.safetensors", + "model.layers.18.block_sparse_moe.gate.weight": "model-00028-of-00094.safetensors", + "model.layers.18.block_sparse_moe.switch_mlp.down_proj.weight": "model-00029-of-00094.safetensors", + "model.layers.18.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00028-of-00094.safetensors", + "model.layers.18.block_sparse_moe.switch_mlp.up_proj.weight": "model-00029-of-00094.safetensors", + "model.layers.18.input_layernorm.weight": "model-00029-of-00094.safetensors", + "model.layers.18.post_attention_layernorm.weight": "model-00029-of-00094.safetensors", + "model.layers.18.self_attn.k_norm.weight": "model-00028-of-00094.safetensors", + "model.layers.18.self_attn.k_proj.weight": "model-00028-of-00094.safetensors", + "model.layers.18.self_attn.o_proj.weight": "model-00028-of-00094.safetensors", + "model.layers.18.self_attn.q_norm.weight": "model-00028-of-00094.safetensors", + "model.layers.18.self_attn.q_proj.weight": "model-00028-of-00094.safetensors", + "model.layers.18.self_attn.v_proj.weight": "model-00028-of-00094.safetensors", + "model.layers.19.block_sparse_moe.e_score_correction_bias": "model-00031-of-00094.safetensors", + "model.layers.19.block_sparse_moe.gate.weight": "model-00029-of-00094.safetensors", + "model.layers.19.block_sparse_moe.switch_mlp.down_proj.weight": "model-00031-of-00094.safetensors", + "model.layers.19.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00030-of-00094.safetensors", + "model.layers.19.block_sparse_moe.switch_mlp.up_proj.weight": "model-00030-of-00094.safetensors", + "model.layers.19.input_layernorm.weight": "model-00031-of-00094.safetensors", + "model.layers.19.post_attention_layernorm.weight": "model-00031-of-00094.safetensors", + "model.layers.19.self_attn.k_norm.weight": "model-00029-of-00094.safetensors", + "model.layers.19.self_attn.k_proj.weight": "model-00029-of-00094.safetensors", + "model.layers.19.self_attn.o_proj.weight": "model-00029-of-00094.safetensors", + "model.layers.19.self_attn.q_norm.weight": "model-00029-of-00094.safetensors", + "model.layers.19.self_attn.q_proj.weight": "model-00029-of-00094.safetensors", + "model.layers.19.self_attn.v_proj.weight": "model-00029-of-00094.safetensors", + "model.layers.2.block_sparse_moe.e_score_correction_bias": "model-00005-of-00094.safetensors", + "model.layers.2.block_sparse_moe.gate.weight": "model-00004-of-00094.safetensors", + "model.layers.2.block_sparse_moe.switch_mlp.down_proj.weight": "model-00005-of-00094.safetensors", + "model.layers.2.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00004-of-00094.safetensors", + "model.layers.2.block_sparse_moe.switch_mlp.up_proj.weight": "model-00005-of-00094.safetensors", + "model.layers.2.input_layernorm.weight": "model-00005-of-00094.safetensors", + "model.layers.2.post_attention_layernorm.weight": "model-00005-of-00094.safetensors", + "model.layers.2.self_attn.k_norm.weight": "model-00004-of-00094.safetensors", + "model.layers.2.self_attn.k_proj.weight": "model-00004-of-00094.safetensors", + "model.layers.2.self_attn.o_proj.weight": "model-00004-of-00094.safetensors", + "model.layers.2.self_attn.q_norm.weight": "model-00004-of-00094.safetensors", + "model.layers.2.self_attn.q_proj.weight": "model-00004-of-00094.safetensors", + "model.layers.2.self_attn.v_proj.weight": "model-00004-of-00094.safetensors", + "model.layers.20.block_sparse_moe.e_score_correction_bias": "model-00032-of-00094.safetensors", + "model.layers.20.block_sparse_moe.gate.weight": "model-00031-of-00094.safetensors", + "model.layers.20.block_sparse_moe.switch_mlp.down_proj.weight": "model-00032-of-00094.safetensors", + "model.layers.20.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00031-of-00094.safetensors", + "model.layers.20.block_sparse_moe.switch_mlp.up_proj.weight": "model-00032-of-00094.safetensors", + "model.layers.20.input_layernorm.weight": "model-00032-of-00094.safetensors", + "model.layers.20.post_attention_layernorm.weight": "model-00032-of-00094.safetensors", + "model.layers.20.self_attn.k_norm.weight": "model-00031-of-00094.safetensors", + "model.layers.20.self_attn.k_proj.weight": "model-00031-of-00094.safetensors", + "model.layers.20.self_attn.o_proj.weight": "model-00031-of-00094.safetensors", + "model.layers.20.self_attn.q_norm.weight": "model-00031-of-00094.safetensors", + "model.layers.20.self_attn.q_proj.weight": "model-00031-of-00094.safetensors", + "model.layers.20.self_attn.v_proj.weight": "model-00031-of-00094.safetensors", + "model.layers.21.block_sparse_moe.e_score_correction_bias": "model-00034-of-00094.safetensors", + "model.layers.21.block_sparse_moe.gate.weight": "model-00032-of-00094.safetensors", + "model.layers.21.block_sparse_moe.switch_mlp.down_proj.weight": "model-00034-of-00094.safetensors", + "model.layers.21.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00033-of-00094.safetensors", + "model.layers.21.block_sparse_moe.switch_mlp.up_proj.weight": "model-00033-of-00094.safetensors", + "model.layers.21.input_layernorm.weight": "model-00034-of-00094.safetensors", + "model.layers.21.post_attention_layernorm.weight": "model-00034-of-00094.safetensors", + "model.layers.21.self_attn.k_norm.weight": "model-00032-of-00094.safetensors", + "model.layers.21.self_attn.k_proj.weight": "model-00032-of-00094.safetensors", + "model.layers.21.self_attn.o_proj.weight": "model-00032-of-00094.safetensors", + "model.layers.21.self_attn.q_norm.weight": "model-00032-of-00094.safetensors", + "model.layers.21.self_attn.q_proj.weight": "model-00032-of-00094.safetensors", + "model.layers.21.self_attn.v_proj.weight": "model-00032-of-00094.safetensors", + "model.layers.22.block_sparse_moe.e_score_correction_bias": "model-00035-of-00094.safetensors", + "model.layers.22.block_sparse_moe.gate.weight": "model-00034-of-00094.safetensors", + "model.layers.22.block_sparse_moe.switch_mlp.down_proj.weight": "model-00035-of-00094.safetensors", + "model.layers.22.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00034-of-00094.safetensors", + "model.layers.22.block_sparse_moe.switch_mlp.up_proj.weight": "model-00035-of-00094.safetensors", + "model.layers.22.input_layernorm.weight": "model-00035-of-00094.safetensors", + "model.layers.22.post_attention_layernorm.weight": "model-00035-of-00094.safetensors", + "model.layers.22.self_attn.k_norm.weight": "model-00034-of-00094.safetensors", + "model.layers.22.self_attn.k_proj.weight": "model-00034-of-00094.safetensors", + "model.layers.22.self_attn.o_proj.weight": "model-00034-of-00094.safetensors", + "model.layers.22.self_attn.q_norm.weight": "model-00034-of-00094.safetensors", + "model.layers.22.self_attn.q_proj.weight": "model-00034-of-00094.safetensors", + "model.layers.22.self_attn.v_proj.weight": "model-00034-of-00094.safetensors", + "model.layers.23.block_sparse_moe.e_score_correction_bias": "model-00037-of-00094.safetensors", + "model.layers.23.block_sparse_moe.gate.weight": "model-00035-of-00094.safetensors", + "model.layers.23.block_sparse_moe.switch_mlp.down_proj.weight": "model-00037-of-00094.safetensors", + "model.layers.23.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00036-of-00094.safetensors", + "model.layers.23.block_sparse_moe.switch_mlp.up_proj.weight": "model-00036-of-00094.safetensors", + "model.layers.23.input_layernorm.weight": "model-00037-of-00094.safetensors", + "model.layers.23.post_attention_layernorm.weight": "model-00037-of-00094.safetensors", + "model.layers.23.self_attn.k_norm.weight": "model-00035-of-00094.safetensors", + "model.layers.23.self_attn.k_proj.weight": "model-00035-of-00094.safetensors", + "model.layers.23.self_attn.o_proj.weight": "model-00035-of-00094.safetensors", + "model.layers.23.self_attn.q_norm.weight": "model-00035-of-00094.safetensors", + "model.layers.23.self_attn.q_proj.weight": "model-00035-of-00094.safetensors", + "model.layers.23.self_attn.v_proj.weight": "model-00035-of-00094.safetensors", + "model.layers.24.block_sparse_moe.e_score_correction_bias": "model-00038-of-00094.safetensors", + "model.layers.24.block_sparse_moe.gate.weight": "model-00037-of-00094.safetensors", + "model.layers.24.block_sparse_moe.switch_mlp.down_proj.weight": "model-00038-of-00094.safetensors", + "model.layers.24.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00037-of-00094.safetensors", + "model.layers.24.block_sparse_moe.switch_mlp.up_proj.weight": "model-00038-of-00094.safetensors", + "model.layers.24.input_layernorm.weight": "model-00038-of-00094.safetensors", + "model.layers.24.post_attention_layernorm.weight": "model-00038-of-00094.safetensors", + "model.layers.24.self_attn.k_norm.weight": "model-00037-of-00094.safetensors", + "model.layers.24.self_attn.k_proj.weight": "model-00037-of-00094.safetensors", + "model.layers.24.self_attn.o_proj.weight": "model-00037-of-00094.safetensors", + "model.layers.24.self_attn.q_norm.weight": "model-00037-of-00094.safetensors", + "model.layers.24.self_attn.q_proj.weight": "model-00037-of-00094.safetensors", + "model.layers.24.self_attn.v_proj.weight": "model-00037-of-00094.safetensors", + "model.layers.25.block_sparse_moe.e_score_correction_bias": "model-00040-of-00094.safetensors", + "model.layers.25.block_sparse_moe.gate.weight": "model-00038-of-00094.safetensors", + "model.layers.25.block_sparse_moe.switch_mlp.down_proj.weight": "model-00040-of-00094.safetensors", + "model.layers.25.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00039-of-00094.safetensors", + "model.layers.25.block_sparse_moe.switch_mlp.up_proj.weight": "model-00039-of-00094.safetensors", + "model.layers.25.input_layernorm.weight": "model-00040-of-00094.safetensors", + "model.layers.25.post_attention_layernorm.weight": "model-00040-of-00094.safetensors", + "model.layers.25.self_attn.k_norm.weight": "model-00038-of-00094.safetensors", + "model.layers.25.self_attn.k_proj.weight": "model-00038-of-00094.safetensors", + "model.layers.25.self_attn.o_proj.weight": "model-00038-of-00094.safetensors", + "model.layers.25.self_attn.q_norm.weight": "model-00038-of-00094.safetensors", + "model.layers.25.self_attn.q_proj.weight": "model-00038-of-00094.safetensors", + "model.layers.25.self_attn.v_proj.weight": "model-00038-of-00094.safetensors", + "model.layers.26.block_sparse_moe.e_score_correction_bias": "model-00041-of-00094.safetensors", + "model.layers.26.block_sparse_moe.gate.weight": "model-00040-of-00094.safetensors", + "model.layers.26.block_sparse_moe.switch_mlp.down_proj.weight": "model-00041-of-00094.safetensors", + "model.layers.26.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00040-of-00094.safetensors", + "model.layers.26.block_sparse_moe.switch_mlp.up_proj.weight": "model-00041-of-00094.safetensors", + "model.layers.26.input_layernorm.weight": "model-00041-of-00094.safetensors", + "model.layers.26.post_attention_layernorm.weight": "model-00041-of-00094.safetensors", + "model.layers.26.self_attn.k_norm.weight": "model-00040-of-00094.safetensors", + "model.layers.26.self_attn.k_proj.weight": "model-00040-of-00094.safetensors", + "model.layers.26.self_attn.o_proj.weight": "model-00040-of-00094.safetensors", + "model.layers.26.self_attn.q_norm.weight": "model-00040-of-00094.safetensors", + "model.layers.26.self_attn.q_proj.weight": "model-00040-of-00094.safetensors", + "model.layers.26.self_attn.v_proj.weight": "model-00040-of-00094.safetensors", + "model.layers.27.block_sparse_moe.e_score_correction_bias": "model-00043-of-00094.safetensors", + "model.layers.27.block_sparse_moe.gate.weight": "model-00041-of-00094.safetensors", + "model.layers.27.block_sparse_moe.switch_mlp.down_proj.weight": "model-00043-of-00094.safetensors", + "model.layers.27.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00042-of-00094.safetensors", + "model.layers.27.block_sparse_moe.switch_mlp.up_proj.weight": "model-00042-of-00094.safetensors", + "model.layers.27.input_layernorm.weight": "model-00043-of-00094.safetensors", + "model.layers.27.post_attention_layernorm.weight": "model-00043-of-00094.safetensors", + "model.layers.27.self_attn.k_norm.weight": "model-00041-of-00094.safetensors", + "model.layers.27.self_attn.k_proj.weight": "model-00041-of-00094.safetensors", + "model.layers.27.self_attn.o_proj.weight": "model-00041-of-00094.safetensors", + "model.layers.27.self_attn.q_norm.weight": "model-00041-of-00094.safetensors", + "model.layers.27.self_attn.q_proj.weight": "model-00041-of-00094.safetensors", + "model.layers.27.self_attn.v_proj.weight": "model-00041-of-00094.safetensors", + "model.layers.28.block_sparse_moe.e_score_correction_bias": "model-00044-of-00094.safetensors", + "model.layers.28.block_sparse_moe.gate.weight": "model-00043-of-00094.safetensors", + "model.layers.28.block_sparse_moe.switch_mlp.down_proj.weight": "model-00044-of-00094.safetensors", + "model.layers.28.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00043-of-00094.safetensors", + "model.layers.28.block_sparse_moe.switch_mlp.up_proj.weight": "model-00044-of-00094.safetensors", + "model.layers.28.input_layernorm.weight": "model-00044-of-00094.safetensors", + "model.layers.28.post_attention_layernorm.weight": "model-00044-of-00094.safetensors", + "model.layers.28.self_attn.k_norm.weight": "model-00043-of-00094.safetensors", + "model.layers.28.self_attn.k_proj.weight": "model-00043-of-00094.safetensors", + "model.layers.28.self_attn.o_proj.weight": "model-00043-of-00094.safetensors", + "model.layers.28.self_attn.q_norm.weight": "model-00043-of-00094.safetensors", + "model.layers.28.self_attn.q_proj.weight": "model-00043-of-00094.safetensors", + "model.layers.28.self_attn.v_proj.weight": "model-00043-of-00094.safetensors", + "model.layers.29.block_sparse_moe.e_score_correction_bias": "model-00046-of-00094.safetensors", + "model.layers.29.block_sparse_moe.gate.weight": "model-00044-of-00094.safetensors", + "model.layers.29.block_sparse_moe.switch_mlp.down_proj.weight": "model-00046-of-00094.safetensors", + "model.layers.29.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00045-of-00094.safetensors", + "model.layers.29.block_sparse_moe.switch_mlp.up_proj.weight": "model-00045-of-00094.safetensors", + "model.layers.29.input_layernorm.weight": "model-00046-of-00094.safetensors", + "model.layers.29.post_attention_layernorm.weight": "model-00046-of-00094.safetensors", + "model.layers.29.self_attn.k_norm.weight": "model-00044-of-00094.safetensors", + "model.layers.29.self_attn.k_proj.weight": "model-00044-of-00094.safetensors", + "model.layers.29.self_attn.o_proj.weight": "model-00044-of-00094.safetensors", + "model.layers.29.self_attn.q_norm.weight": "model-00044-of-00094.safetensors", + "model.layers.29.self_attn.q_proj.weight": "model-00044-of-00094.safetensors", + "model.layers.29.self_attn.v_proj.weight": "model-00044-of-00094.safetensors", + "model.layers.3.block_sparse_moe.e_score_correction_bias": "model-00007-of-00094.safetensors", + "model.layers.3.block_sparse_moe.gate.weight": "model-00005-of-00094.safetensors", + "model.layers.3.block_sparse_moe.switch_mlp.down_proj.weight": "model-00007-of-00094.safetensors", + "model.layers.3.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00006-of-00094.safetensors", + "model.layers.3.block_sparse_moe.switch_mlp.up_proj.weight": "model-00006-of-00094.safetensors", + "model.layers.3.input_layernorm.weight": "model-00007-of-00094.safetensors", + "model.layers.3.post_attention_layernorm.weight": "model-00007-of-00094.safetensors", + "model.layers.3.self_attn.k_norm.weight": "model-00005-of-00094.safetensors", + "model.layers.3.self_attn.k_proj.weight": "model-00005-of-00094.safetensors", + "model.layers.3.self_attn.o_proj.weight": "model-00005-of-00094.safetensors", + "model.layers.3.self_attn.q_norm.weight": "model-00005-of-00094.safetensors", + "model.layers.3.self_attn.q_proj.weight": "model-00005-of-00094.safetensors", + "model.layers.3.self_attn.v_proj.weight": "model-00005-of-00094.safetensors", + "model.layers.30.block_sparse_moe.e_score_correction_bias": "model-00047-of-00094.safetensors", + "model.layers.30.block_sparse_moe.gate.weight": "model-00046-of-00094.safetensors", + "model.layers.30.block_sparse_moe.switch_mlp.down_proj.weight": "model-00047-of-00094.safetensors", + "model.layers.30.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00046-of-00094.safetensors", + "model.layers.30.block_sparse_moe.switch_mlp.up_proj.weight": "model-00047-of-00094.safetensors", + "model.layers.30.input_layernorm.weight": "model-00047-of-00094.safetensors", + "model.layers.30.post_attention_layernorm.weight": "model-00047-of-00094.safetensors", + "model.layers.30.self_attn.k_norm.weight": "model-00046-of-00094.safetensors", + "model.layers.30.self_attn.k_proj.weight": "model-00046-of-00094.safetensors", + "model.layers.30.self_attn.o_proj.weight": "model-00046-of-00094.safetensors", + "model.layers.30.self_attn.q_norm.weight": "model-00046-of-00094.safetensors", + "model.layers.30.self_attn.q_proj.weight": "model-00046-of-00094.safetensors", + "model.layers.30.self_attn.v_proj.weight": "model-00046-of-00094.safetensors", + "model.layers.31.block_sparse_moe.e_score_correction_bias": "model-00049-of-00094.safetensors", + "model.layers.31.block_sparse_moe.gate.weight": "model-00047-of-00094.safetensors", + "model.layers.31.block_sparse_moe.switch_mlp.down_proj.weight": "model-00049-of-00094.safetensors", + "model.layers.31.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00048-of-00094.safetensors", + "model.layers.31.block_sparse_moe.switch_mlp.up_proj.weight": "model-00048-of-00094.safetensors", + "model.layers.31.input_layernorm.weight": "model-00049-of-00094.safetensors", + "model.layers.31.post_attention_layernorm.weight": "model-00049-of-00094.safetensors", + "model.layers.31.self_attn.k_norm.weight": "model-00047-of-00094.safetensors", + "model.layers.31.self_attn.k_proj.weight": "model-00047-of-00094.safetensors", + "model.layers.31.self_attn.o_proj.weight": "model-00047-of-00094.safetensors", + "model.layers.31.self_attn.q_norm.weight": "model-00047-of-00094.safetensors", + "model.layers.31.self_attn.q_proj.weight": "model-00047-of-00094.safetensors", + "model.layers.31.self_attn.v_proj.weight": "model-00047-of-00094.safetensors", + "model.layers.32.block_sparse_moe.e_score_correction_bias": "model-00050-of-00094.safetensors", + "model.layers.32.block_sparse_moe.gate.weight": "model-00049-of-00094.safetensors", + "model.layers.32.block_sparse_moe.switch_mlp.down_proj.weight": "model-00050-of-00094.safetensors", + "model.layers.32.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00049-of-00094.safetensors", + "model.layers.32.block_sparse_moe.switch_mlp.up_proj.weight": "model-00050-of-00094.safetensors", + "model.layers.32.input_layernorm.weight": "model-00050-of-00094.safetensors", + "model.layers.32.post_attention_layernorm.weight": "model-00050-of-00094.safetensors", + "model.layers.32.self_attn.k_norm.weight": "model-00049-of-00094.safetensors", + "model.layers.32.self_attn.k_proj.weight": "model-00049-of-00094.safetensors", + "model.layers.32.self_attn.o_proj.weight": "model-00049-of-00094.safetensors", + "model.layers.32.self_attn.q_norm.weight": "model-00049-of-00094.safetensors", + "model.layers.32.self_attn.q_proj.weight": "model-00049-of-00094.safetensors", + "model.layers.32.self_attn.v_proj.weight": "model-00049-of-00094.safetensors", + "model.layers.33.block_sparse_moe.e_score_correction_bias": "model-00052-of-00094.safetensors", + "model.layers.33.block_sparse_moe.gate.weight": "model-00050-of-00094.safetensors", + "model.layers.33.block_sparse_moe.switch_mlp.down_proj.weight": "model-00052-of-00094.safetensors", + "model.layers.33.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00051-of-00094.safetensors", + "model.layers.33.block_sparse_moe.switch_mlp.up_proj.weight": "model-00051-of-00094.safetensors", + "model.layers.33.input_layernorm.weight": "model-00052-of-00094.safetensors", + "model.layers.33.post_attention_layernorm.weight": "model-00052-of-00094.safetensors", + "model.layers.33.self_attn.k_norm.weight": "model-00050-of-00094.safetensors", + "model.layers.33.self_attn.k_proj.weight": "model-00050-of-00094.safetensors", + "model.layers.33.self_attn.o_proj.weight": "model-00050-of-00094.safetensors", + "model.layers.33.self_attn.q_norm.weight": "model-00050-of-00094.safetensors", + "model.layers.33.self_attn.q_proj.weight": "model-00050-of-00094.safetensors", + "model.layers.33.self_attn.v_proj.weight": "model-00050-of-00094.safetensors", + "model.layers.34.block_sparse_moe.e_score_correction_bias": "model-00053-of-00094.safetensors", + "model.layers.34.block_sparse_moe.gate.weight": "model-00052-of-00094.safetensors", + "model.layers.34.block_sparse_moe.switch_mlp.down_proj.weight": "model-00053-of-00094.safetensors", + "model.layers.34.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00052-of-00094.safetensors", + "model.layers.34.block_sparse_moe.switch_mlp.up_proj.weight": "model-00053-of-00094.safetensors", + "model.layers.34.input_layernorm.weight": "model-00053-of-00094.safetensors", + "model.layers.34.post_attention_layernorm.weight": "model-00053-of-00094.safetensors", + "model.layers.34.self_attn.k_norm.weight": "model-00052-of-00094.safetensors", + "model.layers.34.self_attn.k_proj.weight": "model-00052-of-00094.safetensors", + "model.layers.34.self_attn.o_proj.weight": "model-00052-of-00094.safetensors", + "model.layers.34.self_attn.q_norm.weight": "model-00052-of-00094.safetensors", + "model.layers.34.self_attn.q_proj.weight": "model-00052-of-00094.safetensors", + "model.layers.34.self_attn.v_proj.weight": "model-00052-of-00094.safetensors", + "model.layers.35.block_sparse_moe.e_score_correction_bias": "model-00055-of-00094.safetensors", + "model.layers.35.block_sparse_moe.gate.weight": "model-00053-of-00094.safetensors", + "model.layers.35.block_sparse_moe.switch_mlp.down_proj.weight": "model-00055-of-00094.safetensors", + "model.layers.35.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00054-of-00094.safetensors", + "model.layers.35.block_sparse_moe.switch_mlp.up_proj.weight": "model-00054-of-00094.safetensors", + "model.layers.35.input_layernorm.weight": "model-00055-of-00094.safetensors", + "model.layers.35.post_attention_layernorm.weight": "model-00055-of-00094.safetensors", + "model.layers.35.self_attn.k_norm.weight": "model-00053-of-00094.safetensors", + "model.layers.35.self_attn.k_proj.weight": "model-00053-of-00094.safetensors", + "model.layers.35.self_attn.o_proj.weight": "model-00053-of-00094.safetensors", + "model.layers.35.self_attn.q_norm.weight": "model-00053-of-00094.safetensors", + "model.layers.35.self_attn.q_proj.weight": "model-00053-of-00094.safetensors", + "model.layers.35.self_attn.v_proj.weight": "model-00053-of-00094.safetensors", + "model.layers.36.block_sparse_moe.e_score_correction_bias": "model-00056-of-00094.safetensors", + "model.layers.36.block_sparse_moe.gate.weight": "model-00055-of-00094.safetensors", + "model.layers.36.block_sparse_moe.switch_mlp.down_proj.weight": "model-00056-of-00094.safetensors", + "model.layers.36.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00055-of-00094.safetensors", + "model.layers.36.block_sparse_moe.switch_mlp.up_proj.weight": "model-00056-of-00094.safetensors", + "model.layers.36.input_layernorm.weight": "model-00056-of-00094.safetensors", + "model.layers.36.post_attention_layernorm.weight": "model-00056-of-00094.safetensors", + "model.layers.36.self_attn.k_norm.weight": "model-00055-of-00094.safetensors", + "model.layers.36.self_attn.k_proj.weight": "model-00055-of-00094.safetensors", + "model.layers.36.self_attn.o_proj.weight": "model-00055-of-00094.safetensors", + "model.layers.36.self_attn.q_norm.weight": "model-00055-of-00094.safetensors", + "model.layers.36.self_attn.q_proj.weight": "model-00055-of-00094.safetensors", + "model.layers.36.self_attn.v_proj.weight": "model-00055-of-00094.safetensors", + "model.layers.37.block_sparse_moe.e_score_correction_bias": "model-00058-of-00094.safetensors", + "model.layers.37.block_sparse_moe.gate.weight": "model-00056-of-00094.safetensors", + "model.layers.37.block_sparse_moe.switch_mlp.down_proj.weight": "model-00058-of-00094.safetensors", + "model.layers.37.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00057-of-00094.safetensors", + "model.layers.37.block_sparse_moe.switch_mlp.up_proj.weight": "model-00057-of-00094.safetensors", + "model.layers.37.input_layernorm.weight": "model-00058-of-00094.safetensors", + "model.layers.37.post_attention_layernorm.weight": "model-00058-of-00094.safetensors", + "model.layers.37.self_attn.k_norm.weight": "model-00056-of-00094.safetensors", + "model.layers.37.self_attn.k_proj.weight": "model-00056-of-00094.safetensors", + "model.layers.37.self_attn.o_proj.weight": "model-00056-of-00094.safetensors", + "model.layers.37.self_attn.q_norm.weight": "model-00056-of-00094.safetensors", + "model.layers.37.self_attn.q_proj.weight": "model-00056-of-00094.safetensors", + "model.layers.37.self_attn.v_proj.weight": "model-00056-of-00094.safetensors", + "model.layers.38.block_sparse_moe.e_score_correction_bias": "model-00059-of-00094.safetensors", + "model.layers.38.block_sparse_moe.gate.weight": "model-00058-of-00094.safetensors", + "model.layers.38.block_sparse_moe.switch_mlp.down_proj.weight": "model-00059-of-00094.safetensors", + "model.layers.38.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00058-of-00094.safetensors", + "model.layers.38.block_sparse_moe.switch_mlp.up_proj.weight": "model-00059-of-00094.safetensors", + "model.layers.38.input_layernorm.weight": "model-00059-of-00094.safetensors", + "model.layers.38.post_attention_layernorm.weight": "model-00059-of-00094.safetensors", + "model.layers.38.self_attn.k_norm.weight": "model-00058-of-00094.safetensors", + "model.layers.38.self_attn.k_proj.weight": "model-00058-of-00094.safetensors", + "model.layers.38.self_attn.o_proj.weight": "model-00058-of-00094.safetensors", + "model.layers.38.self_attn.q_norm.weight": "model-00058-of-00094.safetensors", + "model.layers.38.self_attn.q_proj.weight": "model-00058-of-00094.safetensors", + "model.layers.38.self_attn.v_proj.weight": "model-00058-of-00094.safetensors", + "model.layers.39.block_sparse_moe.e_score_correction_bias": "model-00061-of-00094.safetensors", + "model.layers.39.block_sparse_moe.gate.weight": "model-00059-of-00094.safetensors", + "model.layers.39.block_sparse_moe.switch_mlp.down_proj.weight": "model-00061-of-00094.safetensors", + "model.layers.39.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00060-of-00094.safetensors", + "model.layers.39.block_sparse_moe.switch_mlp.up_proj.weight": "model-00060-of-00094.safetensors", + "model.layers.39.input_layernorm.weight": "model-00061-of-00094.safetensors", + "model.layers.39.post_attention_layernorm.weight": "model-00061-of-00094.safetensors", + "model.layers.39.self_attn.k_norm.weight": "model-00059-of-00094.safetensors", + "model.layers.39.self_attn.k_proj.weight": "model-00059-of-00094.safetensors", + "model.layers.39.self_attn.o_proj.weight": "model-00059-of-00094.safetensors", + "model.layers.39.self_attn.q_norm.weight": "model-00059-of-00094.safetensors", + "model.layers.39.self_attn.q_proj.weight": "model-00059-of-00094.safetensors", + "model.layers.39.self_attn.v_proj.weight": "model-00059-of-00094.safetensors", + "model.layers.4.block_sparse_moe.e_score_correction_bias": "model-00008-of-00094.safetensors", + "model.layers.4.block_sparse_moe.gate.weight": "model-00007-of-00094.safetensors", + "model.layers.4.block_sparse_moe.switch_mlp.down_proj.weight": "model-00008-of-00094.safetensors", + "model.layers.4.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00007-of-00094.safetensors", + "model.layers.4.block_sparse_moe.switch_mlp.up_proj.weight": "model-00008-of-00094.safetensors", + "model.layers.4.input_layernorm.weight": "model-00008-of-00094.safetensors", + "model.layers.4.post_attention_layernorm.weight": "model-00008-of-00094.safetensors", + "model.layers.4.self_attn.k_norm.weight": "model-00007-of-00094.safetensors", + "model.layers.4.self_attn.k_proj.weight": "model-00007-of-00094.safetensors", + "model.layers.4.self_attn.o_proj.weight": "model-00007-of-00094.safetensors", + "model.layers.4.self_attn.q_norm.weight": "model-00007-of-00094.safetensors", + "model.layers.4.self_attn.q_proj.weight": "model-00007-of-00094.safetensors", + "model.layers.4.self_attn.v_proj.weight": "model-00007-of-00094.safetensors", + "model.layers.40.block_sparse_moe.e_score_correction_bias": "model-00062-of-00094.safetensors", + "model.layers.40.block_sparse_moe.gate.weight": "model-00061-of-00094.safetensors", + "model.layers.40.block_sparse_moe.switch_mlp.down_proj.weight": "model-00062-of-00094.safetensors", + "model.layers.40.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00061-of-00094.safetensors", + "model.layers.40.block_sparse_moe.switch_mlp.up_proj.weight": "model-00062-of-00094.safetensors", + "model.layers.40.input_layernorm.weight": "model-00062-of-00094.safetensors", + "model.layers.40.post_attention_layernorm.weight": "model-00062-of-00094.safetensors", + "model.layers.40.self_attn.k_norm.weight": "model-00061-of-00094.safetensors", + "model.layers.40.self_attn.k_proj.weight": "model-00061-of-00094.safetensors", + "model.layers.40.self_attn.o_proj.weight": "model-00061-of-00094.safetensors", + "model.layers.40.self_attn.q_norm.weight": "model-00061-of-00094.safetensors", + "model.layers.40.self_attn.q_proj.weight": "model-00061-of-00094.safetensors", + "model.layers.40.self_attn.v_proj.weight": "model-00061-of-00094.safetensors", + "model.layers.41.block_sparse_moe.e_score_correction_bias": "model-00064-of-00094.safetensors", + "model.layers.41.block_sparse_moe.gate.weight": "model-00062-of-00094.safetensors", + "model.layers.41.block_sparse_moe.switch_mlp.down_proj.weight": "model-00064-of-00094.safetensors", + "model.layers.41.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00063-of-00094.safetensors", + "model.layers.41.block_sparse_moe.switch_mlp.up_proj.weight": "model-00063-of-00094.safetensors", + "model.layers.41.input_layernorm.weight": "model-00064-of-00094.safetensors", + "model.layers.41.post_attention_layernorm.weight": "model-00064-of-00094.safetensors", + "model.layers.41.self_attn.k_norm.weight": "model-00062-of-00094.safetensors", + "model.layers.41.self_attn.k_proj.weight": "model-00062-of-00094.safetensors", + "model.layers.41.self_attn.o_proj.weight": "model-00062-of-00094.safetensors", + "model.layers.41.self_attn.q_norm.weight": "model-00062-of-00094.safetensors", + "model.layers.41.self_attn.q_proj.weight": "model-00062-of-00094.safetensors", + "model.layers.41.self_attn.v_proj.weight": "model-00062-of-00094.safetensors", + "model.layers.42.block_sparse_moe.e_score_correction_bias": "model-00065-of-00094.safetensors", + "model.layers.42.block_sparse_moe.gate.weight": "model-00064-of-00094.safetensors", + "model.layers.42.block_sparse_moe.switch_mlp.down_proj.weight": "model-00065-of-00094.safetensors", + "model.layers.42.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00064-of-00094.safetensors", + "model.layers.42.block_sparse_moe.switch_mlp.up_proj.weight": "model-00065-of-00094.safetensors", + "model.layers.42.input_layernorm.weight": "model-00065-of-00094.safetensors", + "model.layers.42.post_attention_layernorm.weight": "model-00065-of-00094.safetensors", + "model.layers.42.self_attn.k_norm.weight": "model-00064-of-00094.safetensors", + "model.layers.42.self_attn.k_proj.weight": "model-00064-of-00094.safetensors", + "model.layers.42.self_attn.o_proj.weight": "model-00064-of-00094.safetensors", + "model.layers.42.self_attn.q_norm.weight": "model-00064-of-00094.safetensors", + "model.layers.42.self_attn.q_proj.weight": "model-00064-of-00094.safetensors", + "model.layers.42.self_attn.v_proj.weight": "model-00064-of-00094.safetensors", + "model.layers.43.block_sparse_moe.e_score_correction_bias": "model-00067-of-00094.safetensors", + "model.layers.43.block_sparse_moe.gate.weight": "model-00065-of-00094.safetensors", + "model.layers.43.block_sparse_moe.switch_mlp.down_proj.weight": "model-00067-of-00094.safetensors", + "model.layers.43.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00066-of-00094.safetensors", + "model.layers.43.block_sparse_moe.switch_mlp.up_proj.weight": "model-00066-of-00094.safetensors", + "model.layers.43.input_layernorm.weight": "model-00067-of-00094.safetensors", + "model.layers.43.post_attention_layernorm.weight": "model-00067-of-00094.safetensors", + "model.layers.43.self_attn.k_norm.weight": "model-00065-of-00094.safetensors", + "model.layers.43.self_attn.k_proj.weight": "model-00065-of-00094.safetensors", + "model.layers.43.self_attn.o_proj.weight": "model-00065-of-00094.safetensors", + "model.layers.43.self_attn.q_norm.weight": "model-00065-of-00094.safetensors", + "model.layers.43.self_attn.q_proj.weight": "model-00065-of-00094.safetensors", + "model.layers.43.self_attn.v_proj.weight": "model-00065-of-00094.safetensors", + "model.layers.44.block_sparse_moe.e_score_correction_bias": "model-00068-of-00094.safetensors", + "model.layers.44.block_sparse_moe.gate.weight": "model-00067-of-00094.safetensors", + "model.layers.44.block_sparse_moe.switch_mlp.down_proj.weight": "model-00068-of-00094.safetensors", + "model.layers.44.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00067-of-00094.safetensors", + "model.layers.44.block_sparse_moe.switch_mlp.up_proj.weight": "model-00068-of-00094.safetensors", + "model.layers.44.input_layernorm.weight": "model-00068-of-00094.safetensors", + "model.layers.44.post_attention_layernorm.weight": "model-00068-of-00094.safetensors", + "model.layers.44.self_attn.k_norm.weight": "model-00067-of-00094.safetensors", + "model.layers.44.self_attn.k_proj.weight": "model-00067-of-00094.safetensors", + "model.layers.44.self_attn.o_proj.weight": "model-00067-of-00094.safetensors", + "model.layers.44.self_attn.q_norm.weight": "model-00067-of-00094.safetensors", + "model.layers.44.self_attn.q_proj.weight": "model-00067-of-00094.safetensors", + "model.layers.44.self_attn.v_proj.weight": "model-00067-of-00094.safetensors", + "model.layers.45.block_sparse_moe.e_score_correction_bias": "model-00070-of-00094.safetensors", + "model.layers.45.block_sparse_moe.gate.weight": "model-00068-of-00094.safetensors", + "model.layers.45.block_sparse_moe.switch_mlp.down_proj.weight": "model-00070-of-00094.safetensors", + "model.layers.45.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00069-of-00094.safetensors", + "model.layers.45.block_sparse_moe.switch_mlp.up_proj.weight": "model-00069-of-00094.safetensors", + "model.layers.45.input_layernorm.weight": "model-00070-of-00094.safetensors", + "model.layers.45.post_attention_layernorm.weight": "model-00070-of-00094.safetensors", + "model.layers.45.self_attn.k_norm.weight": "model-00068-of-00094.safetensors", + "model.layers.45.self_attn.k_proj.weight": "model-00068-of-00094.safetensors", + "model.layers.45.self_attn.o_proj.weight": "model-00068-of-00094.safetensors", + "model.layers.45.self_attn.q_norm.weight": "model-00068-of-00094.safetensors", + "model.layers.45.self_attn.q_proj.weight": "model-00068-of-00094.safetensors", + "model.layers.45.self_attn.v_proj.weight": "model-00068-of-00094.safetensors", + "model.layers.46.block_sparse_moe.e_score_correction_bias": "model-00071-of-00094.safetensors", + "model.layers.46.block_sparse_moe.gate.weight": "model-00070-of-00094.safetensors", + "model.layers.46.block_sparse_moe.switch_mlp.down_proj.weight": "model-00071-of-00094.safetensors", + "model.layers.46.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00070-of-00094.safetensors", + "model.layers.46.block_sparse_moe.switch_mlp.up_proj.weight": "model-00071-of-00094.safetensors", + "model.layers.46.input_layernorm.weight": "model-00071-of-00094.safetensors", + "model.layers.46.post_attention_layernorm.weight": "model-00071-of-00094.safetensors", + "model.layers.46.self_attn.k_norm.weight": "model-00070-of-00094.safetensors", + "model.layers.46.self_attn.k_proj.weight": "model-00070-of-00094.safetensors", + "model.layers.46.self_attn.o_proj.weight": "model-00070-of-00094.safetensors", + "model.layers.46.self_attn.q_norm.weight": "model-00070-of-00094.safetensors", + "model.layers.46.self_attn.q_proj.weight": "model-00070-of-00094.safetensors", + "model.layers.46.self_attn.v_proj.weight": "model-00070-of-00094.safetensors", + "model.layers.47.block_sparse_moe.e_score_correction_bias": "model-00073-of-00094.safetensors", + "model.layers.47.block_sparse_moe.gate.weight": "model-00071-of-00094.safetensors", + "model.layers.47.block_sparse_moe.switch_mlp.down_proj.weight": "model-00073-of-00094.safetensors", + "model.layers.47.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00072-of-00094.safetensors", + "model.layers.47.block_sparse_moe.switch_mlp.up_proj.weight": "model-00072-of-00094.safetensors", + "model.layers.47.input_layernorm.weight": "model-00073-of-00094.safetensors", + "model.layers.47.post_attention_layernorm.weight": "model-00073-of-00094.safetensors", + "model.layers.47.self_attn.k_norm.weight": "model-00071-of-00094.safetensors", + "model.layers.47.self_attn.k_proj.weight": "model-00071-of-00094.safetensors", + "model.layers.47.self_attn.o_proj.weight": "model-00071-of-00094.safetensors", + "model.layers.47.self_attn.q_norm.weight": "model-00071-of-00094.safetensors", + "model.layers.47.self_attn.q_proj.weight": "model-00071-of-00094.safetensors", + "model.layers.47.self_attn.v_proj.weight": "model-00071-of-00094.safetensors", + "model.layers.48.block_sparse_moe.e_score_correction_bias": "model-00074-of-00094.safetensors", + "model.layers.48.block_sparse_moe.gate.weight": "model-00073-of-00094.safetensors", + "model.layers.48.block_sparse_moe.switch_mlp.down_proj.weight": "model-00074-of-00094.safetensors", + "model.layers.48.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00073-of-00094.safetensors", + "model.layers.48.block_sparse_moe.switch_mlp.up_proj.weight": "model-00074-of-00094.safetensors", + "model.layers.48.input_layernorm.weight": "model-00074-of-00094.safetensors", + "model.layers.48.post_attention_layernorm.weight": "model-00074-of-00094.safetensors", + "model.layers.48.self_attn.k_norm.weight": "model-00073-of-00094.safetensors", + "model.layers.48.self_attn.k_proj.weight": "model-00073-of-00094.safetensors", + "model.layers.48.self_attn.o_proj.weight": "model-00073-of-00094.safetensors", + "model.layers.48.self_attn.q_norm.weight": "model-00073-of-00094.safetensors", + "model.layers.48.self_attn.q_proj.weight": "model-00073-of-00094.safetensors", + "model.layers.48.self_attn.v_proj.weight": "model-00073-of-00094.safetensors", + "model.layers.49.block_sparse_moe.e_score_correction_bias": "model-00076-of-00094.safetensors", + "model.layers.49.block_sparse_moe.gate.weight": "model-00074-of-00094.safetensors", + "model.layers.49.block_sparse_moe.switch_mlp.down_proj.weight": "model-00076-of-00094.safetensors", + "model.layers.49.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00075-of-00094.safetensors", + "model.layers.49.block_sparse_moe.switch_mlp.up_proj.weight": "model-00075-of-00094.safetensors", + "model.layers.49.input_layernorm.weight": "model-00076-of-00094.safetensors", + "model.layers.49.post_attention_layernorm.weight": "model-00076-of-00094.safetensors", + "model.layers.49.self_attn.k_norm.weight": "model-00074-of-00094.safetensors", + "model.layers.49.self_attn.k_proj.weight": "model-00074-of-00094.safetensors", + "model.layers.49.self_attn.o_proj.weight": "model-00074-of-00094.safetensors", + "model.layers.49.self_attn.q_norm.weight": "model-00074-of-00094.safetensors", + "model.layers.49.self_attn.q_proj.weight": "model-00074-of-00094.safetensors", + "model.layers.49.self_attn.v_proj.weight": "model-00074-of-00094.safetensors", + "model.layers.5.block_sparse_moe.e_score_correction_bias": "model-00010-of-00094.safetensors", + "model.layers.5.block_sparse_moe.gate.weight": "model-00008-of-00094.safetensors", + "model.layers.5.block_sparse_moe.switch_mlp.down_proj.weight": "model-00010-of-00094.safetensors", + "model.layers.5.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00009-of-00094.safetensors", + "model.layers.5.block_sparse_moe.switch_mlp.up_proj.weight": "model-00009-of-00094.safetensors", + "model.layers.5.input_layernorm.weight": "model-00010-of-00094.safetensors", + "model.layers.5.post_attention_layernorm.weight": "model-00010-of-00094.safetensors", + "model.layers.5.self_attn.k_norm.weight": "model-00008-of-00094.safetensors", + "model.layers.5.self_attn.k_proj.weight": "model-00008-of-00094.safetensors", + "model.layers.5.self_attn.o_proj.weight": "model-00008-of-00094.safetensors", + "model.layers.5.self_attn.q_norm.weight": "model-00008-of-00094.safetensors", + "model.layers.5.self_attn.q_proj.weight": "model-00008-of-00094.safetensors", + "model.layers.5.self_attn.v_proj.weight": "model-00008-of-00094.safetensors", + "model.layers.50.block_sparse_moe.e_score_correction_bias": "model-00077-of-00094.safetensors", + "model.layers.50.block_sparse_moe.gate.weight": "model-00076-of-00094.safetensors", + "model.layers.50.block_sparse_moe.switch_mlp.down_proj.weight": "model-00077-of-00094.safetensors", + "model.layers.50.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00076-of-00094.safetensors", + "model.layers.50.block_sparse_moe.switch_mlp.up_proj.weight": "model-00077-of-00094.safetensors", + "model.layers.50.input_layernorm.weight": "model-00077-of-00094.safetensors", + "model.layers.50.post_attention_layernorm.weight": "model-00077-of-00094.safetensors", + "model.layers.50.self_attn.k_norm.weight": "model-00076-of-00094.safetensors", + "model.layers.50.self_attn.k_proj.weight": "model-00076-of-00094.safetensors", + "model.layers.50.self_attn.o_proj.weight": "model-00076-of-00094.safetensors", + "model.layers.50.self_attn.q_norm.weight": "model-00076-of-00094.safetensors", + "model.layers.50.self_attn.q_proj.weight": "model-00076-of-00094.safetensors", + "model.layers.50.self_attn.v_proj.weight": "model-00076-of-00094.safetensors", + "model.layers.51.block_sparse_moe.e_score_correction_bias": "model-00079-of-00094.safetensors", + "model.layers.51.block_sparse_moe.gate.weight": "model-00077-of-00094.safetensors", + "model.layers.51.block_sparse_moe.switch_mlp.down_proj.weight": "model-00079-of-00094.safetensors", + "model.layers.51.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00078-of-00094.safetensors", + "model.layers.51.block_sparse_moe.switch_mlp.up_proj.weight": "model-00078-of-00094.safetensors", + "model.layers.51.input_layernorm.weight": "model-00079-of-00094.safetensors", + "model.layers.51.post_attention_layernorm.weight": "model-00079-of-00094.safetensors", + "model.layers.51.self_attn.k_norm.weight": "model-00077-of-00094.safetensors", + "model.layers.51.self_attn.k_proj.weight": "model-00077-of-00094.safetensors", + "model.layers.51.self_attn.o_proj.weight": "model-00077-of-00094.safetensors", + "model.layers.51.self_attn.q_norm.weight": "model-00077-of-00094.safetensors", + "model.layers.51.self_attn.q_proj.weight": "model-00077-of-00094.safetensors", + "model.layers.51.self_attn.v_proj.weight": "model-00077-of-00094.safetensors", + "model.layers.52.block_sparse_moe.e_score_correction_bias": "model-00080-of-00094.safetensors", + "model.layers.52.block_sparse_moe.gate.weight": "model-00079-of-00094.safetensors", + "model.layers.52.block_sparse_moe.switch_mlp.down_proj.weight": "model-00080-of-00094.safetensors", + "model.layers.52.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00079-of-00094.safetensors", + "model.layers.52.block_sparse_moe.switch_mlp.up_proj.weight": "model-00080-of-00094.safetensors", + "model.layers.52.input_layernorm.weight": "model-00080-of-00094.safetensors", + "model.layers.52.post_attention_layernorm.weight": "model-00080-of-00094.safetensors", + "model.layers.52.self_attn.k_norm.weight": "model-00079-of-00094.safetensors", + "model.layers.52.self_attn.k_proj.weight": "model-00079-of-00094.safetensors", + "model.layers.52.self_attn.o_proj.weight": "model-00079-of-00094.safetensors", + "model.layers.52.self_attn.q_norm.weight": "model-00079-of-00094.safetensors", + "model.layers.52.self_attn.q_proj.weight": "model-00079-of-00094.safetensors", + "model.layers.52.self_attn.v_proj.weight": "model-00079-of-00094.safetensors", + "model.layers.53.block_sparse_moe.e_score_correction_bias": "model-00082-of-00094.safetensors", + "model.layers.53.block_sparse_moe.gate.weight": "model-00080-of-00094.safetensors", + "model.layers.53.block_sparse_moe.switch_mlp.down_proj.weight": "model-00082-of-00094.safetensors", + "model.layers.53.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00081-of-00094.safetensors", + "model.layers.53.block_sparse_moe.switch_mlp.up_proj.weight": "model-00081-of-00094.safetensors", + "model.layers.53.input_layernorm.weight": "model-00082-of-00094.safetensors", + "model.layers.53.post_attention_layernorm.weight": "model-00082-of-00094.safetensors", + "model.layers.53.self_attn.k_norm.weight": "model-00080-of-00094.safetensors", + "model.layers.53.self_attn.k_proj.weight": "model-00080-of-00094.safetensors", + "model.layers.53.self_attn.o_proj.weight": "model-00080-of-00094.safetensors", + "model.layers.53.self_attn.q_norm.weight": "model-00080-of-00094.safetensors", + "model.layers.53.self_attn.q_proj.weight": "model-00080-of-00094.safetensors", + "model.layers.53.self_attn.v_proj.weight": "model-00080-of-00094.safetensors", + "model.layers.54.block_sparse_moe.e_score_correction_bias": "model-00083-of-00094.safetensors", + "model.layers.54.block_sparse_moe.gate.weight": "model-00082-of-00094.safetensors", + "model.layers.54.block_sparse_moe.switch_mlp.down_proj.weight": "model-00083-of-00094.safetensors", + "model.layers.54.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00082-of-00094.safetensors", + "model.layers.54.block_sparse_moe.switch_mlp.up_proj.weight": "model-00083-of-00094.safetensors", + "model.layers.54.input_layernorm.weight": "model-00083-of-00094.safetensors", + "model.layers.54.post_attention_layernorm.weight": "model-00083-of-00094.safetensors", + "model.layers.54.self_attn.k_norm.weight": "model-00082-of-00094.safetensors", + "model.layers.54.self_attn.k_proj.weight": "model-00082-of-00094.safetensors", + "model.layers.54.self_attn.o_proj.weight": "model-00082-of-00094.safetensors", + "model.layers.54.self_attn.q_norm.weight": "model-00082-of-00094.safetensors", + "model.layers.54.self_attn.q_proj.weight": "model-00082-of-00094.safetensors", + "model.layers.54.self_attn.v_proj.weight": "model-00082-of-00094.safetensors", + "model.layers.55.block_sparse_moe.e_score_correction_bias": "model-00085-of-00094.safetensors", + "model.layers.55.block_sparse_moe.gate.weight": "model-00083-of-00094.safetensors", + "model.layers.55.block_sparse_moe.switch_mlp.down_proj.weight": "model-00085-of-00094.safetensors", + "model.layers.55.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00084-of-00094.safetensors", + "model.layers.55.block_sparse_moe.switch_mlp.up_proj.weight": "model-00084-of-00094.safetensors", + "model.layers.55.input_layernorm.weight": "model-00085-of-00094.safetensors", + "model.layers.55.post_attention_layernorm.weight": "model-00085-of-00094.safetensors", + "model.layers.55.self_attn.k_norm.weight": "model-00083-of-00094.safetensors", + "model.layers.55.self_attn.k_proj.weight": "model-00083-of-00094.safetensors", + "model.layers.55.self_attn.o_proj.weight": "model-00083-of-00094.safetensors", + "model.layers.55.self_attn.q_norm.weight": "model-00083-of-00094.safetensors", + "model.layers.55.self_attn.q_proj.weight": "model-00083-of-00094.safetensors", + "model.layers.55.self_attn.v_proj.weight": "model-00083-of-00094.safetensors", + "model.layers.56.block_sparse_moe.e_score_correction_bias": "model-00086-of-00094.safetensors", + "model.layers.56.block_sparse_moe.gate.weight": "model-00085-of-00094.safetensors", + "model.layers.56.block_sparse_moe.switch_mlp.down_proj.weight": "model-00086-of-00094.safetensors", + "model.layers.56.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00085-of-00094.safetensors", + "model.layers.56.block_sparse_moe.switch_mlp.up_proj.weight": "model-00086-of-00094.safetensors", + "model.layers.56.input_layernorm.weight": "model-00086-of-00094.safetensors", + "model.layers.56.post_attention_layernorm.weight": "model-00086-of-00094.safetensors", + "model.layers.56.self_attn.k_norm.weight": "model-00085-of-00094.safetensors", + "model.layers.56.self_attn.k_proj.weight": "model-00085-of-00094.safetensors", + "model.layers.56.self_attn.o_proj.weight": "model-00085-of-00094.safetensors", + "model.layers.56.self_attn.q_norm.weight": "model-00085-of-00094.safetensors", + "model.layers.56.self_attn.q_proj.weight": "model-00085-of-00094.safetensors", + "model.layers.56.self_attn.v_proj.weight": "model-00085-of-00094.safetensors", + "model.layers.57.block_sparse_moe.e_score_correction_bias": "model-00088-of-00094.safetensors", + "model.layers.57.block_sparse_moe.gate.weight": "model-00086-of-00094.safetensors", + "model.layers.57.block_sparse_moe.switch_mlp.down_proj.weight": "model-00088-of-00094.safetensors", + "model.layers.57.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00087-of-00094.safetensors", + "model.layers.57.block_sparse_moe.switch_mlp.up_proj.weight": "model-00087-of-00094.safetensors", + "model.layers.57.input_layernorm.weight": "model-00088-of-00094.safetensors", + "model.layers.57.post_attention_layernorm.weight": "model-00088-of-00094.safetensors", + "model.layers.57.self_attn.k_norm.weight": "model-00086-of-00094.safetensors", + "model.layers.57.self_attn.k_proj.weight": "model-00086-of-00094.safetensors", + "model.layers.57.self_attn.o_proj.weight": "model-00086-of-00094.safetensors", + "model.layers.57.self_attn.q_norm.weight": "model-00086-of-00094.safetensors", + "model.layers.57.self_attn.q_proj.weight": "model-00086-of-00094.safetensors", + "model.layers.57.self_attn.v_proj.weight": "model-00086-of-00094.safetensors", + "model.layers.58.block_sparse_moe.e_score_correction_bias": "model-00089-of-00094.safetensors", + "model.layers.58.block_sparse_moe.gate.weight": "model-00088-of-00094.safetensors", + "model.layers.58.block_sparse_moe.switch_mlp.down_proj.weight": "model-00089-of-00094.safetensors", + "model.layers.58.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00088-of-00094.safetensors", + "model.layers.58.block_sparse_moe.switch_mlp.up_proj.weight": "model-00089-of-00094.safetensors", + "model.layers.58.input_layernorm.weight": "model-00089-of-00094.safetensors", + "model.layers.58.post_attention_layernorm.weight": "model-00089-of-00094.safetensors", + "model.layers.58.self_attn.k_norm.weight": "model-00088-of-00094.safetensors", + "model.layers.58.self_attn.k_proj.weight": "model-00088-of-00094.safetensors", + "model.layers.58.self_attn.o_proj.weight": "model-00088-of-00094.safetensors", + "model.layers.58.self_attn.q_norm.weight": "model-00088-of-00094.safetensors", + "model.layers.58.self_attn.q_proj.weight": "model-00088-of-00094.safetensors", + "model.layers.58.self_attn.v_proj.weight": "model-00088-of-00094.safetensors", + "model.layers.59.block_sparse_moe.e_score_correction_bias": "model-00091-of-00094.safetensors", + "model.layers.59.block_sparse_moe.gate.weight": "model-00089-of-00094.safetensors", + "model.layers.59.block_sparse_moe.switch_mlp.down_proj.weight": "model-00091-of-00094.safetensors", + "model.layers.59.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00090-of-00094.safetensors", + "model.layers.59.block_sparse_moe.switch_mlp.up_proj.weight": "model-00090-of-00094.safetensors", + "model.layers.59.input_layernorm.weight": "model-00091-of-00094.safetensors", + "model.layers.59.post_attention_layernorm.weight": "model-00091-of-00094.safetensors", + "model.layers.59.self_attn.k_norm.weight": "model-00089-of-00094.safetensors", + "model.layers.59.self_attn.k_proj.weight": "model-00089-of-00094.safetensors", + "model.layers.59.self_attn.o_proj.weight": "model-00089-of-00094.safetensors", + "model.layers.59.self_attn.q_norm.weight": "model-00089-of-00094.safetensors", + "model.layers.59.self_attn.q_proj.weight": "model-00089-of-00094.safetensors", + "model.layers.59.self_attn.v_proj.weight": "model-00089-of-00094.safetensors", + "model.layers.6.block_sparse_moe.e_score_correction_bias": "model-00011-of-00094.safetensors", + "model.layers.6.block_sparse_moe.gate.weight": "model-00010-of-00094.safetensors", + "model.layers.6.block_sparse_moe.switch_mlp.down_proj.weight": "model-00011-of-00094.safetensors", + "model.layers.6.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00010-of-00094.safetensors", + "model.layers.6.block_sparse_moe.switch_mlp.up_proj.weight": "model-00011-of-00094.safetensors", + "model.layers.6.input_layernorm.weight": "model-00011-of-00094.safetensors", + "model.layers.6.post_attention_layernorm.weight": "model-00011-of-00094.safetensors", + "model.layers.6.self_attn.k_norm.weight": "model-00010-of-00094.safetensors", + "model.layers.6.self_attn.k_proj.weight": "model-00010-of-00094.safetensors", + "model.layers.6.self_attn.o_proj.weight": "model-00010-of-00094.safetensors", + "model.layers.6.self_attn.q_norm.weight": "model-00010-of-00094.safetensors", + "model.layers.6.self_attn.q_proj.weight": "model-00010-of-00094.safetensors", + "model.layers.6.self_attn.v_proj.weight": "model-00010-of-00094.safetensors", + "model.layers.60.block_sparse_moe.e_score_correction_bias": "model-00092-of-00094.safetensors", + "model.layers.60.block_sparse_moe.gate.weight": "model-00091-of-00094.safetensors", + "model.layers.60.block_sparse_moe.switch_mlp.down_proj.weight": "model-00092-of-00094.safetensors", + "model.layers.60.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00091-of-00094.safetensors", + "model.layers.60.block_sparse_moe.switch_mlp.up_proj.weight": "model-00092-of-00094.safetensors", + "model.layers.60.input_layernorm.weight": "model-00092-of-00094.safetensors", + "model.layers.60.post_attention_layernorm.weight": "model-00092-of-00094.safetensors", + "model.layers.60.self_attn.k_norm.weight": "model-00091-of-00094.safetensors", + "model.layers.60.self_attn.k_proj.weight": "model-00091-of-00094.safetensors", + "model.layers.60.self_attn.o_proj.weight": "model-00091-of-00094.safetensors", + "model.layers.60.self_attn.q_norm.weight": "model-00091-of-00094.safetensors", + "model.layers.60.self_attn.q_proj.weight": "model-00091-of-00094.safetensors", + "model.layers.60.self_attn.v_proj.weight": "model-00091-of-00094.safetensors", + "model.layers.61.block_sparse_moe.e_score_correction_bias": "model-00094-of-00094.safetensors", + "model.layers.61.block_sparse_moe.gate.weight": "model-00092-of-00094.safetensors", + "model.layers.61.block_sparse_moe.switch_mlp.down_proj.weight": "model-00094-of-00094.safetensors", + "model.layers.61.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00093-of-00094.safetensors", + "model.layers.61.block_sparse_moe.switch_mlp.up_proj.weight": "model-00093-of-00094.safetensors", + "model.layers.61.input_layernorm.weight": "model-00094-of-00094.safetensors", + "model.layers.61.post_attention_layernorm.weight": "model-00094-of-00094.safetensors", + "model.layers.61.self_attn.k_norm.weight": "model-00092-of-00094.safetensors", + "model.layers.61.self_attn.k_proj.weight": "model-00092-of-00094.safetensors", + "model.layers.61.self_attn.o_proj.weight": "model-00092-of-00094.safetensors", + "model.layers.61.self_attn.q_norm.weight": "model-00092-of-00094.safetensors", + "model.layers.61.self_attn.q_proj.weight": "model-00092-of-00094.safetensors", + "model.layers.61.self_attn.v_proj.weight": "model-00092-of-00094.safetensors", + "model.layers.7.block_sparse_moe.e_score_correction_bias": "model-00013-of-00094.safetensors", + "model.layers.7.block_sparse_moe.gate.weight": "model-00011-of-00094.safetensors", + "model.layers.7.block_sparse_moe.switch_mlp.down_proj.weight": "model-00013-of-00094.safetensors", + "model.layers.7.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00012-of-00094.safetensors", + "model.layers.7.block_sparse_moe.switch_mlp.up_proj.weight": "model-00012-of-00094.safetensors", + "model.layers.7.input_layernorm.weight": "model-00013-of-00094.safetensors", + "model.layers.7.post_attention_layernorm.weight": "model-00013-of-00094.safetensors", + "model.layers.7.self_attn.k_norm.weight": "model-00011-of-00094.safetensors", + "model.layers.7.self_attn.k_proj.weight": "model-00011-of-00094.safetensors", + "model.layers.7.self_attn.o_proj.weight": "model-00011-of-00094.safetensors", + "model.layers.7.self_attn.q_norm.weight": "model-00011-of-00094.safetensors", + "model.layers.7.self_attn.q_proj.weight": "model-00011-of-00094.safetensors", + "model.layers.7.self_attn.v_proj.weight": "model-00011-of-00094.safetensors", + "model.layers.8.block_sparse_moe.e_score_correction_bias": "model-00014-of-00094.safetensors", + "model.layers.8.block_sparse_moe.gate.weight": "model-00013-of-00094.safetensors", + "model.layers.8.block_sparse_moe.switch_mlp.down_proj.weight": "model-00014-of-00094.safetensors", + "model.layers.8.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00013-of-00094.safetensors", + "model.layers.8.block_sparse_moe.switch_mlp.up_proj.weight": "model-00014-of-00094.safetensors", + "model.layers.8.input_layernorm.weight": "model-00014-of-00094.safetensors", + "model.layers.8.post_attention_layernorm.weight": "model-00014-of-00094.safetensors", + "model.layers.8.self_attn.k_norm.weight": "model-00013-of-00094.safetensors", + "model.layers.8.self_attn.k_proj.weight": "model-00013-of-00094.safetensors", + "model.layers.8.self_attn.o_proj.weight": "model-00013-of-00094.safetensors", + "model.layers.8.self_attn.q_norm.weight": "model-00013-of-00094.safetensors", + "model.layers.8.self_attn.q_proj.weight": "model-00013-of-00094.safetensors", + "model.layers.8.self_attn.v_proj.weight": "model-00013-of-00094.safetensors", + "model.layers.9.block_sparse_moe.e_score_correction_bias": "model-00016-of-00094.safetensors", + "model.layers.9.block_sparse_moe.gate.weight": "model-00014-of-00094.safetensors", + "model.layers.9.block_sparse_moe.switch_mlp.down_proj.weight": "model-00016-of-00094.safetensors", + "model.layers.9.block_sparse_moe.switch_mlp.gate_proj.weight": "model-00015-of-00094.safetensors", + "model.layers.9.block_sparse_moe.switch_mlp.up_proj.weight": "model-00015-of-00094.safetensors", + "model.layers.9.input_layernorm.weight": "model-00016-of-00094.safetensors", + "model.layers.9.post_attention_layernorm.weight": "model-00016-of-00094.safetensors", + "model.layers.9.self_attn.k_norm.weight": "model-00014-of-00094.safetensors", + "model.layers.9.self_attn.k_proj.weight": "model-00014-of-00094.safetensors", + "model.layers.9.self_attn.o_proj.weight": "model-00014-of-00094.safetensors", + "model.layers.9.self_attn.q_norm.weight": "model-00014-of-00094.safetensors", + "model.layers.9.self_attn.q_proj.weight": "model-00014-of-00094.safetensors", + "model.layers.9.self_attn.v_proj.weight": "model-00014-of-00094.safetensors", + "model.norm.weight": "model-00094-of-00094.safetensors" + } +} \ No newline at end of file diff --git a/modeling_minimax_m2.py b/modeling_minimax_m2.py new file mode 100644 index 0000000000000000000000000000000000000000..8846d38acc932d1dcb0302bb719296313f5225a8 --- /dev/null +++ b/modeling_minimax_m2.py @@ -0,0 +1,706 @@ +# 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨 +# This file was automatically generated from src/transformers/models/minimax_m2/modular_minimax_m2.py. +# Do NOT edit this file manually as any edits will be overwritten by the generation of +# the file from the modular. If any change should be done, please apply the change to the +# modular_minimax_m2.py file directly. One of our CI enforces this. +# 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨 +# coding=utf-8 +# Copyright 2025 the HuggingFace Team. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +from collections.abc import Callable +from typing import Optional, Union, Unpack + +import torch +from torch import nn + +from transformers.activations import ACT2FN +from transformers.cache_utils import Cache, DynamicCache +from transformers.generation import GenerationMixin +from transformers.integrations import use_kernel_forward_from_hub +from transformers.masking_utils import create_causal_mask, create_sliding_window_causal_mask +from transformers.modeling_flash_attention_utils import FlashAttentionKwargs +from transformers.modeling_layers import ( + GenericForQuestionAnswering, + GenericForSequenceClassification, + GenericForTokenClassification, + GradientCheckpointingLayer, +) +from transformers.modeling_outputs import MoeCausalLMOutputWithPast, MoeModelOutputWithPast +from transformers.modeling_rope_utils import ROPE_INIT_FUNCTIONS, dynamic_rope_update +from transformers.modeling_utils import ALL_ATTENTION_FUNCTIONS, PreTrainedModel +from transformers.utils import TransformersKwargs, auto_docstring, can_return_tuple +from transformers.utils.deprecation import deprecate_kwarg +from transformers.utils.generic import OutputRecorder, check_model_inputs +from .configuration_minimax_m2 import MiniMaxM2Config + + +class MiniMaxM2MLP(nn.Module): + def __init__(self, config: MiniMaxM2Config): + super().__init__() + self.ffn_dim = config.intermediate_size + self.hidden_dim = config.hidden_size + + self.w1 = nn.Linear(self.hidden_dim, self.ffn_dim, bias=False) + self.w2 = nn.Linear(self.ffn_dim, self.hidden_dim, bias=False) + self.w3 = nn.Linear(self.hidden_dim, self.ffn_dim, bias=False) + + self.act_fn = ACT2FN[config.hidden_act] + + def forward(self, hidden_states): + current_hidden_states = self.act_fn(self.w1(hidden_states)) * self.w3(hidden_states) + current_hidden_states = self.w2(current_hidden_states) + return current_hidden_states + + +class MiniMaxM2Experts(nn.ModuleList): + """ + ModuleList of experts. + """ + + def __init__(self, config: MiniMaxM2Config): + super().__init__() + self.top_k = config.num_experts_per_tok + self.num_experts = config.num_local_experts + for _ in range(self.num_experts): + self.append(MiniMaxM2MLP(config)) + + def forward( + self, hidden_states: torch.Tensor, top_k_index: torch.Tensor, top_k_weights: torch.Tensor + ) -> torch.Tensor: + """ + Args: + hidden_states: (batch_size * sequence_length, hidden_dim) + selected_experts: (batch_size * sequence_length, top_k) + routing_weights: (batch_size * sequence_length, top_k) + Returns: + (batch_size * sequence_length, hidden_dim) + """ + final_hidden_states = torch.zeros_like(hidden_states) + expert_mask = torch.nn.functional.one_hot(top_k_index, num_classes=self.num_experts).permute(2, 1, 0) + + expert_hit = torch.greater(expert_mask.sum(dim=(-1, -2)), 0).nonzero() + for expert_idx in expert_hit: + idx, top_x = torch.where(expert_mask[expert_idx].squeeze(0)) + current_state = hidden_states[None, top_x].reshape(-1, hidden_states.shape[-1]) + current_hidden_states = self[expert_idx](current_state) * top_k_weights[top_x, idx, None] + final_hidden_states.index_add_(0, top_x, current_hidden_states.to(hidden_states.dtype)) + return final_hidden_states + + +class MiniMaxM2SparseMoeBlock(nn.Module): + def __init__(self, config): + super().__init__() + self.top_k = config.num_experts_per_tok + self.jitter_noise = config.router_jitter_noise + self.gate = nn.Linear(config.hidden_size, config.num_local_experts, bias=False) + self.experts = MiniMaxM2Experts(config) + self.register_buffer("e_score_correction_bias", torch.zeros(config.num_local_experts)) + + def route_tokens_to_experts(self, router_logits): + routing_weights = torch.nn.functional.sigmoid(router_logits.float()) + scores_for_choice = routing_weights + self.e_score_correction_bias + _, top_k_index = torch.topk(scores_for_choice, self.top_k, dim=-1, sorted=False) + top_k_weights = routing_weights.gather(1, top_k_index) + top_k_weights /= top_k_weights.sum(dim=-1, keepdim=True) + return top_k_index, top_k_weights.to(router_logits.dtype) + + def forward(self, hidden_states: torch.Tensor) -> tuple[torch.Tensor, torch.Tensor]: + batch_size, sequence_length, hidden_dim = hidden_states.shape + if self.training and self.jitter_noise > 0: + hidden_states *= torch.empty_like(hidden_states).uniform_(1.0 - self.jitter_noise, 1.0 + self.jitter_noise) + hidden_states = hidden_states.view(-1, hidden_states.shape[-1]) + router_logits = self.gate(hidden_states) + top_k_index, top_k_weights = self.route_tokens_to_experts(router_logits) + hidden_states = self.experts(hidden_states, top_k_index, top_k_weights.to(hidden_states.dtype)) + hidden_states = hidden_states.reshape(batch_size, sequence_length, hidden_dim) + return hidden_states, router_logits + + +@use_kernel_forward_from_hub("RMSNorm") +class MiniMaxM2RMSNorm(nn.Module): + def __init__(self, hidden_size, eps=1e-6): + """ + MiniMaxM2RMSNorm is equivalent to T5LayerNorm + """ + super().__init__() + self.weight = nn.Parameter(torch.ones(hidden_size)) + self.variance_epsilon = eps + + def forward(self, hidden_states): + input_dtype = hidden_states.dtype + hidden_states = hidden_states.to(torch.float32) + variance = hidden_states.pow(2).mean(-1, keepdim=True) + hidden_states = hidden_states * torch.rsqrt(variance + self.variance_epsilon) + return self.weight * hidden_states.to(input_dtype) + + def extra_repr(self): + return f"{tuple(self.weight.shape)}, eps={self.variance_epsilon}" + + +def repeat_kv(hidden_states: torch.Tensor, n_rep: int) -> torch.Tensor: + """ + This is the equivalent of torch.repeat_interleave(x, dim=1, repeats=n_rep). The hidden states go from (batch, + num_key_value_heads, seqlen, head_dim) to (batch, num_attention_heads, seqlen, head_dim) + """ + batch, num_key_value_heads, slen, head_dim = hidden_states.shape + if n_rep == 1: + return hidden_states + hidden_states = hidden_states[:, :, None, :, :].expand(batch, num_key_value_heads, n_rep, slen, head_dim) + return hidden_states.reshape(batch, num_key_value_heads * n_rep, slen, head_dim) + + +def eager_attention_forward( + module: nn.Module, + query: torch.Tensor, + key: torch.Tensor, + value: torch.Tensor, + attention_mask: Optional[torch.Tensor], + scaling: float, + dropout: float = 0.0, + **kwargs: Unpack[TransformersKwargs], +): + key_states = repeat_kv(key, module.num_key_value_groups) + value_states = repeat_kv(value, module.num_key_value_groups) + + attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling + if attention_mask is not None: + causal_mask = attention_mask[:, :, :, : key_states.shape[-2]] + attn_weights = attn_weights + causal_mask + + attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype) + attn_weights = nn.functional.dropout(attn_weights, p=dropout, training=module.training) + attn_output = torch.matmul(attn_weights, value_states) + attn_output = attn_output.transpose(1, 2).contiguous() + + return attn_output, attn_weights + + +def rotate_half(x): + """Rotates half the hidden dims of the input.""" + x1 = x[..., : x.shape[-1] // 2] + x2 = x[..., x.shape[-1] // 2 :] + return torch.cat((-x2, x1), dim=-1) + + +def apply_rotary_pos_emb(q, k, cos, sin, position_ids=None, unsqueeze_dim=1): + """Applies Rotary Position Embedding to the query and key tensors. + + Args: + q (`torch.Tensor`): The query tensor. + k (`torch.Tensor`): The key tensor. + cos (`torch.Tensor`): The cosine part of the rotary embedding. + sin (`torch.Tensor`): The sine part of the rotary embedding. + position_ids (`torch.Tensor`, *optional*): + Deprecated and unused. + unsqueeze_dim (`int`, *optional*, defaults to 1): + The 'unsqueeze_dim' argument specifies the dimension along which to unsqueeze cos[position_ids] and + sin[position_ids] so that they can be properly broadcasted to the dimensions of q and k. For example, note + that cos[position_ids] and sin[position_ids] have the shape [batch_size, seq_len, head_dim]. Then, if q and + k have the shape [batch_size, heads, seq_len, head_dim], then setting unsqueeze_dim=1 makes + cos[position_ids] and sin[position_ids] broadcastable to the shapes of q and k. Similarly, if q and k have + the shape [batch_size, seq_len, heads, head_dim], then set unsqueeze_dim=2. + Returns: + `tuple(torch.Tensor)` comprising of the query and key tensors rotated using the Rotary Position Embedding. + """ + cos = cos.unsqueeze(unsqueeze_dim) + sin = sin.unsqueeze(unsqueeze_dim) + + # Keep half or full tensor for later concatenation + rotary_dim = cos.shape[-1] + q_rot, q_pass = q[..., :rotary_dim], q[..., rotary_dim:] + k_rot, k_pass = k[..., :rotary_dim], k[..., rotary_dim:] + + # Apply rotary embeddings on the first half or full tensor + q_embed = (q_rot * cos) + (rotate_half(q_rot) * sin) + k_embed = (k_rot * cos) + (rotate_half(k_rot) * sin) + + # Concatenate back to full shape + q_embed = torch.cat([q_embed, q_pass], dim=-1) + k_embed = torch.cat([k_embed, k_pass], dim=-1) + return q_embed, k_embed + + +class MiniMaxM2Attention(nn.Module): + """Multi-headed attention from 'Attention Is All You Need' paper""" + + def __init__(self, config: MiniMaxM2Config, layer_idx: int): + super().__init__() + self.config = config + self.layer_idx = layer_idx + self.head_dim = getattr(config, "head_dim", None) or config.hidden_size // config.num_attention_heads + self.num_key_value_groups = config.num_attention_heads // config.num_key_value_heads + self.scaling = self.head_dim**-0.5 + self.attention_dropout = config.attention_dropout + self.is_causal = True + self.q_proj = nn.Linear(config.hidden_size, config.num_attention_heads * self.head_dim, bias=False) + self.k_proj = nn.Linear(config.hidden_size, config.num_key_value_heads * self.head_dim, bias=False) + self.v_proj = nn.Linear(config.hidden_size, config.num_key_value_heads * self.head_dim, bias=False) + self.o_proj = nn.Linear(config.num_attention_heads * self.head_dim, config.hidden_size, bias=False) + + self.use_qk_norm = config.use_qk_norm + if self.use_qk_norm: + self.q_norm = MiniMaxM2RMSNorm(self.head_dim * config.num_attention_heads, eps=config.rms_norm_eps) + self.k_norm = MiniMaxM2RMSNorm(self.head_dim * config.num_key_value_heads, eps=config.rms_norm_eps) + + @deprecate_kwarg("past_key_value", new_name="past_key_values", version="4.58") + def forward( + self, + hidden_states: torch.Tensor, + position_embeddings: tuple[torch.Tensor, torch.Tensor], + attention_mask: Optional[torch.Tensor], + past_key_values: Optional[Cache] = None, + cache_position: Optional[torch.LongTensor] = None, + **kwargs: Unpack[FlashAttentionKwargs], + ) -> tuple[torch.Tensor, Optional[torch.Tensor]]: + input_shape = hidden_states.shape[:-1] + hidden_shape = (*input_shape, -1, self.head_dim) + + query_states = self.q_proj(hidden_states) + key_states = self.k_proj(hidden_states) + value_states = self.v_proj(hidden_states) + + if self.use_qk_norm: # main diff from Llama + query_states = self.q_norm(query_states) + key_states = self.k_norm(key_states) + + key_states = key_states.view(hidden_shape) + query_states = query_states.view(hidden_shape) + value_states = value_states.view(hidden_shape) + + query_states = query_states.transpose(1, 2) + key_states = key_states.transpose(1, 2) + value_states = value_states.transpose(1, 2) + + cos, sin = position_embeddings + query_states, key_states = apply_rotary_pos_emb(query_states, key_states, cos, sin) + + if past_key_values is not None: + # sin and cos are specific to RoPE models; position_ids needed for the static cache + cache_kwargs = {"sin": sin, "cos": cos, "cache_position": cache_position} + key_states, value_states = past_key_values.update(key_states, value_states, self.layer_idx, cache_kwargs) + + attention_interface: Callable = eager_attention_forward + if self.config._attn_implementation != "eager": + attention_interface = ALL_ATTENTION_FUNCTIONS[self.config._attn_implementation] + + attn_output, attn_weights = attention_interface( + self, + query_states, + key_states, + value_states, + attention_mask, + dropout=0.0 if not self.training else self.attention_dropout, + scaling=self.scaling, + **kwargs, + ) + + attn_output = attn_output.reshape(*input_shape, -1).contiguous() + attn_output = self.o_proj(attn_output) + return attn_output, attn_weights + + +class MiniMaxM2DecoderLayer(GradientCheckpointingLayer): + def __init__(self, config: MiniMaxM2Config, layer_idx: int): + super().__init__() + self.hidden_size = config.hidden_size + + self.self_attn = MiniMaxM2Attention(config, layer_idx) + + self.block_sparse_moe = MiniMaxM2SparseMoeBlock(config) + self.input_layernorm = MiniMaxM2RMSNorm(config.hidden_size, eps=config.rms_norm_eps) + self.post_attention_layernorm = MiniMaxM2RMSNorm(config.hidden_size, eps=config.rms_norm_eps) + + @deprecate_kwarg("past_key_value", new_name="past_key_values", version="4.58") + def forward( + self, + hidden_states: torch.Tensor, + position_embeddings: tuple[torch.Tensor, torch.Tensor], + attention_mask: Optional[torch.Tensor] = None, + position_ids: Optional[torch.LongTensor] = None, + past_key_values: Optional[Cache] = None, + cache_position: Optional[torch.LongTensor] = None, + **kwargs: Unpack[TransformersKwargs], + ) -> torch.FloatTensor: + residual = hidden_states + + hidden_states = self.input_layernorm(hidden_states) + + # Self Attention + hidden_states, _ = self.self_attn( + hidden_states=hidden_states, + position_embeddings=position_embeddings, + attention_mask=attention_mask, + position_ids=position_ids, + past_key_values=past_key_values, + cache_position=cache_position, + **kwargs, + ) + hidden_states = residual + hidden_states + + # Fully Connected + residual = hidden_states + hidden_states = self.post_attention_layernorm(hidden_states) + hidden_states, _ = self.block_sparse_moe(hidden_states) + hidden_states = residual + hidden_states + + return hidden_states + + +class MiniMaxM2RotaryEmbedding(nn.Module): + inv_freq: torch.Tensor # fix linting for `register_buffer` + + def __init__(self, config: MiniMaxM2Config, device=None): + super().__init__() + # BC: "rope_type" was originally "type" + if hasattr(config, "rope_scaling") and isinstance(config.rope_scaling, dict): + self.rope_type = config.rope_scaling.get("rope_type", config.rope_scaling.get("type")) + else: + self.rope_type = "default" + self.max_seq_len_cached = config.max_position_embeddings + self.original_max_seq_len = config.max_position_embeddings + + self.config = config + self.rope_init_fn = ROPE_INIT_FUNCTIONS[self.rope_type] + + inv_freq, self.attention_scaling = self.rope_init_fn(self.config, device) + self.register_buffer("inv_freq", inv_freq, persistent=False) + self.original_inv_freq = self.inv_freq + + @torch.no_grad() + @dynamic_rope_update # power user: used with advanced RoPE types (e.g. dynamic rope) + def forward(self, x, position_ids): + inv_freq_expanded = self.inv_freq[None, :, None].float().expand(position_ids.shape[0], -1, 1).to(x.device) + position_ids_expanded = position_ids[:, None, :].float() + + device_type = x.device.type if isinstance(x.device.type, str) and x.device.type != "mps" else "cpu" + with torch.autocast(device_type=device_type, enabled=False): # Force float32 + freqs = (inv_freq_expanded.float() @ position_ids_expanded.float()).transpose(1, 2) + emb = torch.cat((freqs, freqs), dim=-1) + cos = emb.cos() * self.attention_scaling + sin = emb.sin() * self.attention_scaling + + return cos.to(dtype=x.dtype), sin.to(dtype=x.dtype) + + +@auto_docstring +class MiniMaxM2PreTrainedModel(PreTrainedModel): + config: MiniMaxM2Config + base_model_prefix = "model" + supports_gradient_checkpointing = True + _no_split_modules = ["MiniMaxM2DecoderLayer"] + _skip_keys_device_placement = ["past_key_values"] + _supports_flash_attn = True + _supports_sdpa = True + _supports_flex_attn = True + _can_compile_fullgraph = False # MoE models don't work with torch.compile (`torch.where(condition)` not supported) + _supports_attention_backend = True + _can_record_outputs = { + "router_logits": OutputRecorder(MiniMaxM2SparseMoeBlock, index=1), + "hidden_states": MiniMaxM2DecoderLayer, + "attentions": MiniMaxM2Attention, + } + + +@auto_docstring +class MiniMaxM2Model(MiniMaxM2PreTrainedModel): + def __init__(self, config: MiniMaxM2Config): + super().__init__(config) + self.padding_idx = config.pad_token_id + self.vocab_size = config.vocab_size + + self.embed_tokens = nn.Embedding(config.vocab_size, config.hidden_size, self.padding_idx) + self.layers = nn.ModuleList( + [MiniMaxM2DecoderLayer(config, layer_idx) for layer_idx in range(config.num_hidden_layers)] + ) + self.norm = MiniMaxM2RMSNorm(config.hidden_size, eps=config.rms_norm_eps) + self.rotary_emb = MiniMaxM2RotaryEmbedding(config=config) + self.gradient_checkpointing = False + + # Initialize weights and apply final processing + self.post_init() + + @check_model_inputs + @auto_docstring + def forward( + self, + input_ids: Optional[torch.LongTensor] = None, + attention_mask: Optional[torch.Tensor] = None, + position_ids: Optional[torch.LongTensor] = None, + past_key_values: Optional[Cache] = None, + inputs_embeds: Optional[torch.FloatTensor] = None, + use_cache: Optional[bool] = None, + cache_position: Optional[torch.LongTensor] = None, + **kwargs: Unpack[TransformersKwargs], + ) -> MoeModelOutputWithPast: + if (input_ids is None) ^ (inputs_embeds is not None): + raise ValueError("You must specify exactly one of input_ids or inputs_embeds") + + if use_cache and past_key_values is None: + past_key_values = DynamicCache(config=self.config) + + if inputs_embeds is None: + inputs_embeds = self.embed_tokens(input_ids) + + if cache_position is None: + past_seen_tokens = past_key_values.get_seq_length() if past_key_values is not None else 0 + cache_position = torch.arange( + past_seen_tokens, past_seen_tokens + inputs_embeds.shape[1], device=inputs_embeds.device + ) + if position_ids is None: + position_ids = cache_position.unsqueeze(0) + + mask_function = create_causal_mask if self.config.sliding_window is None else create_sliding_window_causal_mask + causal_mask = mask_function( + config=self.config, + input_embeds=inputs_embeds, + attention_mask=attention_mask, + cache_position=cache_position, + past_key_values=past_key_values, + position_ids=position_ids, + ) + + hidden_states = inputs_embeds + + # create position embeddings to be shared across the decoder layers + position_embeddings = self.rotary_emb(hidden_states, position_ids) + + for decoder_layer in self.layers[: self.config.num_hidden_layers]: + hidden_states = decoder_layer( + hidden_states, + position_embeddings=position_embeddings, + attention_mask=causal_mask, + position_ids=position_ids, + past_key_values=past_key_values, + use_cache=use_cache, + cache_position=cache_position, + **kwargs, + ) + + hidden_states = self.norm(hidden_states) + + return MoeModelOutputWithPast( # only diff with Mistral is the output type, we need MoE + last_hidden_state=hidden_states, + past_key_values=past_key_values, + ) + + +def load_balancing_loss_func( + gate_logits: Union[torch.Tensor, tuple[torch.Tensor], None], + num_experts: Optional[int] = None, + top_k=2, + attention_mask: Optional[torch.Tensor] = None, +) -> Union[torch.Tensor, int]: + r""" + Computes auxiliary load balancing loss as in Switch Transformer - implemented in Pytorch. + + See Switch Transformer (https://huggingface.co/papers/2101.03961) for more details. This function implements the loss + function presented in equations (4) - (6) of the paper. It aims at penalizing cases where the routing between + experts is too unbalanced. + + Args: + gate_logits: + Logits from the `gate`, should be a tuple of model.config.num_hidden_layers tensors of + shape [batch_size X sequence_length, num_experts]. + num_experts: + Number of experts + top_k: + The number of experts to route per-token, can be also interpreted as the `top-k` routing + parameter. + attention_mask (`torch.Tensor`, *optional*): + The attention_mask used in forward function + shape [batch_size X sequence_length] if not None. + + Returns: + The auxiliary loss. + """ + if gate_logits is None or not isinstance(gate_logits, tuple): + return 0 + + if isinstance(gate_logits, tuple): + compute_device = gate_logits[0].device + concatenated_gate_logits = torch.cat([layer_gate.to(compute_device) for layer_gate in gate_logits], dim=0) + + routing_weights = torch.nn.functional.softmax(concatenated_gate_logits, dim=-1) + + _, selected_experts = torch.topk(routing_weights, top_k, dim=-1) + + expert_mask = torch.nn.functional.one_hot(selected_experts, num_experts) + + if attention_mask is None: + # Compute the percentage of tokens routed to each experts + tokens_per_expert = torch.mean(expert_mask.float(), dim=0) + + # Compute the average probability of routing to these experts + router_prob_per_expert = torch.mean(routing_weights, dim=0) + else: + batch_size, sequence_length = attention_mask.shape + num_hidden_layers = concatenated_gate_logits.shape[0] // (batch_size * sequence_length) + + # Compute the mask that masks all padding tokens as 0 with the same shape of expert_mask + expert_attention_mask = ( + attention_mask[None, :, :, None, None] + .expand((num_hidden_layers, batch_size, sequence_length, top_k, num_experts)) + .reshape(-1, top_k, num_experts) + .to(compute_device) + ) + + # Compute the percentage of tokens routed to each experts + tokens_per_expert = torch.sum(expert_mask.float() * expert_attention_mask, dim=0) / torch.sum( + expert_attention_mask, dim=0 + ) + + # Compute the mask that masks all padding tokens as 0 with the same shape of tokens_per_expert + router_per_expert_attention_mask = ( + attention_mask[None, :, :, None] + .expand((num_hidden_layers, batch_size, sequence_length, num_experts)) + .reshape(-1, num_experts) + .to(compute_device) + ) + + # Compute the average probability of routing to these experts + router_prob_per_expert = torch.sum(routing_weights * router_per_expert_attention_mask, dim=0) / torch.sum( + router_per_expert_attention_mask, dim=0 + ) + + overall_loss = torch.sum(tokens_per_expert * router_prob_per_expert.unsqueeze(0)) + return overall_loss * num_experts + + +@auto_docstring +class MiniMaxM2ForCausalLM(MiniMaxM2PreTrainedModel, GenerationMixin): + _tied_weights_keys = ["lm_head.weight"] + _tp_plan = {"lm_head": "colwise_rep"} + _pp_plan = {"lm_head": (["hidden_states"], ["logits"])} + + def __init__(self, config): + super().__init__(config) + self.model = MiniMaxM2Model(config) + self.vocab_size = config.vocab_size + self.lm_head = nn.Linear(config.hidden_size, config.vocab_size, bias=False) + self.router_aux_loss_coef = config.router_aux_loss_coef + self.num_experts = config.num_local_experts + self.num_experts_per_tok = config.num_experts_per_tok + + # Initialize weights and apply final processing + self.post_init() + + @can_return_tuple + @auto_docstring + def forward( + self, + input_ids: Optional[torch.LongTensor] = None, + attention_mask: Optional[torch.Tensor] = None, + position_ids: Optional[torch.LongTensor] = None, + past_key_values: Optional[Cache] = None, + inputs_embeds: Optional[torch.FloatTensor] = None, + labels: Optional[torch.LongTensor] = None, + use_cache: Optional[bool] = None, + output_router_logits: Optional[bool] = None, + cache_position: Optional[torch.LongTensor] = None, + logits_to_keep: Union[int, torch.Tensor] = 0, + **kwargs: Unpack[TransformersKwargs], + ) -> MoeCausalLMOutputWithPast: + r""" + labels (`torch.LongTensor` of shape `(batch_size, sequence_length)`, *optional*): + Labels for computing the masked language modeling loss. Indices should either be in `[0, ..., + config.vocab_size]` or -100 (see `input_ids` docstring). Tokens with indices set to `-100` are ignored + (masked), the loss is only computed for the tokens with labels in `[0, ..., config.vocab_size]`. + + Example: + + ```python + >>> from transformers import AutoTokenizer, MiniMaxM2ForCausalLM + + >>> model = MiniMaxM2ForCausalLM.from_pretrained("mistralai/MiniMaxM2-8x7B-v0.1") + >>> tokenizer = AutoTokenizer.from_pretrained("mistralai/MiniMaxM2-8x7B-v0.1") + + >>> prompt = "Hey, are you conscious? Can you talk to me?" + >>> inputs = tokenizer(prompt, return_tensors="pt") + + >>> # Generate + >>> generate_ids = model.generate(inputs.input_ids, max_length=30) + >>> tokenizer.batch_decode(generate_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False)[0] + "Hey, are you conscious? Can you talk to me?\nI'm not conscious, but I can talk to you." + ```""" + + output_router_logits = ( + output_router_logits if output_router_logits is not None else self.config.output_router_logits + ) + + # decoder outputs consists of (dec_features, layer_state, dec_hidden, dec_attn) + outputs: MoeModelOutputWithPast = self.model( + input_ids=input_ids, + attention_mask=attention_mask, + position_ids=position_ids, + past_key_values=past_key_values, + inputs_embeds=inputs_embeds, + use_cache=use_cache, + output_router_logits=output_router_logits, + cache_position=cache_position, + **kwargs, + ) + + hidden_states = outputs.last_hidden_state + # Only compute necessary logits, and do not upcast them to float if we are not computing the loss + slice_indices = slice(-logits_to_keep, None) if isinstance(logits_to_keep, int) else logits_to_keep + logits = self.lm_head(hidden_states[:, slice_indices, :]) + + loss = None + if labels is not None: + loss = self.loss_function(logits, labels, self.vocab_size, **kwargs) + + aux_loss = None + if output_router_logits: + aux_loss = load_balancing_loss_func( + outputs.router_logits, + self.num_experts, + self.num_experts_per_tok, + attention_mask, + ) + if labels is not None: + loss += self.router_aux_loss_coef * aux_loss.to(loss.device) # make sure to reside in the same device + + return MoeCausalLMOutputWithPast( + loss=loss, + aux_loss=aux_loss, + logits=logits, + past_key_values=outputs.past_key_values, + hidden_states=outputs.hidden_states, + attentions=outputs.attentions, + router_logits=outputs.router_logits, + ) + + +class MiniMaxM2ForSequenceClassification(GenericForSequenceClassification, MiniMaxM2PreTrainedModel): + pass + + +class MiniMaxM2ForTokenClassification(GenericForTokenClassification, MiniMaxM2PreTrainedModel): + pass + + +class MiniMaxM2ForQuestionAnswering(GenericForQuestionAnswering, MiniMaxM2PreTrainedModel): + pass + + +__all__ = [ + "MiniMaxM2ForCausalLM", + "MiniMaxM2ForQuestionAnswering", + "MiniMaxM2Model", + "MiniMaxM2PreTrainedModel", + "MiniMaxM2ForSequenceClassification", + "MiniMaxM2ForTokenClassification", +] diff --git a/tokenizer.json b/tokenizer.json new file mode 100644 index 0000000000000000000000000000000000000000..27ba950155a5ce69f8f0d6a733447616fd552b9b --- /dev/null +++ b/tokenizer.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b81e5e5cba2b169e86a0771825a927e9d41b4c4484ded4a286410f41f702f17 +size 15523144 diff --git a/tokenizer_config.json b/tokenizer_config.json new file mode 100644 index 0000000000000000000000000000000000000000..07e06b8d56ee47d78ca7baeb755f993f5eb7379c --- /dev/null +++ b/tokenizer_config.json @@ -0,0 +1,64 @@ +{ + "add_prefix_space": false, + "backend": "tokenizers", + "bos_token": "]~!b[", + "clean_up_tokenization_spaces": false, + "eos_token": "[e~[", + "extra_special_tokens": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "]<]speech[>[", + "]<]image[>[", + "]<]video[>[", + "]<]start of speech[>[", + "]<]end of speech[>[", + "]<]start of image[>[", + "]<]end of image[>[", + "]<]start of video[>[", + "]<]end of video[>[", + "]<]vision pad[>[", + "]~!b[", + "", + "", + "", + "", + "", + "", + "", + "", + "[e~[", + "]!d~[", + "]!p~[", + "]~b]", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "is_local": true, + "model_max_length": 40960000, + "tokenizer_class": "TokenizersBackend", + "tool_parser_type": "minimax_m2", + "unk_token": "]!d~[" +}