Text Generation
MLX
Safetensors
English
qwen3_5
quantized
vector-quantization
apple-silicon
qwen3.8
conversational
4-bit precision
Instructions to use TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw with MLX:
# Make sure mlx-lm is installed # pip install --upgrade mlx-lm # Generate text with mlx-lm from mlx_lm import load, generate model, tokenizer = load("TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw") prompt = "Write a story about Einstein" messages = [{"role": "user", "content": prompt}] prompt = tokenizer.apply_chat_template( messages, add_generation_prompt=True ) text = generate(model, tokenizer, prompt=prompt, verbose=True) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Pi
How to use TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw with Pi:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw"
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "mlx-lm": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw" } ] } } }Run Pi
# Start Pi in your project directory: pi
- MLX LM
How to use TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw with MLX LM:
Generate or start a chat session
# Install MLX LM uv tool install mlx-lm # Interactive chat REPL mlx_lm.chat --model "TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw"
Run an OpenAI-compatible server
# Install MLX LM uv tool install mlx-lm # Start the server mlx_lm.server --model "TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw" # Calling the OpenAI-compatible server with curl curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw", "messages": [ {"role": "user", "content": "Hello"} ] }' - Hermes Agent
How to use TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw with Hermes Agent:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw"
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw with OpenClaw:
Start the MLX server
# Install MLX LM: uv tool install mlx-lm # Start a local OpenAI-compatible server: mlx_lm.server --model "TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw"
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw" \ --custom-provider-id mlx-lm \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
d2/K256, 14.45 GiB: KL 40.3 vs the 4-bit conversion's 45.8, at 0.50 GiB smaller
Browse files- .gitattributes +2 -0
- README.md +131 -0
- chat_template.jinja +170 -0
- config.json +1694 -0
- generation_config.json +12 -0
- model-00001.safetensors +3 -0
- model-00002.safetensors +3 -0
- model-00003.safetensors +3 -0
- model-00004.safetensors +3 -0
- model-vision-graft.safetensors +3 -0
- model.py +268 -0
- model.safetensors.index.json +0 -0
- qwen38_ladder.png +3 -0
- tokenizer.json +3 -0
- tokenizer_config.json +33 -0
.gitattributes
CHANGED
|
@@ -33,3 +33,5 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
qwen38_ladder.png filter=lfs diff=lfs merge=lfs -text
|
| 37 |
+
tokenizer.json filter=lfs diff=lfs merge=lfs -text
|
README.md
ADDED
|
@@ -0,0 +1,131 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
language:
|
| 3 |
+
- en
|
| 4 |
+
license: apache-2.0
|
| 5 |
+
library_name: mlx
|
| 6 |
+
pipeline_tag: text-generation
|
| 7 |
+
base_model: Qwen/Qwen3.8-27B
|
| 8 |
+
base_model_relation: quantized
|
| 9 |
+
tags:
|
| 10 |
+
- mlx
|
| 11 |
+
- quantized
|
| 12 |
+
- vector-quantization
|
| 13 |
+
- apple-silicon
|
| 14 |
+
- qwen3.8
|
| 15 |
+
---
|
| 16 |
+
|
| 17 |
+
# TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw
|
| 18 |
+
|
| 19 |
+
**14.5 GiB — smaller than our 4-bit conversion, and closer to bf16.**
|
| 20 |
+
|
| 21 |
+
A vector-quantized build of
|
| 22 |
+
[Qwen3.8-27B](https://huggingface.co/Qwen/Qwen3.8-27B) for Apple Silicon.
|
| 23 |
+
Stock `mlx-lm`, no patches — the VQ runtime ships inside the checkpoint as
|
| 24 |
+
`model.py`.
|
| 25 |
+
|
| 26 |
+
At the time of release no MLX-format quantization of this model had been
|
| 27 |
+
published, so the affine builds compared against below are our own
|
| 28 |
+
conversions rather than community artifacts. That is a weaker class of
|
| 29 |
+
evidence — a comparator you build yourself can be built badly, and one of
|
| 30 |
+
ours was; see Comparators.
|
| 31 |
+
|
| 32 |
+

|
| 33 |
+
|
| 34 |
+
## Measured results
|
| 35 |
+
|
| 36 |
+
Scored against the bf16 teacher on the same corpus with an unmodified
|
| 37 |
+
`mlx-lm`. All sizes include the 333-tensor bf16 vision tower (0.859 GiB),
|
| 38 |
+
carried by every build here.
|
| 39 |
+
|
| 40 |
+
| build | size | KL to bf16 (mnats/tok) | top-1 agreement | perplexity |
|
| 41 |
+
|---|---|---|---|---|
|
| 42 |
+
| affine q2 (ours) | 8.69 GiB | 1426.9 | 46.1% | 16.435 |
|
| 43 |
+
| affine q3 (ours) | 11.82 GiB | 187.8 | 79.5% | 5.832 |
|
| 44 |
+
| **this model** | **14.45 GiB** | **40.3** | **90.1%** | 5.233 |
|
| 45 |
+
| affine q4 (ours) | 14.95 GiB | 45.8 | 89.8% | 5.206 |
|
| 46 |
+
| affine q6 (ours) | 21.21 GiB | 3.71 | 96.8% | 5.260 |
|
| 47 |
+
| affine q8 (ours) | 27.48 GiB | 1.25 | 98.5% | 5.241 |
|
| 48 |
+
| bf16 | 51.7 GiB | 0 | 100% | — |
|
| 49 |
+
|
| 50 |
+
This is the cleanest comparison on the ladder: against the 4-bit affine
|
| 51 |
+
conversion it is **0.50 GiB smaller and 12% closer to bf16** (40.3 millinats
|
| 52 |
+
against 45.8), with 0.3 points better token agreement. Smaller and better on
|
| 53 |
+
the same instrument, no trade to weigh.
|
| 54 |
+
|
| 55 |
+
**Rank these by KL, not perplexity.** On this instruction-tuned family
|
| 56 |
+
perplexity barely moves — every build from 3-bit upward sits between 5.19 and
|
| 57 |
+
5.35, inside the measurement's own noise — while divergence from the teacher
|
| 58 |
+
moves by a factor of forty across the same range. Perplexity is an aggregate
|
| 59 |
+
over finite text and absorbs offsetting errors; KL measures distance to the
|
| 60 |
+
teacher's distribution directly.
|
| 61 |
+
|
| 62 |
+
## Runtime
|
| 63 |
+
|
| 64 |
+
**Not measured on this artifact.** No decode or prefill benchmark has been
|
| 65 |
+
run on this build, and quoting a sibling's figures would be a substitution
|
| 66 |
+
this project does not make. Resident memory is about 13.60 GiB — the disk
|
| 67 |
+
figure less the vision tower, which `mlx-lm` does not load.
|
| 68 |
+
|
| 69 |
+
Runs on a 16 GB, tightly sized machine.
|
| 70 |
+
|
| 71 |
+
## Run it
|
| 72 |
+
|
| 73 |
+
```bash
|
| 74 |
+
pip install mlx-lm
|
| 75 |
+
python -m mlx_lm generate \
|
| 76 |
+
--model TheDrainFlorist/Qwen3.8-27B-VQ-4.5bpw \
|
| 77 |
+
--prompt "Explain vector quantization briefly." \
|
| 78 |
+
--max-tokens 512
|
| 79 |
+
```
|
| 80 |
+
|
| 81 |
+
## How it was built
|
| 82 |
+
|
| 83 |
+
Vector quantization of the dense MLP trio at **d=2, K=256**. Each 2-weight
|
| 84 |
+
subvector stores one 8-bit index into a per-tensor 256-entry fp16 codebook. With an fp16 scale
|
| 85 |
+
per (row, 64 weights) that comes to 4.25 bits per weight over the quantized
|
| 86 |
+
surface; everything else in the model is 8-bit.
|
| 87 |
+
|
| 88 |
+
Every quantized tensor uses this one geometry: no depth schedule, no mixed
|
| 89 |
+
allocation.
|
| 90 |
+
|
| 91 |
+
**Codebooks are fit in pure weight space** — k-means over the weight
|
| 92 |
+
subvectors, no Hessian, no activation statistics, no calibration corpus.
|
| 93 |
+
|
| 94 |
+
**The fit is not seeded.** k-means draws an unseeded subsample, so this
|
| 95 |
+
artifact is reproducible in recipe and geometry but not bit-for-bit. Margins
|
| 96 |
+
are therefore quoted against a measured fit-to-fit floor rather than against a
|
| 97 |
+
repeated build; on this family that floor is 2.085 millinats.
|
| 98 |
+
|
| 99 |
+
## Comparators
|
| 100 |
+
|
| 101 |
+
The affine rungs above are local conversions made with `mlx_lm.convert`. One
|
| 102 |
+
correction worth stating plainly, because it was ours: the 8-bit comparator
|
| 103 |
+
originally used here was not a uniform 8-bit build at all — its configuration
|
| 104 |
+
declared a 4-bit default with per-module overrides, including the output head
|
| 105 |
+
at 6 bits. It was rebuilt with defaults and re-scored, and the figure above is
|
| 106 |
+
the rebuilt one. The bar moved *against* us when corrected, from 1.64 to 1.25
|
| 107 |
+
millinats.
|
| 108 |
+
|
| 109 |
+
## Where this stops paying
|
| 110 |
+
|
| 111 |
+
Above roughly 5 bits per weight the advantage reverses on this model: our
|
| 112 |
+
6-bit affine conversion reaches 3.7 millinats at 21.2 GiB, which no VQ rung we
|
| 113 |
+
measured approaches at that size. Builds larger than the ones released here
|
| 114 |
+
were measured and deliberately not published for that reason.
|
| 115 |
+
|
| 116 |
+
## Verification
|
| 117 |
+
|
| 118 |
+
Every tensor was decoded **from the published artifact** and compared against
|
| 119 |
+
the bf16 source; no tensor exceeds 3x the artifact's own median reconstruction
|
| 120 |
+
error. The bundled runtime was exercised as the executing copy in a stock
|
| 121 |
+
venv, not merely present in the folder. Vision tower grafted from the base
|
| 122 |
+
checkpoint and verified key-for-key against the official index, including the
|
| 123 |
+
channels-last patch-embedding layout that a naive rename gets silently wrong.
|
| 124 |
+
|
| 125 |
+
## Limitations
|
| 126 |
+
|
| 127 |
+
- Perplexity cannot rank builds on this family — see above.
|
| 128 |
+
- No throughput measurement, and no task-suite scores, for this artifact.
|
| 129 |
+
- The affine comparators are our own conversions, not community builds.
|
| 130 |
+
- Above ~5 bpw affine wins outright on this model; this collection stops
|
| 131 |
+
below that line deliberately.
|
chat_template.jinja
ADDED
|
@@ -0,0 +1,170 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{%- set image_count = namespace(value=0) %}
|
| 2 |
+
{%- set video_count = namespace(value=0) %}
|
| 3 |
+
{%- macro render_content(content, do_vision_count, is_system_content=false) %}
|
| 4 |
+
{%- if content is string %}
|
| 5 |
+
{{- content }}
|
| 6 |
+
{%- elif content is iterable and content is not mapping %}
|
| 7 |
+
{%- for item in content %}
|
| 8 |
+
{%- if 'image' in item or 'image_url' in item or item.type == 'image' %}
|
| 9 |
+
{%- if is_system_content %}
|
| 10 |
+
{{- raise_exception('System message cannot contain images.') }}
|
| 11 |
+
{%- endif %}
|
| 12 |
+
{%- if do_vision_count %}
|
| 13 |
+
{%- set image_count.value = image_count.value + 1 %}
|
| 14 |
+
{%- endif %}
|
| 15 |
+
{%- if add_vision_id %}
|
| 16 |
+
{{- 'Picture ' ~ image_count.value ~ ': ' }}
|
| 17 |
+
{%- endif %}
|
| 18 |
+
{{- '<|vision_start|><|image_pad|><|vision_end|>' }}
|
| 19 |
+
{%- elif 'video' in item or item.type == 'video' %}
|
| 20 |
+
{%- if is_system_content %}
|
| 21 |
+
{{- raise_exception('System message cannot contain videos.') }}
|
| 22 |
+
{%- endif %}
|
| 23 |
+
{%- if do_vision_count %}
|
| 24 |
+
{%- set video_count.value = video_count.value + 1 %}
|
| 25 |
+
{%- endif %}
|
| 26 |
+
{%- if add_vision_id %}
|
| 27 |
+
{{- 'Video ' ~ video_count.value ~ ': ' }}
|
| 28 |
+
{%- endif %}
|
| 29 |
+
{{- '<|vision_start|><|video_pad|><|vision_end|>' }}
|
| 30 |
+
{%- elif 'text' in item %}
|
| 31 |
+
{{- item.text }}
|
| 32 |
+
{%- else %}
|
| 33 |
+
{{- raise_exception('Unexpected item type in content.') }}
|
| 34 |
+
{%- endif %}
|
| 35 |
+
{%- endfor %}
|
| 36 |
+
{%- elif content is none or content is undefined %}
|
| 37 |
+
{{- '' }}
|
| 38 |
+
{%- else %}
|
| 39 |
+
{{- raise_exception('Unexpected content type.') }}
|
| 40 |
+
{%- endif %}
|
| 41 |
+
{%- endmacro %}
|
| 42 |
+
{%- if not messages %}
|
| 43 |
+
{{- raise_exception('No messages provided.') }}
|
| 44 |
+
{%- endif %}
|
| 45 |
+
{%- set reasoning_instructions = '' %}
|
| 46 |
+
{%- if enable_thinking is undefined or enable_thinking is true %}
|
| 47 |
+
{%- set resolved_reasoning_effort = reasoning_effort|default('xhigh') %}
|
| 48 |
+
{%- if resolved_reasoning_effort not in ('xhigh', 'medium', 'low') %}
|
| 49 |
+
{{- raise_exception('Unexpected reasoning effort ' ~ reasoning_effort ~ '. Supported types are xhigh (default), medium, and low.') }}
|
| 50 |
+
{%- endif %}
|
| 51 |
+
{%- if resolved_reasoning_effort == 'xhigh' %}
|
| 52 |
+
{%- set reasoning_instructions = 'Reasoning effort is set to xhigh. Please think carefully through the task, validate key assumptions, consider plausible alternatives, and prioritize correctness, consistency, and clarity in the final answer.' %}
|
| 53 |
+
{%- elif resolved_reasoning_effort == 'low' %}
|
| 54 |
+
{%- set reasoning_instructions = 'Reasoning effort is set to low. Keep your thinking brief and focused, moving directly to the conclusion without unnecessary elaboration.' %}
|
| 55 |
+
{%- endif %}
|
| 56 |
+
{%- endif %}
|
| 57 |
+
{%- if tools and tools is iterable and tools is not mapping %}
|
| 58 |
+
{{- '<|im_start|>system\n' }}
|
| 59 |
+
{%- if reasoning_instructions %}
|
| 60 |
+
{{- reasoning_instructions + '\n\n' }}
|
| 61 |
+
{%- endif %}
|
| 62 |
+
{{- "# Tools\n\nYou have access to the following functions:\n\n<tools>" }}
|
| 63 |
+
{%- for tool in tools %}
|
| 64 |
+
{{- "\n" }}
|
| 65 |
+
{{- tool | tojson }}
|
| 66 |
+
{%- endfor %}
|
| 67 |
+
{{- "\n</tools>" }}
|
| 68 |
+
{{- '\n\nIf you choose to call a function ONLY reply in the following format with NO suffix:\n\n<tool_call>\n<function=example_function_name>\n<parameter=example_parameter_1>\nvalue_1\n</parameter>\n<parameter=example_parameter_2>\nThis is the value for the second parameter\nthat can span\nmultiple lines\n</parameter>\n</function>\n</tool_call>\n\n<IMPORTANT>\nReminder:\n- Function calls MUST follow the specified format: an inner <function=...></function> block must be nested within <tool_call></tool_call> XML tags\n- Required parameters MUST be specified\n- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after\n- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls\n</IMPORTANT>' }}
|
| 69 |
+
{%- if messages[0].role == 'system' %}
|
| 70 |
+
{%- set content = render_content(messages[0].content, false, true)|trim %}
|
| 71 |
+
{%- if content %}
|
| 72 |
+
{{- '\n\n' + content }}
|
| 73 |
+
{%- endif %}
|
| 74 |
+
{%- endif %}
|
| 75 |
+
{{- '<|im_end|>\n' }}
|
| 76 |
+
{%- else %}
|
| 77 |
+
{%- if messages[0].role == 'system' %}
|
| 78 |
+
{%- set content = render_content(messages[0].content, false, true)|trim %}
|
| 79 |
+
{%- if content %}
|
| 80 |
+
{{- '<|im_start|>system\n' + (reasoning_instructions + '\n\n' if reasoning_instructions else '') + content + '<|im_end|>\n' }}
|
| 81 |
+
{%- elif reasoning_instructions %}
|
| 82 |
+
{{- '<|im_start|>system\n' + reasoning_instructions + '<|im_end|>\n' }}
|
| 83 |
+
{%- endif %}
|
| 84 |
+
{%- elif reasoning_instructions %}
|
| 85 |
+
{{- '<|im_start|>system\n' + reasoning_instructions + '<|im_end|>\n' }}
|
| 86 |
+
{%- endif %}
|
| 87 |
+
{%- endif %}
|
| 88 |
+
{%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}
|
| 89 |
+
{%- for message in messages[::-1] %}
|
| 90 |
+
{%- set index = (messages|length - 1) - loop.index0 %}
|
| 91 |
+
{%- if ns.multi_step_tool and message.role == "user" %}
|
| 92 |
+
{%- set content = render_content(message.content, false)|trim %}
|
| 93 |
+
{%- if not(content.startswith('<tool_response>') and content.endswith('</tool_response>')) %}
|
| 94 |
+
{%- set ns.multi_step_tool = false %}
|
| 95 |
+
{%- set ns.last_query_index = index %}
|
| 96 |
+
{%- endif %}
|
| 97 |
+
{%- endif %}
|
| 98 |
+
{%- endfor %}
|
| 99 |
+
{%- if ns.multi_step_tool %}
|
| 100 |
+
{{- raise_exception('No user query found in messages.') }}
|
| 101 |
+
{%- endif %}
|
| 102 |
+
{%- for message in messages %}
|
| 103 |
+
{%- set content = render_content(message.content, true)|trim %}
|
| 104 |
+
{%- if message.role == "system" %}
|
| 105 |
+
{%- if not loop.first %}
|
| 106 |
+
{{- raise_exception('System message must be at the beginning.') }}
|
| 107 |
+
{%- endif %}
|
| 108 |
+
{%- elif message.role == "user" %}
|
| 109 |
+
{{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }}
|
| 110 |
+
{%- elif message.role == "assistant" %}
|
| 111 |
+
{%- set reasoning_content = '' %}
|
| 112 |
+
{%- if message.reasoning_content is string %}
|
| 113 |
+
{%- set reasoning_content = message.reasoning_content %}
|
| 114 |
+
{%- endif %}
|
| 115 |
+
{%- set reasoning_content = reasoning_content|trim %}
|
| 116 |
+
{%- if preserve_thinking is undefined or preserve_thinking is true or loop.index0 > ns.last_query_index %}
|
| 117 |
+
{{- '<|im_start|>' + message.role + '\n<think>\n' + reasoning_content + '\n</think>\n\n' + content }}
|
| 118 |
+
{%- else %}
|
| 119 |
+
{{- '<|im_start|>' + message.role + '\n' + content }}
|
| 120 |
+
{%- endif %}
|
| 121 |
+
{%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %}
|
| 122 |
+
{%- for tool_call in message.tool_calls %}
|
| 123 |
+
{%- if tool_call.function is defined %}
|
| 124 |
+
{%- set tool_call = tool_call.function %}
|
| 125 |
+
{%- endif %}
|
| 126 |
+
{%- if loop.first %}
|
| 127 |
+
{%- if content|trim %}
|
| 128 |
+
{{- '\n\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
|
| 129 |
+
{%- else %}
|
| 130 |
+
{{- '<tool_call>\n<function=' + tool_call.name + '>\n' }}
|
| 131 |
+
{%- endif %}
|
| 132 |
+
{%- else %}
|
| 133 |
+
{{- '\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
|
| 134 |
+
{%- endif %}
|
| 135 |
+
{%- if tool_call.arguments is defined and tool_call.arguments != '' %}
|
| 136 |
+
{%- for args_name, args_value in tool_call.arguments|items %}
|
| 137 |
+
{{- '<parameter=' + args_name + '>\n' }}
|
| 138 |
+
{%- set args_value = args_value | string if args_value is string else args_value | tojson | safe %}
|
| 139 |
+
{{- args_value }}
|
| 140 |
+
{{- '\n</parameter>\n' }}
|
| 141 |
+
{%- endfor %}
|
| 142 |
+
{%- endif %}
|
| 143 |
+
{{- '</function>\n</tool_call>' }}
|
| 144 |
+
{%- endfor %}
|
| 145 |
+
{%- endif %}
|
| 146 |
+
{{- '<|im_end|>\n' }}
|
| 147 |
+
{%- elif message.role == "tool" %}
|
| 148 |
+
{%- if loop.previtem and loop.previtem.role != "tool" %}
|
| 149 |
+
{{- '<|im_start|>user' }}
|
| 150 |
+
{%- endif %}
|
| 151 |
+
{{- '\n<tool_response>\n' }}
|
| 152 |
+
{{- content }}
|
| 153 |
+
{{- '\n</tool_response>' }}
|
| 154 |
+
{%- if not loop.last and loop.nextitem.role != "tool" %}
|
| 155 |
+
{{- '<|im_end|>\n' }}
|
| 156 |
+
{%- elif loop.last %}
|
| 157 |
+
{{- '<|im_end|>\n' }}
|
| 158 |
+
{%- endif %}
|
| 159 |
+
{%- else %}
|
| 160 |
+
{{- raise_exception('Unexpected message role.') }}
|
| 161 |
+
{%- endif %}
|
| 162 |
+
{%- endfor %}
|
| 163 |
+
{%- if add_generation_prompt %}
|
| 164 |
+
{{- '<|im_start|>assistant\n' }}
|
| 165 |
+
{%- if enable_thinking is defined and enable_thinking is false %}
|
| 166 |
+
{{- '<think>\n\n</think>\n\n' }}
|
| 167 |
+
{%- else %}
|
| 168 |
+
{{- '<think>\n' }}
|
| 169 |
+
{%- endif %}
|
| 170 |
+
{%- endif %}
|
config.json
ADDED
|
@@ -0,0 +1,1694 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"architectures": [
|
| 3 |
+
"Qwen3_5ForConditionalGeneration"
|
| 4 |
+
],
|
| 5 |
+
"eos_token_id": [
|
| 6 |
+
248046,
|
| 7 |
+
248044
|
| 8 |
+
],
|
| 9 |
+
"image_token_id": 248056,
|
| 10 |
+
"language_model_only": false,
|
| 11 |
+
"model_type": "qwen3_5",
|
| 12 |
+
"quantization": {
|
| 13 |
+
"group_size": 64,
|
| 14 |
+
"bits": 4,
|
| 15 |
+
"mode": "affine"
|
| 16 |
+
},
|
| 17 |
+
"quantization_config": {
|
| 18 |
+
"group_size": 64,
|
| 19 |
+
"bits": 4,
|
| 20 |
+
"mode": "affine"
|
| 21 |
+
},
|
| 22 |
+
"text_config": {
|
| 23 |
+
"attention_bias": false,
|
| 24 |
+
"attention_dropout": 0.0,
|
| 25 |
+
"attn_output_gate": true,
|
| 26 |
+
"bos_token_id": 248044,
|
| 27 |
+
"dtype": "bfloat16",
|
| 28 |
+
"eos_token_id": 248044,
|
| 29 |
+
"full_attention_interval": 4,
|
| 30 |
+
"head_dim": 256,
|
| 31 |
+
"hidden_act": "silu",
|
| 32 |
+
"hidden_size": 5120,
|
| 33 |
+
"initializer_range": 0.02,
|
| 34 |
+
"intermediate_size": 17408,
|
| 35 |
+
"layer_types": [
|
| 36 |
+
"linear_attention",
|
| 37 |
+
"linear_attention",
|
| 38 |
+
"linear_attention",
|
| 39 |
+
"full_attention",
|
| 40 |
+
"linear_attention",
|
| 41 |
+
"linear_attention",
|
| 42 |
+
"linear_attention",
|
| 43 |
+
"full_attention",
|
| 44 |
+
"linear_attention",
|
| 45 |
+
"linear_attention",
|
| 46 |
+
"linear_attention",
|
| 47 |
+
"full_attention",
|
| 48 |
+
"linear_attention",
|
| 49 |
+
"linear_attention",
|
| 50 |
+
"linear_attention",
|
| 51 |
+
"full_attention",
|
| 52 |
+
"linear_attention",
|
| 53 |
+
"linear_attention",
|
| 54 |
+
"linear_attention",
|
| 55 |
+
"full_attention",
|
| 56 |
+
"linear_attention",
|
| 57 |
+
"linear_attention",
|
| 58 |
+
"linear_attention",
|
| 59 |
+
"full_attention",
|
| 60 |
+
"linear_attention",
|
| 61 |
+
"linear_attention",
|
| 62 |
+
"linear_attention",
|
| 63 |
+
"full_attention",
|
| 64 |
+
"linear_attention",
|
| 65 |
+
"linear_attention",
|
| 66 |
+
"linear_attention",
|
| 67 |
+
"full_attention",
|
| 68 |
+
"linear_attention",
|
| 69 |
+
"linear_attention",
|
| 70 |
+
"linear_attention",
|
| 71 |
+
"full_attention",
|
| 72 |
+
"linear_attention",
|
| 73 |
+
"linear_attention",
|
| 74 |
+
"linear_attention",
|
| 75 |
+
"full_attention",
|
| 76 |
+
"linear_attention",
|
| 77 |
+
"linear_attention",
|
| 78 |
+
"linear_attention",
|
| 79 |
+
"full_attention",
|
| 80 |
+
"linear_attention",
|
| 81 |
+
"linear_attention",
|
| 82 |
+
"linear_attention",
|
| 83 |
+
"full_attention",
|
| 84 |
+
"linear_attention",
|
| 85 |
+
"linear_attention",
|
| 86 |
+
"linear_attention",
|
| 87 |
+
"full_attention",
|
| 88 |
+
"linear_attention",
|
| 89 |
+
"linear_attention",
|
| 90 |
+
"linear_attention",
|
| 91 |
+
"full_attention",
|
| 92 |
+
"linear_attention",
|
| 93 |
+
"linear_attention",
|
| 94 |
+
"linear_attention",
|
| 95 |
+
"full_attention",
|
| 96 |
+
"linear_attention",
|
| 97 |
+
"linear_attention",
|
| 98 |
+
"linear_attention",
|
| 99 |
+
"full_attention"
|
| 100 |
+
],
|
| 101 |
+
"linear_conv_kernel_dim": 4,
|
| 102 |
+
"linear_key_head_dim": 128,
|
| 103 |
+
"linear_num_key_heads": 16,
|
| 104 |
+
"linear_num_value_heads": 48,
|
| 105 |
+
"linear_value_head_dim": 128,
|
| 106 |
+
"mamba_ssm_dtype": "float32",
|
| 107 |
+
"max_position_embeddings": 262144,
|
| 108 |
+
"model_type": "qwen3_5_text",
|
| 109 |
+
"mtp_num_hidden_layers": 1,
|
| 110 |
+
"mtp_use_dedicated_embeddings": false,
|
| 111 |
+
"num_attention_heads": 24,
|
| 112 |
+
"num_hidden_layers": 64,
|
| 113 |
+
"num_key_value_heads": 4,
|
| 114 |
+
"output_gate_type": "swish",
|
| 115 |
+
"pad_token_id": null,
|
| 116 |
+
"partial_rotary_factor": 0.25,
|
| 117 |
+
"rms_norm_eps": 1e-06,
|
| 118 |
+
"rope_parameters": {
|
| 119 |
+
"mrope_interleaved": true,
|
| 120 |
+
"mrope_section": [
|
| 121 |
+
11,
|
| 122 |
+
11,
|
| 123 |
+
10
|
| 124 |
+
],
|
| 125 |
+
"partial_rotary_factor": 0.25,
|
| 126 |
+
"rope_theta": 10000000,
|
| 127 |
+
"type": "default"
|
| 128 |
+
},
|
| 129 |
+
"tie_word_embeddings": false,
|
| 130 |
+
"use_cache": true,
|
| 131 |
+
"vocab_size": 248320
|
| 132 |
+
},
|
| 133 |
+
"tie_word_embeddings": false,
|
| 134 |
+
"transformers_version": "5.8.0.dev0",
|
| 135 |
+
"video_token_id": 248057,
|
| 136 |
+
"vision_end_token_id": 248054,
|
| 137 |
+
"vision_start_token_id": 248053,
|
| 138 |
+
"vq_linear": {
|
| 139 |
+
"language_model.model.layers.0.mlp.gate_proj": {
|
| 140 |
+
"experts": 1,
|
| 141 |
+
"out": 17408,
|
| 142 |
+
"in": 5120,
|
| 143 |
+
"k": 256,
|
| 144 |
+
"dim": 2,
|
| 145 |
+
"group": 64
|
| 146 |
+
},
|
| 147 |
+
"language_model.model.layers.0.mlp.up_proj": {
|
| 148 |
+
"experts": 1,
|
| 149 |
+
"out": 17408,
|
| 150 |
+
"in": 5120,
|
| 151 |
+
"k": 256,
|
| 152 |
+
"dim": 2,
|
| 153 |
+
"group": 64
|
| 154 |
+
},
|
| 155 |
+
"language_model.model.layers.0.mlp.down_proj": {
|
| 156 |
+
"experts": 1,
|
| 157 |
+
"out": 5120,
|
| 158 |
+
"in": 17408,
|
| 159 |
+
"k": 256,
|
| 160 |
+
"dim": 2,
|
| 161 |
+
"group": 64
|
| 162 |
+
},
|
| 163 |
+
"language_model.model.layers.1.mlp.gate_proj": {
|
| 164 |
+
"experts": 1,
|
| 165 |
+
"out": 17408,
|
| 166 |
+
"in": 5120,
|
| 167 |
+
"k": 256,
|
| 168 |
+
"dim": 2,
|
| 169 |
+
"group": 64
|
| 170 |
+
},
|
| 171 |
+
"language_model.model.layers.1.mlp.up_proj": {
|
| 172 |
+
"experts": 1,
|
| 173 |
+
"out": 17408,
|
| 174 |
+
"in": 5120,
|
| 175 |
+
"k": 256,
|
| 176 |
+
"dim": 2,
|
| 177 |
+
"group": 64
|
| 178 |
+
},
|
| 179 |
+
"language_model.model.layers.1.mlp.down_proj": {
|
| 180 |
+
"experts": 1,
|
| 181 |
+
"out": 5120,
|
| 182 |
+
"in": 17408,
|
| 183 |
+
"k": 256,
|
| 184 |
+
"dim": 2,
|
| 185 |
+
"group": 64
|
| 186 |
+
},
|
| 187 |
+
"language_model.model.layers.2.mlp.gate_proj": {
|
| 188 |
+
"experts": 1,
|
| 189 |
+
"out": 17408,
|
| 190 |
+
"in": 5120,
|
| 191 |
+
"k": 256,
|
| 192 |
+
"dim": 2,
|
| 193 |
+
"group": 64
|
| 194 |
+
},
|
| 195 |
+
"language_model.model.layers.2.mlp.up_proj": {
|
| 196 |
+
"experts": 1,
|
| 197 |
+
"out": 17408,
|
| 198 |
+
"in": 5120,
|
| 199 |
+
"k": 256,
|
| 200 |
+
"dim": 2,
|
| 201 |
+
"group": 64
|
| 202 |
+
},
|
| 203 |
+
"language_model.model.layers.2.mlp.down_proj": {
|
| 204 |
+
"experts": 1,
|
| 205 |
+
"out": 5120,
|
| 206 |
+
"in": 17408,
|
| 207 |
+
"k": 256,
|
| 208 |
+
"dim": 2,
|
| 209 |
+
"group": 64
|
| 210 |
+
},
|
| 211 |
+
"language_model.model.layers.3.mlp.gate_proj": {
|
| 212 |
+
"experts": 1,
|
| 213 |
+
"out": 17408,
|
| 214 |
+
"in": 5120,
|
| 215 |
+
"k": 256,
|
| 216 |
+
"dim": 2,
|
| 217 |
+
"group": 64
|
| 218 |
+
},
|
| 219 |
+
"language_model.model.layers.3.mlp.up_proj": {
|
| 220 |
+
"experts": 1,
|
| 221 |
+
"out": 17408,
|
| 222 |
+
"in": 5120,
|
| 223 |
+
"k": 256,
|
| 224 |
+
"dim": 2,
|
| 225 |
+
"group": 64
|
| 226 |
+
},
|
| 227 |
+
"language_model.model.layers.3.mlp.down_proj": {
|
| 228 |
+
"experts": 1,
|
| 229 |
+
"out": 5120,
|
| 230 |
+
"in": 17408,
|
| 231 |
+
"k": 256,
|
| 232 |
+
"dim": 2,
|
| 233 |
+
"group": 64
|
| 234 |
+
},
|
| 235 |
+
"language_model.model.layers.4.mlp.gate_proj": {
|
| 236 |
+
"experts": 1,
|
| 237 |
+
"out": 17408,
|
| 238 |
+
"in": 5120,
|
| 239 |
+
"k": 256,
|
| 240 |
+
"dim": 2,
|
| 241 |
+
"group": 64
|
| 242 |
+
},
|
| 243 |
+
"language_model.model.layers.4.mlp.up_proj": {
|
| 244 |
+
"experts": 1,
|
| 245 |
+
"out": 17408,
|
| 246 |
+
"in": 5120,
|
| 247 |
+
"k": 256,
|
| 248 |
+
"dim": 2,
|
| 249 |
+
"group": 64
|
| 250 |
+
},
|
| 251 |
+
"language_model.model.layers.4.mlp.down_proj": {
|
| 252 |
+
"experts": 1,
|
| 253 |
+
"out": 5120,
|
| 254 |
+
"in": 17408,
|
| 255 |
+
"k": 256,
|
| 256 |
+
"dim": 2,
|
| 257 |
+
"group": 64
|
| 258 |
+
},
|
| 259 |
+
"language_model.model.layers.5.mlp.gate_proj": {
|
| 260 |
+
"experts": 1,
|
| 261 |
+
"out": 17408,
|
| 262 |
+
"in": 5120,
|
| 263 |
+
"k": 256,
|
| 264 |
+
"dim": 2,
|
| 265 |
+
"group": 64
|
| 266 |
+
},
|
| 267 |
+
"language_model.model.layers.5.mlp.up_proj": {
|
| 268 |
+
"experts": 1,
|
| 269 |
+
"out": 17408,
|
| 270 |
+
"in": 5120,
|
| 271 |
+
"k": 256,
|
| 272 |
+
"dim": 2,
|
| 273 |
+
"group": 64
|
| 274 |
+
},
|
| 275 |
+
"language_model.model.layers.5.mlp.down_proj": {
|
| 276 |
+
"experts": 1,
|
| 277 |
+
"out": 5120,
|
| 278 |
+
"in": 17408,
|
| 279 |
+
"k": 256,
|
| 280 |
+
"dim": 2,
|
| 281 |
+
"group": 64
|
| 282 |
+
},
|
| 283 |
+
"language_model.model.layers.6.mlp.gate_proj": {
|
| 284 |
+
"experts": 1,
|
| 285 |
+
"out": 17408,
|
| 286 |
+
"in": 5120,
|
| 287 |
+
"k": 256,
|
| 288 |
+
"dim": 2,
|
| 289 |
+
"group": 64
|
| 290 |
+
},
|
| 291 |
+
"language_model.model.layers.6.mlp.up_proj": {
|
| 292 |
+
"experts": 1,
|
| 293 |
+
"out": 17408,
|
| 294 |
+
"in": 5120,
|
| 295 |
+
"k": 256,
|
| 296 |
+
"dim": 2,
|
| 297 |
+
"group": 64
|
| 298 |
+
},
|
| 299 |
+
"language_model.model.layers.6.mlp.down_proj": {
|
| 300 |
+
"experts": 1,
|
| 301 |
+
"out": 5120,
|
| 302 |
+
"in": 17408,
|
| 303 |
+
"k": 256,
|
| 304 |
+
"dim": 2,
|
| 305 |
+
"group": 64
|
| 306 |
+
},
|
| 307 |
+
"language_model.model.layers.7.mlp.gate_proj": {
|
| 308 |
+
"experts": 1,
|
| 309 |
+
"out": 17408,
|
| 310 |
+
"in": 5120,
|
| 311 |
+
"k": 256,
|
| 312 |
+
"dim": 2,
|
| 313 |
+
"group": 64
|
| 314 |
+
},
|
| 315 |
+
"language_model.model.layers.7.mlp.up_proj": {
|
| 316 |
+
"experts": 1,
|
| 317 |
+
"out": 17408,
|
| 318 |
+
"in": 5120,
|
| 319 |
+
"k": 256,
|
| 320 |
+
"dim": 2,
|
| 321 |
+
"group": 64
|
| 322 |
+
},
|
| 323 |
+
"language_model.model.layers.7.mlp.down_proj": {
|
| 324 |
+
"experts": 1,
|
| 325 |
+
"out": 5120,
|
| 326 |
+
"in": 17408,
|
| 327 |
+
"k": 256,
|
| 328 |
+
"dim": 2,
|
| 329 |
+
"group": 64
|
| 330 |
+
},
|
| 331 |
+
"language_model.model.layers.8.mlp.gate_proj": {
|
| 332 |
+
"experts": 1,
|
| 333 |
+
"out": 17408,
|
| 334 |
+
"in": 5120,
|
| 335 |
+
"k": 256,
|
| 336 |
+
"dim": 2,
|
| 337 |
+
"group": 64
|
| 338 |
+
},
|
| 339 |
+
"language_model.model.layers.8.mlp.up_proj": {
|
| 340 |
+
"experts": 1,
|
| 341 |
+
"out": 17408,
|
| 342 |
+
"in": 5120,
|
| 343 |
+
"k": 256,
|
| 344 |
+
"dim": 2,
|
| 345 |
+
"group": 64
|
| 346 |
+
},
|
| 347 |
+
"language_model.model.layers.8.mlp.down_proj": {
|
| 348 |
+
"experts": 1,
|
| 349 |
+
"out": 5120,
|
| 350 |
+
"in": 17408,
|
| 351 |
+
"k": 256,
|
| 352 |
+
"dim": 2,
|
| 353 |
+
"group": 64
|
| 354 |
+
},
|
| 355 |
+
"language_model.model.layers.9.mlp.gate_proj": {
|
| 356 |
+
"experts": 1,
|
| 357 |
+
"out": 17408,
|
| 358 |
+
"in": 5120,
|
| 359 |
+
"k": 256,
|
| 360 |
+
"dim": 2,
|
| 361 |
+
"group": 64
|
| 362 |
+
},
|
| 363 |
+
"language_model.model.layers.9.mlp.up_proj": {
|
| 364 |
+
"experts": 1,
|
| 365 |
+
"out": 17408,
|
| 366 |
+
"in": 5120,
|
| 367 |
+
"k": 256,
|
| 368 |
+
"dim": 2,
|
| 369 |
+
"group": 64
|
| 370 |
+
},
|
| 371 |
+
"language_model.model.layers.9.mlp.down_proj": {
|
| 372 |
+
"experts": 1,
|
| 373 |
+
"out": 5120,
|
| 374 |
+
"in": 17408,
|
| 375 |
+
"k": 256,
|
| 376 |
+
"dim": 2,
|
| 377 |
+
"group": 64
|
| 378 |
+
},
|
| 379 |
+
"language_model.model.layers.10.mlp.gate_proj": {
|
| 380 |
+
"experts": 1,
|
| 381 |
+
"out": 17408,
|
| 382 |
+
"in": 5120,
|
| 383 |
+
"k": 256,
|
| 384 |
+
"dim": 2,
|
| 385 |
+
"group": 64
|
| 386 |
+
},
|
| 387 |
+
"language_model.model.layers.10.mlp.up_proj": {
|
| 388 |
+
"experts": 1,
|
| 389 |
+
"out": 17408,
|
| 390 |
+
"in": 5120,
|
| 391 |
+
"k": 256,
|
| 392 |
+
"dim": 2,
|
| 393 |
+
"group": 64
|
| 394 |
+
},
|
| 395 |
+
"language_model.model.layers.10.mlp.down_proj": {
|
| 396 |
+
"experts": 1,
|
| 397 |
+
"out": 5120,
|
| 398 |
+
"in": 17408,
|
| 399 |
+
"k": 256,
|
| 400 |
+
"dim": 2,
|
| 401 |
+
"group": 64
|
| 402 |
+
},
|
| 403 |
+
"language_model.model.layers.11.mlp.gate_proj": {
|
| 404 |
+
"experts": 1,
|
| 405 |
+
"out": 17408,
|
| 406 |
+
"in": 5120,
|
| 407 |
+
"k": 256,
|
| 408 |
+
"dim": 2,
|
| 409 |
+
"group": 64
|
| 410 |
+
},
|
| 411 |
+
"language_model.model.layers.11.mlp.up_proj": {
|
| 412 |
+
"experts": 1,
|
| 413 |
+
"out": 17408,
|
| 414 |
+
"in": 5120,
|
| 415 |
+
"k": 256,
|
| 416 |
+
"dim": 2,
|
| 417 |
+
"group": 64
|
| 418 |
+
},
|
| 419 |
+
"language_model.model.layers.11.mlp.down_proj": {
|
| 420 |
+
"experts": 1,
|
| 421 |
+
"out": 5120,
|
| 422 |
+
"in": 17408,
|
| 423 |
+
"k": 256,
|
| 424 |
+
"dim": 2,
|
| 425 |
+
"group": 64
|
| 426 |
+
},
|
| 427 |
+
"language_model.model.layers.12.mlp.gate_proj": {
|
| 428 |
+
"experts": 1,
|
| 429 |
+
"out": 17408,
|
| 430 |
+
"in": 5120,
|
| 431 |
+
"k": 256,
|
| 432 |
+
"dim": 2,
|
| 433 |
+
"group": 64
|
| 434 |
+
},
|
| 435 |
+
"language_model.model.layers.12.mlp.up_proj": {
|
| 436 |
+
"experts": 1,
|
| 437 |
+
"out": 17408,
|
| 438 |
+
"in": 5120,
|
| 439 |
+
"k": 256,
|
| 440 |
+
"dim": 2,
|
| 441 |
+
"group": 64
|
| 442 |
+
},
|
| 443 |
+
"language_model.model.layers.12.mlp.down_proj": {
|
| 444 |
+
"experts": 1,
|
| 445 |
+
"out": 5120,
|
| 446 |
+
"in": 17408,
|
| 447 |
+
"k": 256,
|
| 448 |
+
"dim": 2,
|
| 449 |
+
"group": 64
|
| 450 |
+
},
|
| 451 |
+
"language_model.model.layers.13.mlp.gate_proj": {
|
| 452 |
+
"experts": 1,
|
| 453 |
+
"out": 17408,
|
| 454 |
+
"in": 5120,
|
| 455 |
+
"k": 256,
|
| 456 |
+
"dim": 2,
|
| 457 |
+
"group": 64
|
| 458 |
+
},
|
| 459 |
+
"language_model.model.layers.13.mlp.up_proj": {
|
| 460 |
+
"experts": 1,
|
| 461 |
+
"out": 17408,
|
| 462 |
+
"in": 5120,
|
| 463 |
+
"k": 256,
|
| 464 |
+
"dim": 2,
|
| 465 |
+
"group": 64
|
| 466 |
+
},
|
| 467 |
+
"language_model.model.layers.13.mlp.down_proj": {
|
| 468 |
+
"experts": 1,
|
| 469 |
+
"out": 5120,
|
| 470 |
+
"in": 17408,
|
| 471 |
+
"k": 256,
|
| 472 |
+
"dim": 2,
|
| 473 |
+
"group": 64
|
| 474 |
+
},
|
| 475 |
+
"language_model.model.layers.14.mlp.gate_proj": {
|
| 476 |
+
"experts": 1,
|
| 477 |
+
"out": 17408,
|
| 478 |
+
"in": 5120,
|
| 479 |
+
"k": 256,
|
| 480 |
+
"dim": 2,
|
| 481 |
+
"group": 64
|
| 482 |
+
},
|
| 483 |
+
"language_model.model.layers.14.mlp.up_proj": {
|
| 484 |
+
"experts": 1,
|
| 485 |
+
"out": 17408,
|
| 486 |
+
"in": 5120,
|
| 487 |
+
"k": 256,
|
| 488 |
+
"dim": 2,
|
| 489 |
+
"group": 64
|
| 490 |
+
},
|
| 491 |
+
"language_model.model.layers.14.mlp.down_proj": {
|
| 492 |
+
"experts": 1,
|
| 493 |
+
"out": 5120,
|
| 494 |
+
"in": 17408,
|
| 495 |
+
"k": 256,
|
| 496 |
+
"dim": 2,
|
| 497 |
+
"group": 64
|
| 498 |
+
},
|
| 499 |
+
"language_model.model.layers.15.mlp.gate_proj": {
|
| 500 |
+
"experts": 1,
|
| 501 |
+
"out": 17408,
|
| 502 |
+
"in": 5120,
|
| 503 |
+
"k": 256,
|
| 504 |
+
"dim": 2,
|
| 505 |
+
"group": 64
|
| 506 |
+
},
|
| 507 |
+
"language_model.model.layers.15.mlp.up_proj": {
|
| 508 |
+
"experts": 1,
|
| 509 |
+
"out": 17408,
|
| 510 |
+
"in": 5120,
|
| 511 |
+
"k": 256,
|
| 512 |
+
"dim": 2,
|
| 513 |
+
"group": 64
|
| 514 |
+
},
|
| 515 |
+
"language_model.model.layers.15.mlp.down_proj": {
|
| 516 |
+
"experts": 1,
|
| 517 |
+
"out": 5120,
|
| 518 |
+
"in": 17408,
|
| 519 |
+
"k": 256,
|
| 520 |
+
"dim": 2,
|
| 521 |
+
"group": 64
|
| 522 |
+
},
|
| 523 |
+
"language_model.model.layers.16.mlp.gate_proj": {
|
| 524 |
+
"experts": 1,
|
| 525 |
+
"out": 17408,
|
| 526 |
+
"in": 5120,
|
| 527 |
+
"k": 256,
|
| 528 |
+
"dim": 2,
|
| 529 |
+
"group": 64
|
| 530 |
+
},
|
| 531 |
+
"language_model.model.layers.16.mlp.up_proj": {
|
| 532 |
+
"experts": 1,
|
| 533 |
+
"out": 17408,
|
| 534 |
+
"in": 5120,
|
| 535 |
+
"k": 256,
|
| 536 |
+
"dim": 2,
|
| 537 |
+
"group": 64
|
| 538 |
+
},
|
| 539 |
+
"language_model.model.layers.16.mlp.down_proj": {
|
| 540 |
+
"experts": 1,
|
| 541 |
+
"out": 5120,
|
| 542 |
+
"in": 17408,
|
| 543 |
+
"k": 256,
|
| 544 |
+
"dim": 2,
|
| 545 |
+
"group": 64
|
| 546 |
+
},
|
| 547 |
+
"language_model.model.layers.17.mlp.gate_proj": {
|
| 548 |
+
"experts": 1,
|
| 549 |
+
"out": 17408,
|
| 550 |
+
"in": 5120,
|
| 551 |
+
"k": 256,
|
| 552 |
+
"dim": 2,
|
| 553 |
+
"group": 64
|
| 554 |
+
},
|
| 555 |
+
"language_model.model.layers.17.mlp.up_proj": {
|
| 556 |
+
"experts": 1,
|
| 557 |
+
"out": 17408,
|
| 558 |
+
"in": 5120,
|
| 559 |
+
"k": 256,
|
| 560 |
+
"dim": 2,
|
| 561 |
+
"group": 64
|
| 562 |
+
},
|
| 563 |
+
"language_model.model.layers.17.mlp.down_proj": {
|
| 564 |
+
"experts": 1,
|
| 565 |
+
"out": 5120,
|
| 566 |
+
"in": 17408,
|
| 567 |
+
"k": 256,
|
| 568 |
+
"dim": 2,
|
| 569 |
+
"group": 64
|
| 570 |
+
},
|
| 571 |
+
"language_model.model.layers.18.mlp.gate_proj": {
|
| 572 |
+
"experts": 1,
|
| 573 |
+
"out": 17408,
|
| 574 |
+
"in": 5120,
|
| 575 |
+
"k": 256,
|
| 576 |
+
"dim": 2,
|
| 577 |
+
"group": 64
|
| 578 |
+
},
|
| 579 |
+
"language_model.model.layers.18.mlp.up_proj": {
|
| 580 |
+
"experts": 1,
|
| 581 |
+
"out": 17408,
|
| 582 |
+
"in": 5120,
|
| 583 |
+
"k": 256,
|
| 584 |
+
"dim": 2,
|
| 585 |
+
"group": 64
|
| 586 |
+
},
|
| 587 |
+
"language_model.model.layers.18.mlp.down_proj": {
|
| 588 |
+
"experts": 1,
|
| 589 |
+
"out": 5120,
|
| 590 |
+
"in": 17408,
|
| 591 |
+
"k": 256,
|
| 592 |
+
"dim": 2,
|
| 593 |
+
"group": 64
|
| 594 |
+
},
|
| 595 |
+
"language_model.model.layers.19.mlp.gate_proj": {
|
| 596 |
+
"experts": 1,
|
| 597 |
+
"out": 17408,
|
| 598 |
+
"in": 5120,
|
| 599 |
+
"k": 256,
|
| 600 |
+
"dim": 2,
|
| 601 |
+
"group": 64
|
| 602 |
+
},
|
| 603 |
+
"language_model.model.layers.19.mlp.up_proj": {
|
| 604 |
+
"experts": 1,
|
| 605 |
+
"out": 17408,
|
| 606 |
+
"in": 5120,
|
| 607 |
+
"k": 256,
|
| 608 |
+
"dim": 2,
|
| 609 |
+
"group": 64
|
| 610 |
+
},
|
| 611 |
+
"language_model.model.layers.19.mlp.down_proj": {
|
| 612 |
+
"experts": 1,
|
| 613 |
+
"out": 5120,
|
| 614 |
+
"in": 17408,
|
| 615 |
+
"k": 256,
|
| 616 |
+
"dim": 2,
|
| 617 |
+
"group": 64
|
| 618 |
+
},
|
| 619 |
+
"language_model.model.layers.20.mlp.gate_proj": {
|
| 620 |
+
"experts": 1,
|
| 621 |
+
"out": 17408,
|
| 622 |
+
"in": 5120,
|
| 623 |
+
"k": 256,
|
| 624 |
+
"dim": 2,
|
| 625 |
+
"group": 64
|
| 626 |
+
},
|
| 627 |
+
"language_model.model.layers.20.mlp.up_proj": {
|
| 628 |
+
"experts": 1,
|
| 629 |
+
"out": 17408,
|
| 630 |
+
"in": 5120,
|
| 631 |
+
"k": 256,
|
| 632 |
+
"dim": 2,
|
| 633 |
+
"group": 64
|
| 634 |
+
},
|
| 635 |
+
"language_model.model.layers.20.mlp.down_proj": {
|
| 636 |
+
"experts": 1,
|
| 637 |
+
"out": 5120,
|
| 638 |
+
"in": 17408,
|
| 639 |
+
"k": 256,
|
| 640 |
+
"dim": 2,
|
| 641 |
+
"group": 64
|
| 642 |
+
},
|
| 643 |
+
"language_model.model.layers.21.mlp.gate_proj": {
|
| 644 |
+
"experts": 1,
|
| 645 |
+
"out": 17408,
|
| 646 |
+
"in": 5120,
|
| 647 |
+
"k": 256,
|
| 648 |
+
"dim": 2,
|
| 649 |
+
"group": 64
|
| 650 |
+
},
|
| 651 |
+
"language_model.model.layers.21.mlp.up_proj": {
|
| 652 |
+
"experts": 1,
|
| 653 |
+
"out": 17408,
|
| 654 |
+
"in": 5120,
|
| 655 |
+
"k": 256,
|
| 656 |
+
"dim": 2,
|
| 657 |
+
"group": 64
|
| 658 |
+
},
|
| 659 |
+
"language_model.model.layers.21.mlp.down_proj": {
|
| 660 |
+
"experts": 1,
|
| 661 |
+
"out": 5120,
|
| 662 |
+
"in": 17408,
|
| 663 |
+
"k": 256,
|
| 664 |
+
"dim": 2,
|
| 665 |
+
"group": 64
|
| 666 |
+
},
|
| 667 |
+
"language_model.model.layers.22.mlp.gate_proj": {
|
| 668 |
+
"experts": 1,
|
| 669 |
+
"out": 17408,
|
| 670 |
+
"in": 5120,
|
| 671 |
+
"k": 256,
|
| 672 |
+
"dim": 2,
|
| 673 |
+
"group": 64
|
| 674 |
+
},
|
| 675 |
+
"language_model.model.layers.22.mlp.up_proj": {
|
| 676 |
+
"experts": 1,
|
| 677 |
+
"out": 17408,
|
| 678 |
+
"in": 5120,
|
| 679 |
+
"k": 256,
|
| 680 |
+
"dim": 2,
|
| 681 |
+
"group": 64
|
| 682 |
+
},
|
| 683 |
+
"language_model.model.layers.22.mlp.down_proj": {
|
| 684 |
+
"experts": 1,
|
| 685 |
+
"out": 5120,
|
| 686 |
+
"in": 17408,
|
| 687 |
+
"k": 256,
|
| 688 |
+
"dim": 2,
|
| 689 |
+
"group": 64
|
| 690 |
+
},
|
| 691 |
+
"language_model.model.layers.23.mlp.gate_proj": {
|
| 692 |
+
"experts": 1,
|
| 693 |
+
"out": 17408,
|
| 694 |
+
"in": 5120,
|
| 695 |
+
"k": 256,
|
| 696 |
+
"dim": 2,
|
| 697 |
+
"group": 64
|
| 698 |
+
},
|
| 699 |
+
"language_model.model.layers.23.mlp.up_proj": {
|
| 700 |
+
"experts": 1,
|
| 701 |
+
"out": 17408,
|
| 702 |
+
"in": 5120,
|
| 703 |
+
"k": 256,
|
| 704 |
+
"dim": 2,
|
| 705 |
+
"group": 64
|
| 706 |
+
},
|
| 707 |
+
"language_model.model.layers.23.mlp.down_proj": {
|
| 708 |
+
"experts": 1,
|
| 709 |
+
"out": 5120,
|
| 710 |
+
"in": 17408,
|
| 711 |
+
"k": 256,
|
| 712 |
+
"dim": 2,
|
| 713 |
+
"group": 64
|
| 714 |
+
},
|
| 715 |
+
"language_model.model.layers.24.mlp.gate_proj": {
|
| 716 |
+
"experts": 1,
|
| 717 |
+
"out": 17408,
|
| 718 |
+
"in": 5120,
|
| 719 |
+
"k": 256,
|
| 720 |
+
"dim": 2,
|
| 721 |
+
"group": 64
|
| 722 |
+
},
|
| 723 |
+
"language_model.model.layers.24.mlp.up_proj": {
|
| 724 |
+
"experts": 1,
|
| 725 |
+
"out": 17408,
|
| 726 |
+
"in": 5120,
|
| 727 |
+
"k": 256,
|
| 728 |
+
"dim": 2,
|
| 729 |
+
"group": 64
|
| 730 |
+
},
|
| 731 |
+
"language_model.model.layers.24.mlp.down_proj": {
|
| 732 |
+
"experts": 1,
|
| 733 |
+
"out": 5120,
|
| 734 |
+
"in": 17408,
|
| 735 |
+
"k": 256,
|
| 736 |
+
"dim": 2,
|
| 737 |
+
"group": 64
|
| 738 |
+
},
|
| 739 |
+
"language_model.model.layers.25.mlp.gate_proj": {
|
| 740 |
+
"experts": 1,
|
| 741 |
+
"out": 17408,
|
| 742 |
+
"in": 5120,
|
| 743 |
+
"k": 256,
|
| 744 |
+
"dim": 2,
|
| 745 |
+
"group": 64
|
| 746 |
+
},
|
| 747 |
+
"language_model.model.layers.25.mlp.up_proj": {
|
| 748 |
+
"experts": 1,
|
| 749 |
+
"out": 17408,
|
| 750 |
+
"in": 5120,
|
| 751 |
+
"k": 256,
|
| 752 |
+
"dim": 2,
|
| 753 |
+
"group": 64
|
| 754 |
+
},
|
| 755 |
+
"language_model.model.layers.25.mlp.down_proj": {
|
| 756 |
+
"experts": 1,
|
| 757 |
+
"out": 5120,
|
| 758 |
+
"in": 17408,
|
| 759 |
+
"k": 256,
|
| 760 |
+
"dim": 2,
|
| 761 |
+
"group": 64
|
| 762 |
+
},
|
| 763 |
+
"language_model.model.layers.26.mlp.gate_proj": {
|
| 764 |
+
"experts": 1,
|
| 765 |
+
"out": 17408,
|
| 766 |
+
"in": 5120,
|
| 767 |
+
"k": 256,
|
| 768 |
+
"dim": 2,
|
| 769 |
+
"group": 64
|
| 770 |
+
},
|
| 771 |
+
"language_model.model.layers.26.mlp.up_proj": {
|
| 772 |
+
"experts": 1,
|
| 773 |
+
"out": 17408,
|
| 774 |
+
"in": 5120,
|
| 775 |
+
"k": 256,
|
| 776 |
+
"dim": 2,
|
| 777 |
+
"group": 64
|
| 778 |
+
},
|
| 779 |
+
"language_model.model.layers.26.mlp.down_proj": {
|
| 780 |
+
"experts": 1,
|
| 781 |
+
"out": 5120,
|
| 782 |
+
"in": 17408,
|
| 783 |
+
"k": 256,
|
| 784 |
+
"dim": 2,
|
| 785 |
+
"group": 64
|
| 786 |
+
},
|
| 787 |
+
"language_model.model.layers.27.mlp.gate_proj": {
|
| 788 |
+
"experts": 1,
|
| 789 |
+
"out": 17408,
|
| 790 |
+
"in": 5120,
|
| 791 |
+
"k": 256,
|
| 792 |
+
"dim": 2,
|
| 793 |
+
"group": 64
|
| 794 |
+
},
|
| 795 |
+
"language_model.model.layers.27.mlp.up_proj": {
|
| 796 |
+
"experts": 1,
|
| 797 |
+
"out": 17408,
|
| 798 |
+
"in": 5120,
|
| 799 |
+
"k": 256,
|
| 800 |
+
"dim": 2,
|
| 801 |
+
"group": 64
|
| 802 |
+
},
|
| 803 |
+
"language_model.model.layers.27.mlp.down_proj": {
|
| 804 |
+
"experts": 1,
|
| 805 |
+
"out": 5120,
|
| 806 |
+
"in": 17408,
|
| 807 |
+
"k": 256,
|
| 808 |
+
"dim": 2,
|
| 809 |
+
"group": 64
|
| 810 |
+
},
|
| 811 |
+
"language_model.model.layers.28.mlp.gate_proj": {
|
| 812 |
+
"experts": 1,
|
| 813 |
+
"out": 17408,
|
| 814 |
+
"in": 5120,
|
| 815 |
+
"k": 256,
|
| 816 |
+
"dim": 2,
|
| 817 |
+
"group": 64
|
| 818 |
+
},
|
| 819 |
+
"language_model.model.layers.28.mlp.up_proj": {
|
| 820 |
+
"experts": 1,
|
| 821 |
+
"out": 17408,
|
| 822 |
+
"in": 5120,
|
| 823 |
+
"k": 256,
|
| 824 |
+
"dim": 2,
|
| 825 |
+
"group": 64
|
| 826 |
+
},
|
| 827 |
+
"language_model.model.layers.28.mlp.down_proj": {
|
| 828 |
+
"experts": 1,
|
| 829 |
+
"out": 5120,
|
| 830 |
+
"in": 17408,
|
| 831 |
+
"k": 256,
|
| 832 |
+
"dim": 2,
|
| 833 |
+
"group": 64
|
| 834 |
+
},
|
| 835 |
+
"language_model.model.layers.29.mlp.gate_proj": {
|
| 836 |
+
"experts": 1,
|
| 837 |
+
"out": 17408,
|
| 838 |
+
"in": 5120,
|
| 839 |
+
"k": 256,
|
| 840 |
+
"dim": 2,
|
| 841 |
+
"group": 64
|
| 842 |
+
},
|
| 843 |
+
"language_model.model.layers.29.mlp.up_proj": {
|
| 844 |
+
"experts": 1,
|
| 845 |
+
"out": 17408,
|
| 846 |
+
"in": 5120,
|
| 847 |
+
"k": 256,
|
| 848 |
+
"dim": 2,
|
| 849 |
+
"group": 64
|
| 850 |
+
},
|
| 851 |
+
"language_model.model.layers.29.mlp.down_proj": {
|
| 852 |
+
"experts": 1,
|
| 853 |
+
"out": 5120,
|
| 854 |
+
"in": 17408,
|
| 855 |
+
"k": 256,
|
| 856 |
+
"dim": 2,
|
| 857 |
+
"group": 64
|
| 858 |
+
},
|
| 859 |
+
"language_model.model.layers.30.mlp.gate_proj": {
|
| 860 |
+
"experts": 1,
|
| 861 |
+
"out": 17408,
|
| 862 |
+
"in": 5120,
|
| 863 |
+
"k": 256,
|
| 864 |
+
"dim": 2,
|
| 865 |
+
"group": 64
|
| 866 |
+
},
|
| 867 |
+
"language_model.model.layers.30.mlp.up_proj": {
|
| 868 |
+
"experts": 1,
|
| 869 |
+
"out": 17408,
|
| 870 |
+
"in": 5120,
|
| 871 |
+
"k": 256,
|
| 872 |
+
"dim": 2,
|
| 873 |
+
"group": 64
|
| 874 |
+
},
|
| 875 |
+
"language_model.model.layers.30.mlp.down_proj": {
|
| 876 |
+
"experts": 1,
|
| 877 |
+
"out": 5120,
|
| 878 |
+
"in": 17408,
|
| 879 |
+
"k": 256,
|
| 880 |
+
"dim": 2,
|
| 881 |
+
"group": 64
|
| 882 |
+
},
|
| 883 |
+
"language_model.model.layers.31.mlp.gate_proj": {
|
| 884 |
+
"experts": 1,
|
| 885 |
+
"out": 17408,
|
| 886 |
+
"in": 5120,
|
| 887 |
+
"k": 256,
|
| 888 |
+
"dim": 2,
|
| 889 |
+
"group": 64
|
| 890 |
+
},
|
| 891 |
+
"language_model.model.layers.31.mlp.up_proj": {
|
| 892 |
+
"experts": 1,
|
| 893 |
+
"out": 17408,
|
| 894 |
+
"in": 5120,
|
| 895 |
+
"k": 256,
|
| 896 |
+
"dim": 2,
|
| 897 |
+
"group": 64
|
| 898 |
+
},
|
| 899 |
+
"language_model.model.layers.31.mlp.down_proj": {
|
| 900 |
+
"experts": 1,
|
| 901 |
+
"out": 5120,
|
| 902 |
+
"in": 17408,
|
| 903 |
+
"k": 256,
|
| 904 |
+
"dim": 2,
|
| 905 |
+
"group": 64
|
| 906 |
+
},
|
| 907 |
+
"language_model.model.layers.32.mlp.gate_proj": {
|
| 908 |
+
"experts": 1,
|
| 909 |
+
"out": 17408,
|
| 910 |
+
"in": 5120,
|
| 911 |
+
"k": 256,
|
| 912 |
+
"dim": 2,
|
| 913 |
+
"group": 64
|
| 914 |
+
},
|
| 915 |
+
"language_model.model.layers.32.mlp.up_proj": {
|
| 916 |
+
"experts": 1,
|
| 917 |
+
"out": 17408,
|
| 918 |
+
"in": 5120,
|
| 919 |
+
"k": 256,
|
| 920 |
+
"dim": 2,
|
| 921 |
+
"group": 64
|
| 922 |
+
},
|
| 923 |
+
"language_model.model.layers.32.mlp.down_proj": {
|
| 924 |
+
"experts": 1,
|
| 925 |
+
"out": 5120,
|
| 926 |
+
"in": 17408,
|
| 927 |
+
"k": 256,
|
| 928 |
+
"dim": 2,
|
| 929 |
+
"group": 64
|
| 930 |
+
},
|
| 931 |
+
"language_model.model.layers.33.mlp.gate_proj": {
|
| 932 |
+
"experts": 1,
|
| 933 |
+
"out": 17408,
|
| 934 |
+
"in": 5120,
|
| 935 |
+
"k": 256,
|
| 936 |
+
"dim": 2,
|
| 937 |
+
"group": 64
|
| 938 |
+
},
|
| 939 |
+
"language_model.model.layers.33.mlp.up_proj": {
|
| 940 |
+
"experts": 1,
|
| 941 |
+
"out": 17408,
|
| 942 |
+
"in": 5120,
|
| 943 |
+
"k": 256,
|
| 944 |
+
"dim": 2,
|
| 945 |
+
"group": 64
|
| 946 |
+
},
|
| 947 |
+
"language_model.model.layers.33.mlp.down_proj": {
|
| 948 |
+
"experts": 1,
|
| 949 |
+
"out": 5120,
|
| 950 |
+
"in": 17408,
|
| 951 |
+
"k": 256,
|
| 952 |
+
"dim": 2,
|
| 953 |
+
"group": 64
|
| 954 |
+
},
|
| 955 |
+
"language_model.model.layers.34.mlp.gate_proj": {
|
| 956 |
+
"experts": 1,
|
| 957 |
+
"out": 17408,
|
| 958 |
+
"in": 5120,
|
| 959 |
+
"k": 256,
|
| 960 |
+
"dim": 2,
|
| 961 |
+
"group": 64
|
| 962 |
+
},
|
| 963 |
+
"language_model.model.layers.34.mlp.up_proj": {
|
| 964 |
+
"experts": 1,
|
| 965 |
+
"out": 17408,
|
| 966 |
+
"in": 5120,
|
| 967 |
+
"k": 256,
|
| 968 |
+
"dim": 2,
|
| 969 |
+
"group": 64
|
| 970 |
+
},
|
| 971 |
+
"language_model.model.layers.34.mlp.down_proj": {
|
| 972 |
+
"experts": 1,
|
| 973 |
+
"out": 5120,
|
| 974 |
+
"in": 17408,
|
| 975 |
+
"k": 256,
|
| 976 |
+
"dim": 2,
|
| 977 |
+
"group": 64
|
| 978 |
+
},
|
| 979 |
+
"language_model.model.layers.35.mlp.gate_proj": {
|
| 980 |
+
"experts": 1,
|
| 981 |
+
"out": 17408,
|
| 982 |
+
"in": 5120,
|
| 983 |
+
"k": 256,
|
| 984 |
+
"dim": 2,
|
| 985 |
+
"group": 64
|
| 986 |
+
},
|
| 987 |
+
"language_model.model.layers.35.mlp.up_proj": {
|
| 988 |
+
"experts": 1,
|
| 989 |
+
"out": 17408,
|
| 990 |
+
"in": 5120,
|
| 991 |
+
"k": 256,
|
| 992 |
+
"dim": 2,
|
| 993 |
+
"group": 64
|
| 994 |
+
},
|
| 995 |
+
"language_model.model.layers.35.mlp.down_proj": {
|
| 996 |
+
"experts": 1,
|
| 997 |
+
"out": 5120,
|
| 998 |
+
"in": 17408,
|
| 999 |
+
"k": 256,
|
| 1000 |
+
"dim": 2,
|
| 1001 |
+
"group": 64
|
| 1002 |
+
},
|
| 1003 |
+
"language_model.model.layers.36.mlp.gate_proj": {
|
| 1004 |
+
"experts": 1,
|
| 1005 |
+
"out": 17408,
|
| 1006 |
+
"in": 5120,
|
| 1007 |
+
"k": 256,
|
| 1008 |
+
"dim": 2,
|
| 1009 |
+
"group": 64
|
| 1010 |
+
},
|
| 1011 |
+
"language_model.model.layers.36.mlp.up_proj": {
|
| 1012 |
+
"experts": 1,
|
| 1013 |
+
"out": 17408,
|
| 1014 |
+
"in": 5120,
|
| 1015 |
+
"k": 256,
|
| 1016 |
+
"dim": 2,
|
| 1017 |
+
"group": 64
|
| 1018 |
+
},
|
| 1019 |
+
"language_model.model.layers.36.mlp.down_proj": {
|
| 1020 |
+
"experts": 1,
|
| 1021 |
+
"out": 5120,
|
| 1022 |
+
"in": 17408,
|
| 1023 |
+
"k": 256,
|
| 1024 |
+
"dim": 2,
|
| 1025 |
+
"group": 64
|
| 1026 |
+
},
|
| 1027 |
+
"language_model.model.layers.37.mlp.gate_proj": {
|
| 1028 |
+
"experts": 1,
|
| 1029 |
+
"out": 17408,
|
| 1030 |
+
"in": 5120,
|
| 1031 |
+
"k": 256,
|
| 1032 |
+
"dim": 2,
|
| 1033 |
+
"group": 64
|
| 1034 |
+
},
|
| 1035 |
+
"language_model.model.layers.37.mlp.up_proj": {
|
| 1036 |
+
"experts": 1,
|
| 1037 |
+
"out": 17408,
|
| 1038 |
+
"in": 5120,
|
| 1039 |
+
"k": 256,
|
| 1040 |
+
"dim": 2,
|
| 1041 |
+
"group": 64
|
| 1042 |
+
},
|
| 1043 |
+
"language_model.model.layers.37.mlp.down_proj": {
|
| 1044 |
+
"experts": 1,
|
| 1045 |
+
"out": 5120,
|
| 1046 |
+
"in": 17408,
|
| 1047 |
+
"k": 256,
|
| 1048 |
+
"dim": 2,
|
| 1049 |
+
"group": 64
|
| 1050 |
+
},
|
| 1051 |
+
"language_model.model.layers.38.mlp.gate_proj": {
|
| 1052 |
+
"experts": 1,
|
| 1053 |
+
"out": 17408,
|
| 1054 |
+
"in": 5120,
|
| 1055 |
+
"k": 256,
|
| 1056 |
+
"dim": 2,
|
| 1057 |
+
"group": 64
|
| 1058 |
+
},
|
| 1059 |
+
"language_model.model.layers.38.mlp.up_proj": {
|
| 1060 |
+
"experts": 1,
|
| 1061 |
+
"out": 17408,
|
| 1062 |
+
"in": 5120,
|
| 1063 |
+
"k": 256,
|
| 1064 |
+
"dim": 2,
|
| 1065 |
+
"group": 64
|
| 1066 |
+
},
|
| 1067 |
+
"language_model.model.layers.38.mlp.down_proj": {
|
| 1068 |
+
"experts": 1,
|
| 1069 |
+
"out": 5120,
|
| 1070 |
+
"in": 17408,
|
| 1071 |
+
"k": 256,
|
| 1072 |
+
"dim": 2,
|
| 1073 |
+
"group": 64
|
| 1074 |
+
},
|
| 1075 |
+
"language_model.model.layers.39.mlp.gate_proj": {
|
| 1076 |
+
"experts": 1,
|
| 1077 |
+
"out": 17408,
|
| 1078 |
+
"in": 5120,
|
| 1079 |
+
"k": 256,
|
| 1080 |
+
"dim": 2,
|
| 1081 |
+
"group": 64
|
| 1082 |
+
},
|
| 1083 |
+
"language_model.model.layers.39.mlp.up_proj": {
|
| 1084 |
+
"experts": 1,
|
| 1085 |
+
"out": 17408,
|
| 1086 |
+
"in": 5120,
|
| 1087 |
+
"k": 256,
|
| 1088 |
+
"dim": 2,
|
| 1089 |
+
"group": 64
|
| 1090 |
+
},
|
| 1091 |
+
"language_model.model.layers.39.mlp.down_proj": {
|
| 1092 |
+
"experts": 1,
|
| 1093 |
+
"out": 5120,
|
| 1094 |
+
"in": 17408,
|
| 1095 |
+
"k": 256,
|
| 1096 |
+
"dim": 2,
|
| 1097 |
+
"group": 64
|
| 1098 |
+
},
|
| 1099 |
+
"language_model.model.layers.40.mlp.gate_proj": {
|
| 1100 |
+
"experts": 1,
|
| 1101 |
+
"out": 17408,
|
| 1102 |
+
"in": 5120,
|
| 1103 |
+
"k": 256,
|
| 1104 |
+
"dim": 2,
|
| 1105 |
+
"group": 64
|
| 1106 |
+
},
|
| 1107 |
+
"language_model.model.layers.40.mlp.up_proj": {
|
| 1108 |
+
"experts": 1,
|
| 1109 |
+
"out": 17408,
|
| 1110 |
+
"in": 5120,
|
| 1111 |
+
"k": 256,
|
| 1112 |
+
"dim": 2,
|
| 1113 |
+
"group": 64
|
| 1114 |
+
},
|
| 1115 |
+
"language_model.model.layers.40.mlp.down_proj": {
|
| 1116 |
+
"experts": 1,
|
| 1117 |
+
"out": 5120,
|
| 1118 |
+
"in": 17408,
|
| 1119 |
+
"k": 256,
|
| 1120 |
+
"dim": 2,
|
| 1121 |
+
"group": 64
|
| 1122 |
+
},
|
| 1123 |
+
"language_model.model.layers.41.mlp.gate_proj": {
|
| 1124 |
+
"experts": 1,
|
| 1125 |
+
"out": 17408,
|
| 1126 |
+
"in": 5120,
|
| 1127 |
+
"k": 256,
|
| 1128 |
+
"dim": 2,
|
| 1129 |
+
"group": 64
|
| 1130 |
+
},
|
| 1131 |
+
"language_model.model.layers.41.mlp.up_proj": {
|
| 1132 |
+
"experts": 1,
|
| 1133 |
+
"out": 17408,
|
| 1134 |
+
"in": 5120,
|
| 1135 |
+
"k": 256,
|
| 1136 |
+
"dim": 2,
|
| 1137 |
+
"group": 64
|
| 1138 |
+
},
|
| 1139 |
+
"language_model.model.layers.41.mlp.down_proj": {
|
| 1140 |
+
"experts": 1,
|
| 1141 |
+
"out": 5120,
|
| 1142 |
+
"in": 17408,
|
| 1143 |
+
"k": 256,
|
| 1144 |
+
"dim": 2,
|
| 1145 |
+
"group": 64
|
| 1146 |
+
},
|
| 1147 |
+
"language_model.model.layers.42.mlp.gate_proj": {
|
| 1148 |
+
"experts": 1,
|
| 1149 |
+
"out": 17408,
|
| 1150 |
+
"in": 5120,
|
| 1151 |
+
"k": 256,
|
| 1152 |
+
"dim": 2,
|
| 1153 |
+
"group": 64
|
| 1154 |
+
},
|
| 1155 |
+
"language_model.model.layers.42.mlp.up_proj": {
|
| 1156 |
+
"experts": 1,
|
| 1157 |
+
"out": 17408,
|
| 1158 |
+
"in": 5120,
|
| 1159 |
+
"k": 256,
|
| 1160 |
+
"dim": 2,
|
| 1161 |
+
"group": 64
|
| 1162 |
+
},
|
| 1163 |
+
"language_model.model.layers.42.mlp.down_proj": {
|
| 1164 |
+
"experts": 1,
|
| 1165 |
+
"out": 5120,
|
| 1166 |
+
"in": 17408,
|
| 1167 |
+
"k": 256,
|
| 1168 |
+
"dim": 2,
|
| 1169 |
+
"group": 64
|
| 1170 |
+
},
|
| 1171 |
+
"language_model.model.layers.43.mlp.gate_proj": {
|
| 1172 |
+
"experts": 1,
|
| 1173 |
+
"out": 17408,
|
| 1174 |
+
"in": 5120,
|
| 1175 |
+
"k": 256,
|
| 1176 |
+
"dim": 2,
|
| 1177 |
+
"group": 64
|
| 1178 |
+
},
|
| 1179 |
+
"language_model.model.layers.43.mlp.up_proj": {
|
| 1180 |
+
"experts": 1,
|
| 1181 |
+
"out": 17408,
|
| 1182 |
+
"in": 5120,
|
| 1183 |
+
"k": 256,
|
| 1184 |
+
"dim": 2,
|
| 1185 |
+
"group": 64
|
| 1186 |
+
},
|
| 1187 |
+
"language_model.model.layers.43.mlp.down_proj": {
|
| 1188 |
+
"experts": 1,
|
| 1189 |
+
"out": 5120,
|
| 1190 |
+
"in": 17408,
|
| 1191 |
+
"k": 256,
|
| 1192 |
+
"dim": 2,
|
| 1193 |
+
"group": 64
|
| 1194 |
+
},
|
| 1195 |
+
"language_model.model.layers.44.mlp.gate_proj": {
|
| 1196 |
+
"experts": 1,
|
| 1197 |
+
"out": 17408,
|
| 1198 |
+
"in": 5120,
|
| 1199 |
+
"k": 256,
|
| 1200 |
+
"dim": 2,
|
| 1201 |
+
"group": 64
|
| 1202 |
+
},
|
| 1203 |
+
"language_model.model.layers.44.mlp.up_proj": {
|
| 1204 |
+
"experts": 1,
|
| 1205 |
+
"out": 17408,
|
| 1206 |
+
"in": 5120,
|
| 1207 |
+
"k": 256,
|
| 1208 |
+
"dim": 2,
|
| 1209 |
+
"group": 64
|
| 1210 |
+
},
|
| 1211 |
+
"language_model.model.layers.44.mlp.down_proj": {
|
| 1212 |
+
"experts": 1,
|
| 1213 |
+
"out": 5120,
|
| 1214 |
+
"in": 17408,
|
| 1215 |
+
"k": 256,
|
| 1216 |
+
"dim": 2,
|
| 1217 |
+
"group": 64
|
| 1218 |
+
},
|
| 1219 |
+
"language_model.model.layers.45.mlp.gate_proj": {
|
| 1220 |
+
"experts": 1,
|
| 1221 |
+
"out": 17408,
|
| 1222 |
+
"in": 5120,
|
| 1223 |
+
"k": 256,
|
| 1224 |
+
"dim": 2,
|
| 1225 |
+
"group": 64
|
| 1226 |
+
},
|
| 1227 |
+
"language_model.model.layers.45.mlp.up_proj": {
|
| 1228 |
+
"experts": 1,
|
| 1229 |
+
"out": 17408,
|
| 1230 |
+
"in": 5120,
|
| 1231 |
+
"k": 256,
|
| 1232 |
+
"dim": 2,
|
| 1233 |
+
"group": 64
|
| 1234 |
+
},
|
| 1235 |
+
"language_model.model.layers.45.mlp.down_proj": {
|
| 1236 |
+
"experts": 1,
|
| 1237 |
+
"out": 5120,
|
| 1238 |
+
"in": 17408,
|
| 1239 |
+
"k": 256,
|
| 1240 |
+
"dim": 2,
|
| 1241 |
+
"group": 64
|
| 1242 |
+
},
|
| 1243 |
+
"language_model.model.layers.46.mlp.gate_proj": {
|
| 1244 |
+
"experts": 1,
|
| 1245 |
+
"out": 17408,
|
| 1246 |
+
"in": 5120,
|
| 1247 |
+
"k": 256,
|
| 1248 |
+
"dim": 2,
|
| 1249 |
+
"group": 64
|
| 1250 |
+
},
|
| 1251 |
+
"language_model.model.layers.46.mlp.up_proj": {
|
| 1252 |
+
"experts": 1,
|
| 1253 |
+
"out": 17408,
|
| 1254 |
+
"in": 5120,
|
| 1255 |
+
"k": 256,
|
| 1256 |
+
"dim": 2,
|
| 1257 |
+
"group": 64
|
| 1258 |
+
},
|
| 1259 |
+
"language_model.model.layers.46.mlp.down_proj": {
|
| 1260 |
+
"experts": 1,
|
| 1261 |
+
"out": 5120,
|
| 1262 |
+
"in": 17408,
|
| 1263 |
+
"k": 256,
|
| 1264 |
+
"dim": 2,
|
| 1265 |
+
"group": 64
|
| 1266 |
+
},
|
| 1267 |
+
"language_model.model.layers.47.mlp.gate_proj": {
|
| 1268 |
+
"experts": 1,
|
| 1269 |
+
"out": 17408,
|
| 1270 |
+
"in": 5120,
|
| 1271 |
+
"k": 256,
|
| 1272 |
+
"dim": 2,
|
| 1273 |
+
"group": 64
|
| 1274 |
+
},
|
| 1275 |
+
"language_model.model.layers.47.mlp.up_proj": {
|
| 1276 |
+
"experts": 1,
|
| 1277 |
+
"out": 17408,
|
| 1278 |
+
"in": 5120,
|
| 1279 |
+
"k": 256,
|
| 1280 |
+
"dim": 2,
|
| 1281 |
+
"group": 64
|
| 1282 |
+
},
|
| 1283 |
+
"language_model.model.layers.47.mlp.down_proj": {
|
| 1284 |
+
"experts": 1,
|
| 1285 |
+
"out": 5120,
|
| 1286 |
+
"in": 17408,
|
| 1287 |
+
"k": 256,
|
| 1288 |
+
"dim": 2,
|
| 1289 |
+
"group": 64
|
| 1290 |
+
},
|
| 1291 |
+
"language_model.model.layers.48.mlp.gate_proj": {
|
| 1292 |
+
"experts": 1,
|
| 1293 |
+
"out": 17408,
|
| 1294 |
+
"in": 5120,
|
| 1295 |
+
"k": 256,
|
| 1296 |
+
"dim": 2,
|
| 1297 |
+
"group": 64
|
| 1298 |
+
},
|
| 1299 |
+
"language_model.model.layers.48.mlp.up_proj": {
|
| 1300 |
+
"experts": 1,
|
| 1301 |
+
"out": 17408,
|
| 1302 |
+
"in": 5120,
|
| 1303 |
+
"k": 256,
|
| 1304 |
+
"dim": 2,
|
| 1305 |
+
"group": 64
|
| 1306 |
+
},
|
| 1307 |
+
"language_model.model.layers.48.mlp.down_proj": {
|
| 1308 |
+
"experts": 1,
|
| 1309 |
+
"out": 5120,
|
| 1310 |
+
"in": 17408,
|
| 1311 |
+
"k": 256,
|
| 1312 |
+
"dim": 2,
|
| 1313 |
+
"group": 64
|
| 1314 |
+
},
|
| 1315 |
+
"language_model.model.layers.49.mlp.gate_proj": {
|
| 1316 |
+
"experts": 1,
|
| 1317 |
+
"out": 17408,
|
| 1318 |
+
"in": 5120,
|
| 1319 |
+
"k": 256,
|
| 1320 |
+
"dim": 2,
|
| 1321 |
+
"group": 64
|
| 1322 |
+
},
|
| 1323 |
+
"language_model.model.layers.49.mlp.up_proj": {
|
| 1324 |
+
"experts": 1,
|
| 1325 |
+
"out": 17408,
|
| 1326 |
+
"in": 5120,
|
| 1327 |
+
"k": 256,
|
| 1328 |
+
"dim": 2,
|
| 1329 |
+
"group": 64
|
| 1330 |
+
},
|
| 1331 |
+
"language_model.model.layers.49.mlp.down_proj": {
|
| 1332 |
+
"experts": 1,
|
| 1333 |
+
"out": 5120,
|
| 1334 |
+
"in": 17408,
|
| 1335 |
+
"k": 256,
|
| 1336 |
+
"dim": 2,
|
| 1337 |
+
"group": 64
|
| 1338 |
+
},
|
| 1339 |
+
"language_model.model.layers.50.mlp.gate_proj": {
|
| 1340 |
+
"experts": 1,
|
| 1341 |
+
"out": 17408,
|
| 1342 |
+
"in": 5120,
|
| 1343 |
+
"k": 256,
|
| 1344 |
+
"dim": 2,
|
| 1345 |
+
"group": 64
|
| 1346 |
+
},
|
| 1347 |
+
"language_model.model.layers.50.mlp.up_proj": {
|
| 1348 |
+
"experts": 1,
|
| 1349 |
+
"out": 17408,
|
| 1350 |
+
"in": 5120,
|
| 1351 |
+
"k": 256,
|
| 1352 |
+
"dim": 2,
|
| 1353 |
+
"group": 64
|
| 1354 |
+
},
|
| 1355 |
+
"language_model.model.layers.50.mlp.down_proj": {
|
| 1356 |
+
"experts": 1,
|
| 1357 |
+
"out": 5120,
|
| 1358 |
+
"in": 17408,
|
| 1359 |
+
"k": 256,
|
| 1360 |
+
"dim": 2,
|
| 1361 |
+
"group": 64
|
| 1362 |
+
},
|
| 1363 |
+
"language_model.model.layers.51.mlp.gate_proj": {
|
| 1364 |
+
"experts": 1,
|
| 1365 |
+
"out": 17408,
|
| 1366 |
+
"in": 5120,
|
| 1367 |
+
"k": 256,
|
| 1368 |
+
"dim": 2,
|
| 1369 |
+
"group": 64
|
| 1370 |
+
},
|
| 1371 |
+
"language_model.model.layers.51.mlp.up_proj": {
|
| 1372 |
+
"experts": 1,
|
| 1373 |
+
"out": 17408,
|
| 1374 |
+
"in": 5120,
|
| 1375 |
+
"k": 256,
|
| 1376 |
+
"dim": 2,
|
| 1377 |
+
"group": 64
|
| 1378 |
+
},
|
| 1379 |
+
"language_model.model.layers.51.mlp.down_proj": {
|
| 1380 |
+
"experts": 1,
|
| 1381 |
+
"out": 5120,
|
| 1382 |
+
"in": 17408,
|
| 1383 |
+
"k": 256,
|
| 1384 |
+
"dim": 2,
|
| 1385 |
+
"group": 64
|
| 1386 |
+
},
|
| 1387 |
+
"language_model.model.layers.52.mlp.gate_proj": {
|
| 1388 |
+
"experts": 1,
|
| 1389 |
+
"out": 17408,
|
| 1390 |
+
"in": 5120,
|
| 1391 |
+
"k": 256,
|
| 1392 |
+
"dim": 2,
|
| 1393 |
+
"group": 64
|
| 1394 |
+
},
|
| 1395 |
+
"language_model.model.layers.52.mlp.up_proj": {
|
| 1396 |
+
"experts": 1,
|
| 1397 |
+
"out": 17408,
|
| 1398 |
+
"in": 5120,
|
| 1399 |
+
"k": 256,
|
| 1400 |
+
"dim": 2,
|
| 1401 |
+
"group": 64
|
| 1402 |
+
},
|
| 1403 |
+
"language_model.model.layers.52.mlp.down_proj": {
|
| 1404 |
+
"experts": 1,
|
| 1405 |
+
"out": 5120,
|
| 1406 |
+
"in": 17408,
|
| 1407 |
+
"k": 256,
|
| 1408 |
+
"dim": 2,
|
| 1409 |
+
"group": 64
|
| 1410 |
+
},
|
| 1411 |
+
"language_model.model.layers.53.mlp.gate_proj": {
|
| 1412 |
+
"experts": 1,
|
| 1413 |
+
"out": 17408,
|
| 1414 |
+
"in": 5120,
|
| 1415 |
+
"k": 256,
|
| 1416 |
+
"dim": 2,
|
| 1417 |
+
"group": 64
|
| 1418 |
+
},
|
| 1419 |
+
"language_model.model.layers.53.mlp.up_proj": {
|
| 1420 |
+
"experts": 1,
|
| 1421 |
+
"out": 17408,
|
| 1422 |
+
"in": 5120,
|
| 1423 |
+
"k": 256,
|
| 1424 |
+
"dim": 2,
|
| 1425 |
+
"group": 64
|
| 1426 |
+
},
|
| 1427 |
+
"language_model.model.layers.53.mlp.down_proj": {
|
| 1428 |
+
"experts": 1,
|
| 1429 |
+
"out": 5120,
|
| 1430 |
+
"in": 17408,
|
| 1431 |
+
"k": 256,
|
| 1432 |
+
"dim": 2,
|
| 1433 |
+
"group": 64
|
| 1434 |
+
},
|
| 1435 |
+
"language_model.model.layers.54.mlp.gate_proj": {
|
| 1436 |
+
"experts": 1,
|
| 1437 |
+
"out": 17408,
|
| 1438 |
+
"in": 5120,
|
| 1439 |
+
"k": 256,
|
| 1440 |
+
"dim": 2,
|
| 1441 |
+
"group": 64
|
| 1442 |
+
},
|
| 1443 |
+
"language_model.model.layers.54.mlp.up_proj": {
|
| 1444 |
+
"experts": 1,
|
| 1445 |
+
"out": 17408,
|
| 1446 |
+
"in": 5120,
|
| 1447 |
+
"k": 256,
|
| 1448 |
+
"dim": 2,
|
| 1449 |
+
"group": 64
|
| 1450 |
+
},
|
| 1451 |
+
"language_model.model.layers.54.mlp.down_proj": {
|
| 1452 |
+
"experts": 1,
|
| 1453 |
+
"out": 5120,
|
| 1454 |
+
"in": 17408,
|
| 1455 |
+
"k": 256,
|
| 1456 |
+
"dim": 2,
|
| 1457 |
+
"group": 64
|
| 1458 |
+
},
|
| 1459 |
+
"language_model.model.layers.55.mlp.gate_proj": {
|
| 1460 |
+
"experts": 1,
|
| 1461 |
+
"out": 17408,
|
| 1462 |
+
"in": 5120,
|
| 1463 |
+
"k": 256,
|
| 1464 |
+
"dim": 2,
|
| 1465 |
+
"group": 64
|
| 1466 |
+
},
|
| 1467 |
+
"language_model.model.layers.55.mlp.up_proj": {
|
| 1468 |
+
"experts": 1,
|
| 1469 |
+
"out": 17408,
|
| 1470 |
+
"in": 5120,
|
| 1471 |
+
"k": 256,
|
| 1472 |
+
"dim": 2,
|
| 1473 |
+
"group": 64
|
| 1474 |
+
},
|
| 1475 |
+
"language_model.model.layers.55.mlp.down_proj": {
|
| 1476 |
+
"experts": 1,
|
| 1477 |
+
"out": 5120,
|
| 1478 |
+
"in": 17408,
|
| 1479 |
+
"k": 256,
|
| 1480 |
+
"dim": 2,
|
| 1481 |
+
"group": 64
|
| 1482 |
+
},
|
| 1483 |
+
"language_model.model.layers.56.mlp.gate_proj": {
|
| 1484 |
+
"experts": 1,
|
| 1485 |
+
"out": 17408,
|
| 1486 |
+
"in": 5120,
|
| 1487 |
+
"k": 256,
|
| 1488 |
+
"dim": 2,
|
| 1489 |
+
"group": 64
|
| 1490 |
+
},
|
| 1491 |
+
"language_model.model.layers.56.mlp.up_proj": {
|
| 1492 |
+
"experts": 1,
|
| 1493 |
+
"out": 17408,
|
| 1494 |
+
"in": 5120,
|
| 1495 |
+
"k": 256,
|
| 1496 |
+
"dim": 2,
|
| 1497 |
+
"group": 64
|
| 1498 |
+
},
|
| 1499 |
+
"language_model.model.layers.56.mlp.down_proj": {
|
| 1500 |
+
"experts": 1,
|
| 1501 |
+
"out": 5120,
|
| 1502 |
+
"in": 17408,
|
| 1503 |
+
"k": 256,
|
| 1504 |
+
"dim": 2,
|
| 1505 |
+
"group": 64
|
| 1506 |
+
},
|
| 1507 |
+
"language_model.model.layers.57.mlp.gate_proj": {
|
| 1508 |
+
"experts": 1,
|
| 1509 |
+
"out": 17408,
|
| 1510 |
+
"in": 5120,
|
| 1511 |
+
"k": 256,
|
| 1512 |
+
"dim": 2,
|
| 1513 |
+
"group": 64
|
| 1514 |
+
},
|
| 1515 |
+
"language_model.model.layers.57.mlp.up_proj": {
|
| 1516 |
+
"experts": 1,
|
| 1517 |
+
"out": 17408,
|
| 1518 |
+
"in": 5120,
|
| 1519 |
+
"k": 256,
|
| 1520 |
+
"dim": 2,
|
| 1521 |
+
"group": 64
|
| 1522 |
+
},
|
| 1523 |
+
"language_model.model.layers.57.mlp.down_proj": {
|
| 1524 |
+
"experts": 1,
|
| 1525 |
+
"out": 5120,
|
| 1526 |
+
"in": 17408,
|
| 1527 |
+
"k": 256,
|
| 1528 |
+
"dim": 2,
|
| 1529 |
+
"group": 64
|
| 1530 |
+
},
|
| 1531 |
+
"language_model.model.layers.58.mlp.gate_proj": {
|
| 1532 |
+
"experts": 1,
|
| 1533 |
+
"out": 17408,
|
| 1534 |
+
"in": 5120,
|
| 1535 |
+
"k": 256,
|
| 1536 |
+
"dim": 2,
|
| 1537 |
+
"group": 64
|
| 1538 |
+
},
|
| 1539 |
+
"language_model.model.layers.58.mlp.up_proj": {
|
| 1540 |
+
"experts": 1,
|
| 1541 |
+
"out": 17408,
|
| 1542 |
+
"in": 5120,
|
| 1543 |
+
"k": 256,
|
| 1544 |
+
"dim": 2,
|
| 1545 |
+
"group": 64
|
| 1546 |
+
},
|
| 1547 |
+
"language_model.model.layers.58.mlp.down_proj": {
|
| 1548 |
+
"experts": 1,
|
| 1549 |
+
"out": 5120,
|
| 1550 |
+
"in": 17408,
|
| 1551 |
+
"k": 256,
|
| 1552 |
+
"dim": 2,
|
| 1553 |
+
"group": 64
|
| 1554 |
+
},
|
| 1555 |
+
"language_model.model.layers.59.mlp.gate_proj": {
|
| 1556 |
+
"experts": 1,
|
| 1557 |
+
"out": 17408,
|
| 1558 |
+
"in": 5120,
|
| 1559 |
+
"k": 256,
|
| 1560 |
+
"dim": 2,
|
| 1561 |
+
"group": 64
|
| 1562 |
+
},
|
| 1563 |
+
"language_model.model.layers.59.mlp.up_proj": {
|
| 1564 |
+
"experts": 1,
|
| 1565 |
+
"out": 17408,
|
| 1566 |
+
"in": 5120,
|
| 1567 |
+
"k": 256,
|
| 1568 |
+
"dim": 2,
|
| 1569 |
+
"group": 64
|
| 1570 |
+
},
|
| 1571 |
+
"language_model.model.layers.59.mlp.down_proj": {
|
| 1572 |
+
"experts": 1,
|
| 1573 |
+
"out": 5120,
|
| 1574 |
+
"in": 17408,
|
| 1575 |
+
"k": 256,
|
| 1576 |
+
"dim": 2,
|
| 1577 |
+
"group": 64
|
| 1578 |
+
},
|
| 1579 |
+
"language_model.model.layers.60.mlp.gate_proj": {
|
| 1580 |
+
"experts": 1,
|
| 1581 |
+
"out": 17408,
|
| 1582 |
+
"in": 5120,
|
| 1583 |
+
"k": 256,
|
| 1584 |
+
"dim": 2,
|
| 1585 |
+
"group": 64
|
| 1586 |
+
},
|
| 1587 |
+
"language_model.model.layers.60.mlp.up_proj": {
|
| 1588 |
+
"experts": 1,
|
| 1589 |
+
"out": 17408,
|
| 1590 |
+
"in": 5120,
|
| 1591 |
+
"k": 256,
|
| 1592 |
+
"dim": 2,
|
| 1593 |
+
"group": 64
|
| 1594 |
+
},
|
| 1595 |
+
"language_model.model.layers.60.mlp.down_proj": {
|
| 1596 |
+
"experts": 1,
|
| 1597 |
+
"out": 5120,
|
| 1598 |
+
"in": 17408,
|
| 1599 |
+
"k": 256,
|
| 1600 |
+
"dim": 2,
|
| 1601 |
+
"group": 64
|
| 1602 |
+
},
|
| 1603 |
+
"language_model.model.layers.61.mlp.gate_proj": {
|
| 1604 |
+
"experts": 1,
|
| 1605 |
+
"out": 17408,
|
| 1606 |
+
"in": 5120,
|
| 1607 |
+
"k": 256,
|
| 1608 |
+
"dim": 2,
|
| 1609 |
+
"group": 64
|
| 1610 |
+
},
|
| 1611 |
+
"language_model.model.layers.61.mlp.up_proj": {
|
| 1612 |
+
"experts": 1,
|
| 1613 |
+
"out": 17408,
|
| 1614 |
+
"in": 5120,
|
| 1615 |
+
"k": 256,
|
| 1616 |
+
"dim": 2,
|
| 1617 |
+
"group": 64
|
| 1618 |
+
},
|
| 1619 |
+
"language_model.model.layers.61.mlp.down_proj": {
|
| 1620 |
+
"experts": 1,
|
| 1621 |
+
"out": 5120,
|
| 1622 |
+
"in": 17408,
|
| 1623 |
+
"k": 256,
|
| 1624 |
+
"dim": 2,
|
| 1625 |
+
"group": 64
|
| 1626 |
+
},
|
| 1627 |
+
"language_model.model.layers.62.mlp.gate_proj": {
|
| 1628 |
+
"experts": 1,
|
| 1629 |
+
"out": 17408,
|
| 1630 |
+
"in": 5120,
|
| 1631 |
+
"k": 256,
|
| 1632 |
+
"dim": 2,
|
| 1633 |
+
"group": 64
|
| 1634 |
+
},
|
| 1635 |
+
"language_model.model.layers.62.mlp.up_proj": {
|
| 1636 |
+
"experts": 1,
|
| 1637 |
+
"out": 17408,
|
| 1638 |
+
"in": 5120,
|
| 1639 |
+
"k": 256,
|
| 1640 |
+
"dim": 2,
|
| 1641 |
+
"group": 64
|
| 1642 |
+
},
|
| 1643 |
+
"language_model.model.layers.62.mlp.down_proj": {
|
| 1644 |
+
"experts": 1,
|
| 1645 |
+
"out": 5120,
|
| 1646 |
+
"in": 17408,
|
| 1647 |
+
"k": 256,
|
| 1648 |
+
"dim": 2,
|
| 1649 |
+
"group": 64
|
| 1650 |
+
},
|
| 1651 |
+
"language_model.model.layers.63.mlp.gate_proj": {
|
| 1652 |
+
"experts": 1,
|
| 1653 |
+
"out": 17408,
|
| 1654 |
+
"in": 5120,
|
| 1655 |
+
"k": 256,
|
| 1656 |
+
"dim": 2,
|
| 1657 |
+
"group": 64
|
| 1658 |
+
},
|
| 1659 |
+
"language_model.model.layers.63.mlp.up_proj": {
|
| 1660 |
+
"experts": 1,
|
| 1661 |
+
"out": 17408,
|
| 1662 |
+
"in": 5120,
|
| 1663 |
+
"k": 256,
|
| 1664 |
+
"dim": 2,
|
| 1665 |
+
"group": 64
|
| 1666 |
+
},
|
| 1667 |
+
"language_model.model.layers.63.mlp.down_proj": {
|
| 1668 |
+
"experts": 1,
|
| 1669 |
+
"out": 5120,
|
| 1670 |
+
"in": 17408,
|
| 1671 |
+
"k": 256,
|
| 1672 |
+
"dim": 2,
|
| 1673 |
+
"group": 64
|
| 1674 |
+
}
|
| 1675 |
+
},
|
| 1676 |
+
"vq_embed": {},
|
| 1677 |
+
"model_file": "model.py",
|
| 1678 |
+
"vision_config": {
|
| 1679 |
+
"deepstack_visual_indexes": [],
|
| 1680 |
+
"depth": 27,
|
| 1681 |
+
"hidden_act": "gelu_pytorch_tanh",
|
| 1682 |
+
"hidden_size": 1152,
|
| 1683 |
+
"in_channels": 3,
|
| 1684 |
+
"initializer_range": 0.02,
|
| 1685 |
+
"intermediate_size": 4304,
|
| 1686 |
+
"model_type": "qwen3_5",
|
| 1687 |
+
"num_heads": 16,
|
| 1688 |
+
"num_position_embeddings": 2304,
|
| 1689 |
+
"out_hidden_size": 5120,
|
| 1690 |
+
"patch_size": 16,
|
| 1691 |
+
"spatial_merge_size": 2,
|
| 1692 |
+
"temporal_patch_size": 2
|
| 1693 |
+
}
|
| 1694 |
+
}
|
generation_config.json
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"bos_token_id": 248044,
|
| 3 |
+
"do_sample": true,
|
| 4 |
+
"eos_token_id": [
|
| 5 |
+
248046,
|
| 6 |
+
248044
|
| 7 |
+
],
|
| 8 |
+
"pad_token_id": 248044,
|
| 9 |
+
"temperature": 1.0,
|
| 10 |
+
"top_k": 20,
|
| 11 |
+
"top_p": 0.95
|
| 12 |
+
}
|
model-00001.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:af46d76bc45897ddc660284fd8e2f66f3688c3e7d6cacaa2e40e8c1f2108985a
|
| 3 |
+
size 2119658552
|
model-00002.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:add254e6ecb136fd0e90a954623df22893165f54c56b8e8b2637676b284a84c6
|
| 3 |
+
size 1594027965
|
model-00003.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:4364cae7b25d4d440256bcaa81004f12af6f2fd9192db2a99ab869b576f0454a
|
| 3 |
+
size 1793355260
|
model-00004.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:7c0a6c18ec3c82aa4720068db65919538fb17d5e45535b4e06486a8ae4d28874
|
| 3 |
+
size 9091424014
|
model-vision-graft.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:8f71b3e3e66250f3990e0943fc42082622cc9dc28538a529d0da7ee98723d8f4
|
| 3 |
+
size 921497299
|
model.py
ADDED
|
@@ -0,0 +1,268 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"""Dense VQ modules — VQLinear and VQEmbedding.
|
| 2 |
+
|
| 3 |
+
WHY THESE EXIST. vq_switch.VQSwitchLinear is EXPERT-shaped: its __call__
|
| 4 |
+
takes routing indices and its kernels index a leading expert axis. A dense
|
| 5 |
+
model (gemma-4-e4b) has neither, so shipping a VQ e4b needs drop-ins for
|
| 6 |
+
plain nn.Linear and nn.Embedding.
|
| 7 |
+
|
| 8 |
+
THE EMBEDDING IS THE GOOD CASE. A [262144, 10752] table is 35.5% of e4b's
|
| 9 |
+
bytes, and an embedding lookup only ever needs the ROWS a batch touches —
|
| 10 |
+
so VQEmbedding gathers those code rows and decodes just those, never
|
| 11 |
+
materialising the table. Memory saving with no throughput cost.
|
| 12 |
+
|
| 13 |
+
THE LINEAR IS THE HONEST CASE. A matmul needs the whole weight, so
|
| 14 |
+
VQLinear decodes W per call: codebook[codes] -> [OUT, NSUB, D] ->
|
| 15 |
+
[OUT, IN], scaled group-wise. That trades compute for resident memory and
|
| 16 |
+
will be SLOWER than an 8-bit matmul; measure before believing any speed
|
| 17 |
+
claim. Correctness first — a fused dense kernel is a later optimisation,
|
| 18 |
+
and per E62 the fused work has to reproduce the scored numbers exactly
|
| 19 |
+
before it may replace this path.
|
| 20 |
+
|
| 21 |
+
Both mirror the fitter's contract exactly: scales are fp16 max-abs per
|
| 22 |
+
group of G along `in`, codes index a [K, D] fp16 codebook.
|
| 23 |
+
"""
|
| 24 |
+
import os
|
| 25 |
+
|
| 26 |
+
import mlx.core as mx
|
| 27 |
+
import mlx.nn as nn
|
| 28 |
+
|
| 29 |
+
|
| 30 |
+
def _decode(codes, codebook, scales, group_size, out_d, in_d):
|
| 31 |
+
"""codes [R, NSUB] -> dense [R, in_d] fp16, scaled group-wise."""
|
| 32 |
+
w = codebook[codes.reshape(-1)].reshape(out_d, in_d)
|
| 33 |
+
w = (w.reshape(out_d, in_d // group_size, group_size)
|
| 34 |
+
* scales[..., None]).reshape(out_d, in_d)
|
| 35 |
+
return w
|
| 36 |
+
|
| 37 |
+
|
| 38 |
+
def _unpack_rows(packed, nsub, bits):
|
| 39 |
+
"""mlx-native inverse of vq_pack.pack for a [R, WPR] uint32 slab.
|
| 40 |
+
|
| 41 |
+
Runs on-GPU at gather time so packed EMBEDDING rows never round-trip
|
| 42 |
+
through numpy. Same 32-codes-per-block layout as vq_pack.py; verified
|
| 43 |
+
against vq_pack.unpack bit-exactly before first use.
|
| 44 |
+
"""
|
| 45 |
+
R, wpr = packed.shape
|
| 46 |
+
nblk = nsub // 32
|
| 47 |
+
src = packed.reshape(R, nblk, bits).astype(mx.uint64)
|
| 48 |
+
mask = mx.array(( 1 << bits) - 1, dtype=mx.uint64)
|
| 49 |
+
outs = []
|
| 50 |
+
for i in range(32):
|
| 51 |
+
off = i * bits
|
| 52 |
+
w, sh = divmod(off, 32)
|
| 53 |
+
v = src[:, :, w] >> mx.array(sh, dtype=mx.uint64)
|
| 54 |
+
if sh + bits > 32:
|
| 55 |
+
v = v | (src[:, :, w + 1] << mx.array(32 - sh, dtype=mx.uint64))
|
| 56 |
+
outs.append((v & mask).astype(mx.uint32))
|
| 57 |
+
# outs[i] is code i of every block -> interleave back to row order
|
| 58 |
+
return mx.stack(outs, axis=-1).reshape(R, nsub)
|
| 59 |
+
|
| 60 |
+
|
| 61 |
+
class VQLinear(nn.Module):
|
| 62 |
+
"""Drop-in for a bias-free nn.Linear whose weight is VQ-coded.
|
| 63 |
+
|
| 64 |
+
codes may be unpacked ([OUT, NSUB] uint8/uint16) or packed
|
| 65 |
+
([OUT, WPR] uint32 of pack_bits-wide fields, vq_pack.py layout).
|
| 66 |
+
"""
|
| 67 |
+
|
| 68 |
+
def __init__(self, codes, codebook, vq_scales, group_size=64,
|
| 69 |
+
pack_bits=0, in_features=None):
|
| 70 |
+
super().__init__()
|
| 71 |
+
self.codes = codes
|
| 72 |
+
self.codebook = codebook
|
| 73 |
+
self.vq_scales = vq_scales
|
| 74 |
+
self.group_size = group_size
|
| 75 |
+
self.pack_bits = pack_bits
|
| 76 |
+
if pack_bits and in_features is None:
|
| 77 |
+
raise ValueError("packed codes need explicit in_features")
|
| 78 |
+
self._in_features = in_features
|
| 79 |
+
self._k_expect = int(codebook.shape[0])
|
| 80 |
+
self.freeze()
|
| 81 |
+
|
| 82 |
+
@property
|
| 83 |
+
def input_dims(self):
|
| 84 |
+
if self.pack_bits:
|
| 85 |
+
return self._in_features
|
| 86 |
+
return self.codes.shape[-1] * self.codebook.shape[1]
|
| 87 |
+
|
| 88 |
+
@property
|
| 89 |
+
def output_dims(self):
|
| 90 |
+
return self.codes.shape[0]
|
| 91 |
+
|
| 92 |
+
def __call__(self, x):
|
| 93 |
+
# Same sharding guard as VQSwitchLinear: a sliced codebook does not
|
| 94 |
+
# error, it silently decodes garbage (exo PR #2268).
|
| 95 |
+
if int(self.codebook.shape[0]) != self._k_expect:
|
| 96 |
+
raise RuntimeError(
|
| 97 |
+
f"VQ codebook was sharded: K={self.codebook.shape[0]}, "
|
| 98 |
+
f"expected {self._k_expect}. The codebook is a SHARED lookup "
|
| 99 |
+
f"table and must be REPLICATED across tensor-parallel ranks.")
|
| 100 |
+
OUT = self.codes.shape[0]
|
| 101 |
+
IN = (self._in_features if self.pack_bits
|
| 102 |
+
else self.codes.shape[1] * self.codebook.shape[1])
|
| 103 |
+
# A dense linear IS an expert layer with E=1 and every token routed
|
| 104 |
+
# to expert 0 — so the small-N path rides the PRODUCTION-VALIDATED
|
| 105 |
+
# fused kernels from vq_switch (E62: bit-identical, ~3x decode)
|
| 106 |
+
# instead of decoding the whole weight per call, which measured
|
| 107 |
+
# 11.5 tok/s vs the incumbent's 84 (2026-08-19). Prefill (large N)
|
| 108 |
+
# amortises one full decode across the whole batch, which is faster
|
| 109 |
+
# than the fused gather at that shape — same split vq_switch uses.
|
| 110 |
+
if self.pack_bits:
|
| 111 |
+
IN = self._in_features
|
| 112 |
+
orig_shape = x.shape
|
| 113 |
+
xf = x.reshape(-1, IN)
|
| 114 |
+
N = xf.shape[0]
|
| 115 |
+
# d=2 is the only geometry with a dense fused kernel. The expert
|
| 116 |
+
# kernel (_fused, E=1) was tried as the d!=2 small-N path and DIED AT
|
| 117 |
+
# KERNEL LOAD on the first real dense model: at 27B mlp shapes
|
| 118 |
+
# (IN 17408) its threadgroup allocation is 36864 bytes vs Metal's
|
| 119 |
+
# 32768 cap — shapes the 397B's experts never produce. Caught by
|
| 120 |
+
# III.10 smoke-gen (E95). Until a dense kernel exists for d>2,
|
| 121 |
+
# small-N takes the decode path: bit-exact, just slow at decode
|
| 122 |
+
# (~11.5 tok/s measured 08-19) — fine for gates and prefill-shaped
|
| 123 |
+
# scoring, NOT a shipping configuration.
|
| 124 |
+
# THREADGROUP CEILING (2026-08-21, E124). The d=2 dense kernel ALSO
|
| 125 |
+
# dies at kernel load on 27B mlp shapes: NSUB = IN/d = 8704 needs
|
| 126 |
+
# 35840 B of threadgroup memory against Metal's 32768 cap. So neither
|
| 127 |
+
# d=2 NOR d>2 has a usable fused dense path at this model's widths —
|
| 128 |
+
# the 397B's expert shapes simply never produce them. Measured, not
|
| 129 |
+
# inferred: the failure is a RuntimeError naming both numbers.
|
| 130 |
+
# Falling back to decode keeps the artifact CORRECT (bit-exact, the
|
| 131 |
+
# same path that produced its scores) at decode speed. This is not a
|
| 132 |
+
# performance fix and must not be read as one; a dense kernel that
|
| 133 |
+
# fits the cap is the real fix and does not exist yet.
|
| 134 |
+
_nsub = IN // int(self.codebook.shape[1])
|
| 135 |
+
_fits_tg = _nsub * 4 + 1024 <= 32768
|
| 136 |
+
if N <= 32 and int(self.codebook.shape[1]) == 2 and _fits_tg:
|
| 137 |
+
# DENSE fused kernel (2026-08-19): one simdgroup per output row
|
| 138 |
+
# instead of one thread, no expert axis. Bit-identical to the
|
| 139 |
+
# expert-kernel path below (the kernel replicates its float
|
| 140 |
+
# ordering exactly — verified, and the E62 KL number reproduces).
|
| 141 |
+
# SCOUT_VQ_DENSE_REF=1 keeps the old expert-shaped path callable
|
| 142 |
+
# as the reference for A/B checks.
|
| 143 |
+
if os.environ.get("SCOUT_VQ_DENSE_REF"):
|
| 144 |
+
from mlx_lm.models.vq_switch import _fused
|
| 145 |
+
eidx = mx.zeros((N,), dtype=mx.uint32)
|
| 146 |
+
y = _fused(xf, eidx, self.codes[None], self.codebook,
|
| 147 |
+
self.vq_scales[None], pack_bits=self.pack_bits)
|
| 148 |
+
else:
|
| 149 |
+
from mlx_lm.models.vq_switch import _dense_fused
|
| 150 |
+
y = _dense_fused(xf, self.codes, self.codebook,
|
| 151 |
+
self.vq_scales, pack_bits=self.pack_bits,
|
| 152 |
+
in_features=self._in_features)
|
| 153 |
+
return y.astype(x.dtype).reshape(*orig_shape[:-1], OUT)
|
| 154 |
+
codes = self.codes
|
| 155 |
+
if self.pack_bits:
|
| 156 |
+
codes = _unpack_rows(codes, IN // self.codebook.shape[1],
|
| 157 |
+
self.pack_bits)
|
| 158 |
+
w = _decode(codes, self.codebook.astype(mx.float16),
|
| 159 |
+
self.vq_scales, self.group_size, OUT, IN)
|
| 160 |
+
return (xf @ w.T.astype(x.dtype)).reshape(*orig_shape[:-1], OUT)
|
| 161 |
+
|
| 162 |
+
|
| 163 |
+
class VQEmbedding(nn.Module):
|
| 164 |
+
"""Drop-in for nn.Embedding whose table is VQ-coded.
|
| 165 |
+
|
| 166 |
+
Decodes ONLY the gathered rows — the whole point of putting VQ on a
|
| 167 |
+
262k-row table. as_linear() is provided because gemma ties the output
|
| 168 |
+
head to the input embedding in some configs; it decodes the full table
|
| 169 |
+
and is deliberately NOT used by the PLE path.
|
| 170 |
+
"""
|
| 171 |
+
|
| 172 |
+
def __init__(self, codes, codebook, vq_scales, group_size=64,
|
| 173 |
+
pack_bits=0, in_features=None):
|
| 174 |
+
super().__init__()
|
| 175 |
+
self.codes = codes
|
| 176 |
+
self.codebook = codebook
|
| 177 |
+
self.vq_scales = vq_scales
|
| 178 |
+
self.group_size = group_size
|
| 179 |
+
self.pack_bits = pack_bits
|
| 180 |
+
if pack_bits and in_features is None:
|
| 181 |
+
raise ValueError("packed codes need explicit in_features")
|
| 182 |
+
self._in_features = in_features
|
| 183 |
+
self._k_expect = int(codebook.shape[0])
|
| 184 |
+
self.freeze()
|
| 185 |
+
|
| 186 |
+
@property
|
| 187 |
+
def num_embeddings(self):
|
| 188 |
+
return self.codes.shape[0]
|
| 189 |
+
|
| 190 |
+
@property
|
| 191 |
+
def dims(self):
|
| 192 |
+
return self.codes.shape[1] * self.codebook.shape[1]
|
| 193 |
+
|
| 194 |
+
def __call__(self, ids):
|
| 195 |
+
if int(self.codebook.shape[0]) != self._k_expect:
|
| 196 |
+
raise RuntimeError("VQ codebook was sharded; must be replicated.")
|
| 197 |
+
flat = ids.reshape(-1)
|
| 198 |
+
rows = self.codes[flat] # [N, NSUB] or [N, WPR]
|
| 199 |
+
sc = self.vq_scales[flat] # [N, in/G]
|
| 200 |
+
D = self.codebook.shape[1]
|
| 201 |
+
if self.pack_bits:
|
| 202 |
+
NSUB = self._in_features // D
|
| 203 |
+
rows = _unpack_rows(rows, NSUB, self.pack_bits)
|
| 204 |
+
N, NSUB = rows.shape
|
| 205 |
+
IN = NSUB * D
|
| 206 |
+
w = self.codebook.astype(mx.float16)[rows.reshape(-1)].reshape(N, IN)
|
| 207 |
+
w = (w.reshape(N, IN // self.group_size, self.group_size)
|
| 208 |
+
* sc[..., None]).reshape(N, IN)
|
| 209 |
+
return w.reshape(*ids.shape, IN)
|
| 210 |
+
|
| 211 |
+
def as_linear(self, x):
|
| 212 |
+
OUT = self.codes.shape[0]
|
| 213 |
+
IN = self.dims
|
| 214 |
+
w = _decode(self.codes, self.codebook.astype(mx.float16),
|
| 215 |
+
self.vq_scales, self.group_size, OUT, IN)
|
| 216 |
+
return x @ w.T.astype(x.dtype)
|
| 217 |
+
|
| 218 |
+
|
| 219 |
+
# ---------------------------------------------------------------------------
|
| 220 |
+
# mlx_lm `model_file` shim. Stock mlx_lm imports Model/ModelArgs from THIS
|
| 221 |
+
# file (it lives inside the checkpoint), so a user needs no local code. We
|
| 222 |
+
# reuse the registry architecture and swap the VQ'd modules for their dense
|
| 223 |
+
# VQ drop-ins BEFORE weights load, so shapes match at load time.
|
| 224 |
+
# ---------------------------------------------------------------------------
|
| 225 |
+
import importlib as _importlib
|
| 226 |
+
import json as _json
|
| 227 |
+
import pathlib as _pathlib
|
| 228 |
+
|
| 229 |
+
_cfg = _json.load(open(_pathlib.Path(__file__).parent / "config.json"))
|
| 230 |
+
_arch = _importlib.import_module(f"mlx_lm.models.{_cfg['model_type']}")
|
| 231 |
+
ModelArgs = _arch.ModelArgs
|
| 232 |
+
|
| 233 |
+
|
| 234 |
+
def _reach(root, path):
|
| 235 |
+
obj = root
|
| 236 |
+
parts = path.split(".")
|
| 237 |
+
for c in parts[:-1]:
|
| 238 |
+
obj = obj[int(c)] if c.isdigit() else getattr(obj, c)
|
| 239 |
+
return obj, parts[-1]
|
| 240 |
+
|
| 241 |
+
|
| 242 |
+
class Model(_arch.Model):
|
| 243 |
+
def __init__(self, args):
|
| 244 |
+
super().__init__(args)
|
| 245 |
+
for _p, _m in _cfg.get("vq_linear", {}).items():
|
| 246 |
+
_obj, _leaf = _reach(self, _p)
|
| 247 |
+
_pb = _m.get("pack_bits", 0)
|
| 248 |
+
_ct = mx.uint32 if _pb else (mx.uint8 if _m["k"] <= 256 else mx.uint16)
|
| 249 |
+
_cols = (_m["in"] // _m["dim"] // 32 * _pb) if _pb else _m["in"] // _m["dim"]
|
| 250 |
+
setattr(_obj, _leaf, VQLinear(
|
| 251 |
+
mx.zeros((_m["out"], _cols), dtype=_ct),
|
| 252 |
+
mx.zeros((_m["k"], _m["dim"]), dtype=mx.float16),
|
| 253 |
+
mx.zeros((_m["out"], _m["in"] // _m["group"]),
|
| 254 |
+
dtype=mx.float16),
|
| 255 |
+
group_size=_m["group"], pack_bits=_pb,
|
| 256 |
+
in_features=_m["in"] if _pb else None))
|
| 257 |
+
for _p, _m in _cfg.get("vq_embed", {}).items():
|
| 258 |
+
_obj, _leaf = _reach(self, _p)
|
| 259 |
+
_pb = _m.get("pack_bits", 0)
|
| 260 |
+
_ct = mx.uint32 if _pb else (mx.uint8 if _m["k"] <= 256 else mx.uint16)
|
| 261 |
+
_cols = (_m["in"] // _m["dim"] // 32 * _pb) if _pb else _m["in"] // _m["dim"]
|
| 262 |
+
setattr(_obj, _leaf, VQEmbedding(
|
| 263 |
+
mx.zeros((_m["rows"], _cols), dtype=_ct),
|
| 264 |
+
mx.zeros((_m["k"], _m["dim"]), dtype=mx.float16),
|
| 265 |
+
mx.zeros((_m["rows"], _m["in"] // _m["group"]),
|
| 266 |
+
dtype=mx.float16),
|
| 267 |
+
group_size=_m["group"], pack_bits=_pb,
|
| 268 |
+
in_features=_m["in"] if _pb else None))
|
model.safetensors.index.json
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
qwen38_ladder.png
ADDED
|
Git LFS Details
|
tokenizer.json
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:06b9509352d2af50381ab2247e083b80d32d5c0aba91c272ca9ff729b6a0e523
|
| 3 |
+
size 19989325
|
tokenizer_config.json
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"add_prefix_space": false,
|
| 3 |
+
"audio_bos_token": "<|audio_start|>",
|
| 4 |
+
"audio_eos_token": "<|audio_end|>",
|
| 5 |
+
"audio_token": "<|audio_pad|>",
|
| 6 |
+
"backend": "tokenizers",
|
| 7 |
+
"bos_token": null,
|
| 8 |
+
"clean_up_tokenization_spaces": false,
|
| 9 |
+
"eos_token": "<|im_end|>",
|
| 10 |
+
"errors": "replace",
|
| 11 |
+
"image_token": "<|image_pad|>",
|
| 12 |
+
"is_local": true,
|
| 13 |
+
"local_files_only": false,
|
| 14 |
+
"model_max_length": 262144,
|
| 15 |
+
"model_specific_special_tokens": {
|
| 16 |
+
"audio_bos_token": "<|audio_start|>",
|
| 17 |
+
"audio_eos_token": "<|audio_end|>",
|
| 18 |
+
"audio_token": "<|audio_pad|>",
|
| 19 |
+
"image_token": "<|image_pad|>",
|
| 20 |
+
"video_token": "<|video_pad|>",
|
| 21 |
+
"vision_bos_token": "<|vision_start|>",
|
| 22 |
+
"vision_eos_token": "<|vision_end|>"
|
| 23 |
+
},
|
| 24 |
+
"pad_token": "<|endoftext|>",
|
| 25 |
+
"pretokenize_regex": "(?i:'s|'t|'re|'ve|'m|'ll|'d)|[^\\r\\n\\p{L}\\p{N}]?[\\p{L}\\p{M}]+|\\p{N}| ?[^\\s\\p{L}\\p{M}\\p{N}]+[\\r\\n]*|\\s*[\\r\\n]+|\\s+(?!\\S)|\\s+",
|
| 26 |
+
"split_special_tokens": false,
|
| 27 |
+
"tokenizer_class": "Qwen2Tokenizer",
|
| 28 |
+
"tool_parser_type": "qwen3_coder",
|
| 29 |
+
"unk_token": null,
|
| 30 |
+
"video_token": "<|video_pad|>",
|
| 31 |
+
"vision_bos_token": "<|vision_start|>",
|
| 32 |
+
"vision_eos_token": "<|vision_end|>"
|
| 33 |
+
}
|