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~["
+}