chenyvathf commited on
Commit
67b995c
·
verified ·
1 Parent(s): fe969cc

gua: stage-B LoRA SFT of Qwen3.5-4B for macOS computer-use decisions

Browse files
.gitattributes CHANGED
@@ -33,3 +33,4 @@ 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
+ tokenizer.json filter=lfs diff=lfs merge=lfs -text
LICENSE ADDED
@@ -0,0 +1,201 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Apache License
2
+ Version 2.0, January 2004
3
+ http://www.apache.org/licenses/
4
+
5
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6
+
7
+ 1. Definitions.
8
+
9
+ "License" shall mean the terms and conditions for use, reproduction,
10
+ and distribution as defined by Sections 1 through 9 of this document.
11
+
12
+ "Licensor" shall mean the copyright owner or entity authorized by
13
+ the copyright owner that is granting the License.
14
+
15
+ "Legal Entity" shall mean the union of the acting entity and all
16
+ other entities that control, are controlled by, or are under common
17
+ control with that entity. For the purposes of this definition,
18
+ "control" means (i) the power, direct or indirect, to cause the
19
+ direction or management of such entity, whether by contract or
20
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
21
+ outstanding shares, or (iii) beneficial ownership of such entity.
22
+
23
+ "You" (or "Your") shall mean an individual or Legal Entity
24
+ exercising permissions granted by this License.
25
+
26
+ "Source" form shall mean the preferred form for making modifications,
27
+ including but not limited to software source code, documentation
28
+ source, and configuration files.
29
+
30
+ "Object" form shall mean any form resulting from mechanical
31
+ transformation or translation of a Source form, including but
32
+ not limited to compiled object code, generated documentation,
33
+ and conversions to other media types.
34
+
35
+ "Work" shall mean the work of authorship, whether in Source or
36
+ Object form, made available under the License, as indicated by a
37
+ copyright notice that is included in or attached to the work
38
+ (an example is provided in the Appendix below).
39
+
40
+ "Derivative Works" shall mean any work, whether in Source or Object
41
+ form, that is based on (or derived from) the Work and for which the
42
+ editorial revisions, annotations, elaborations, or other modifications
43
+ represent, as a whole, an original work of authorship. For the purposes
44
+ of this License, Derivative Works shall not include works that remain
45
+ separable from, or merely link (or bind by name) to the interfaces of,
46
+ the Work and Derivative Works thereof.
47
+
48
+ "Contribution" shall mean any work of authorship, including
49
+ the original version of the Work and any modifications or additions
50
+ to that Work or Derivative Works thereof, that is intentionally
51
+ submitted to Licensor for inclusion in the Work by the copyright owner
52
+ or by an individual or Legal Entity authorized to submit on behalf of
53
+ the copyright owner. For the purposes of this definition, "submitted"
54
+ means any form of electronic, verbal, or written communication sent
55
+ to the Licensor or its representatives, including but not limited to
56
+ communication on electronic mailing lists, source code control systems,
57
+ and issue tracking systems that are managed by, or on behalf of, the
58
+ Licensor for the purpose of discussing and improving the Work, but
59
+ excluding communication that is conspicuously marked or otherwise
60
+ designated in writing by the copyright owner as "Not a Contribution."
61
+
62
+ "Contributor" shall mean Licensor and any individual or Legal Entity
63
+ on behalf of whom a Contribution has been received by Licensor and
64
+ subsequently incorporated within the Work.
65
+
66
+ 2. Grant of Copyright License. Subject to the terms and conditions of
67
+ this License, each Contributor hereby grants to You a perpetual,
68
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69
+ copyright license to reproduce, prepare Derivative Works of,
70
+ publicly display, publicly perform, sublicense, and distribute the
71
+ Work and such Derivative Works in Source or Object form.
72
+
73
+ 3. Grant of Patent License. Subject to the terms and conditions of
74
+ this License, each Contributor hereby grants to You a perpetual,
75
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76
+ (except as stated in this section) patent license to make, have made,
77
+ use, offer to sell, sell, import, and otherwise transfer the Work,
78
+ where such license applies only to those patent claims licensable
79
+ by such Contributor that are necessarily infringed by their
80
+ Contribution(s) alone or by combination of their Contribution(s)
81
+ with the Work to which such Contribution(s) was submitted. If You
82
+ institute patent litigation against any entity (including a
83
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
84
+ or a Contribution incorporated within the Work constitutes direct
85
+ or contributory patent infringement, then any patent licenses
86
+ granted to You under this License for that Work shall terminate
87
+ as of the date such litigation is filed.
88
+
89
+ 4. Redistribution. You may reproduce and distribute copies of the
90
+ Work or Derivative Works thereof in any medium, with or without
91
+ modifications, and in Source or Object form, provided that You
92
+ meet the following conditions:
93
+
94
+ (a) You must give any other recipients of the Work or
95
+ Derivative Works a copy of this License; and
96
+
97
+ (b) You must cause any modified files to carry prominent notices
98
+ stating that You changed the files; and
99
+
100
+ (c) You must retain, in the Source form of any Derivative Works
101
+ that You distribute, all copyright, patent, trademark, and
102
+ attribution notices from the Source form of the Work,
103
+ excluding those notices that do not pertain to any part of
104
+ the Derivative Works; and
105
+
106
+ (d) If the Work includes a "NOTICE" text file as part of its
107
+ distribution, then any Derivative Works that You distribute must
108
+ include a readable copy of the attribution notices contained
109
+ within such NOTICE file, excluding those notices that do not
110
+ pertain to any part of the Derivative Works, in at least one
111
+ of the following places: within a NOTICE text file distributed
112
+ as part of the Derivative Works; within the Source form or
113
+ documentation, if provided along with the Derivative Works; or,
114
+ within a display generated by the Derivative Works, if and
115
+ wherever such third-party notices normally appear. The contents
116
+ of the NOTICE file are for informational purposes only and
117
+ do not modify the License. You may add Your own attribution
118
+ notices within Derivative Works that You distribute, alongside
119
+ or as an addendum to the NOTICE text from the Work, provided
120
+ that such additional attribution notices cannot be construed
121
+ as modifying the License.
122
+
123
+ You may add Your own copyright statement to Your modifications and
124
+ may provide additional or different license terms and conditions
125
+ for use, reproduction, or distribution of Your modifications, or
126
+ for any such Derivative Works as a whole, provided Your use,
127
+ reproduction, and distribution of the Work otherwise complies with
128
+ the conditions stated in this License.
129
+
130
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
131
+ any Contribution intentionally submitted for inclusion in the Work
132
+ by You to the Licensor shall be under the terms and conditions of
133
+ this License, without any additional terms or conditions.
134
+ Notwithstanding the above, nothing herein shall supersede or modify
135
+ the terms of any separate license agreement you may have executed
136
+ with Licensor regarding such Contributions.
137
+
138
+ 6. Trademarks. This License does not grant permission to use the trade
139
+ names, trademarks, service marks, or product names of the Licensor,
140
+ except as required for reasonable and customary use in describing the
141
+ origin of the Work and reproducing the content of the NOTICE file.
142
+
143
+ 7. Disclaimer of Warranty. Unless required by applicable law or
144
+ agreed to in writing, Licensor provides the Work (and each
145
+ Contributor provides its Contributions) on an "AS IS" BASIS,
146
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147
+ implied, including, without limitation, any warranties or conditions
148
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149
+ PARTICULAR PURPOSE. You are solely responsible for determining the
150
+ appropriateness of using or redistributing the Work and assume any
151
+ risks associated with Your exercise of permissions under this License.
152
+
153
+ 8. Limitation of Liability. In no event and under no legal theory,
154
+ whether in tort (including negligence), contract, or otherwise,
155
+ unless required by applicable law (such as deliberate and grossly
156
+ negligent acts) or agreed to in writing, shall any Contributor be
157
+ liable to You for damages, including any direct, indirect, special,
158
+ incidental, or consequential damages of any character arising as a
159
+ result of this License or out of the use or inability to use the
160
+ Work (including but not limited to damages for loss of goodwill,
161
+ work stoppage, computer failure or malfunction, or any and all
162
+ other commercial damages or losses), even if such Contributor
163
+ has been advised of the possibility of such damages.
164
+
165
+ 9. Accepting Warranty or Additional Liability. While redistributing
166
+ the Work or Derivative Works thereof, You may choose to offer,
167
+ and charge a fee for, acceptance of support, warranty, indemnity,
168
+ or other liability obligations and/or rights consistent with this
169
+ License. However, in accepting such obligations, You may act only
170
+ on Your own behalf and on Your sole responsibility, not on behalf
171
+ of any other Contributor, and only if You agree to indemnify,
172
+ defend, and hold each Contributor harmless for any liability
173
+ incurred by, or claims asserted against, such Contributor by reason
174
+ of your accepting any such warranty or additional liability.
175
+
176
+ END OF TERMS AND CONDITIONS
177
+
178
+ APPENDIX: How to apply the Apache License to your work.
179
+
180
+ To apply the Apache License to your work, attach the following
181
+ boilerplate notice, with the fields enclosed by brackets "[]"
182
+ replaced with your own identifying information. (Don't include
183
+ the brackets!) The text should be enclosed in the appropriate
184
+ comment syntax for the file format. We also recommend that a
185
+ file or class name and description of purpose be included on the
186
+ same "printed page" as the copyright notice for easier
187
+ identification within third-party archives.
188
+
189
+ Copyright [yyyy] [name of copyright owner]
190
+
191
+ Licensed under the Apache License, Version 2.0 (the "License");
192
+ you may not use this file except in compliance with the License.
193
+ You may obtain a copy of the License at
194
+
195
+ http://www.apache.org/licenses/LICENSE-2.0
196
+
197
+ Unless required by applicable law or agreed to in writing, software
198
+ distributed under the License is distributed on an "AS IS" BASIS,
199
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200
+ See the License for the specific language governing permissions and
201
+ limitations under the License.
README.md ADDED
@@ -0,0 +1,192 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ base_model: Qwen/Qwen3.5-4B
3
+ library_name: mlx
4
+ license: apache-2.0
5
+ pipeline_tag: image-text-to-text
6
+ tags:
7
+ - mlx
8
+ - qwen3.5
9
+ - lora
10
+ - computer-use
11
+ - gui-agent
12
+ - macos
13
+ ---
14
+
15
+ # gua
16
+
17
+ **gua** is a computer-use decision model for macOS. Given a screenshot, the task and the last few
18
+ actions, it chooses **what kind of action comes next** and **which on-screen element it
19
+ acts on**, and can also **ground an element from a description**. It answers as typed
20
+ multiple-choice decisions and returns a probability for every option, so an agent can act
21
+ on confident answers and defer on the rest.
22
+
23
+ It is [Qwen/Qwen3.5-4B](https://huggingface.co/Qwen/Qwen3.5-4B) fine-tuned (supervised
24
+ fine-tuning with LoRA, rank 8 on every linear layer of the language model) on GUI
25
+ trajectories extracted from screen-recorded software tutorials. This repository holds the
26
+ LoRA merged into the base weights (MLX, bf16) and, in `adapter/`, the LoRA itself.
27
+
28
+ > Research model. The training data was derived from public YouTube tutorials and is not
29
+ > released. See [Training data](#training-data) and [Limitations](#limitations).
30
+
31
+ ## How it answers
32
+
33
+ The model does not generate free text. Each step is asked as up to three questions, all
34
+ sharing one prompt prefix (system prompt, screenshot, task, past actions, numbered element
35
+ list), and the probability of every option is read from the model's next-token
36
+ distribution:
37
+
38
+ | Question | Options | Use |
39
+ |---|---|---|
40
+ | `action` | click, double-click, right-click, drag, type, press, shortcut, scroll, hover, wait, finish | the kind of the next action |
41
+ | `next_target` | the numbered elements on screen | where the next action goes |
42
+ | `grounding` | the numbered elements on screen | which element matches a description you give |
43
+
44
+ Elements are **candidates found on the screenshot**: text lines from the macOS Vision
45
+ framework, and, during training and evaluation, icons from the
46
+ [OmniParser v2](https://huggingface.co/microsoft/OmniParser-v2.0) icon detector. The model
47
+ chooses among candidates; it cannot point at something no candidate covers. When running
48
+ on a live Mac, the accessibility tree is a better candidate source than detection.
49
+
50
+ The prompt format is fixed by training. Use `inference/cua_decide.py`, which reproduces it
51
+ exactly (checked to give identical option probabilities to the evaluation code).
52
+
53
+ ## Usage
54
+
55
+ Apple Silicon with [mlx-vlm](https://github.com/Blaizzy/mlx-vlm) 0.7:
56
+
57
+ ```bash
58
+ pip install "mlx-vlm>=0.7,<0.8" pyobjc-framework-vision pyobjc-framework-quartz
59
+ python inference/cua_decide.py --model <user>/gua \
60
+ --image screen.png --task "Turn on Dark Mode" \
61
+ --past "Click the Apple menu" --past "Click System Settings" \
62
+ --describe "the Appearance item in the sidebar" \
63
+ --temperatures temperatures.json
64
+ ```
65
+
66
+ Each question prints its choice and calibrated confidence, for example:
67
+
68
+ ```json
69
+ {"question": "action", "choice": "click", "confidence": 0.94, "action": "click"}
70
+ {"question": "next_target", "choice": "15", "confidence": 0.60, "element": {"text": "...", "centre": [0.033, 0.136], "box": [...]}}
71
+ ```
72
+
73
+ To use the LoRA instead of the merged weights, pass the base model and the adapter:
74
+ `--model mlx-community/Qwen3.5-4B-MLX-bf16 --adapter adapter`.
75
+
76
+ OmniParser's icon detector improves candidate recall but its weights are AGPL-3.0 and are
77
+ not included; pass `--icon-weights icon_detect/model.pt` if you download them yourself.
78
+ Without it, only text candidates are offered, which lowers recall on icon-only controls.
79
+
80
+ ## Training
81
+
82
+ | | |
83
+ |---|---|
84
+ | Method | Supervised fine-tuning with LoRA: rank 8, alpha 16, on every linear layer of the language model (`q/k/v/o_proj`, linear-attention `in_proj_*`/`out_proj`, MLP `gate/up/down_proj`); vision tower frozen |
85
+ | Objective | Log loss of the right option label (and end-of-turn token) only, never of the prompt |
86
+ | Data | The first 8,000 of 20,623 shuffled training questions of our dataset *macos-cua v2* (see below) |
87
+ | Optimiser | Adam, learning rate 5e-5, batch 1, gradient clipping 1.0, one pass |
88
+ | Hardware | One Apple Silicon Mac (MLX), gradient checkpointing, about 48 h, peak 161 GB |
89
+
90
+ The recipe was chosen on a held-out dev split, never on the eval split: on the same 2,000
91
+ samples, LoRA on every linear layer matched rank 64 and edged out attention-only LoRA, and
92
+ a full-parameter run of the same model on earlier data did not beat LoRA.
93
+
94
+ Dev score during training (mean accuracy of the three questions on 200 fixed dev steps):
95
+
96
+ | Training samples | 0 (base) | 2,000 | 4,000 | 6,000 | 7,000 | 8,000 |
97
+ |---|---|---|---|---|---|---|
98
+ | Dev score | 0.322 | 0.429 | 0.421 | 0.441 | 0.445 | 0.447 |
99
+
100
+ ## Training data
101
+
102
+ Trajectories were extracted automatically from screen-recorded software tutorials on
103
+ YouTube: videos were searched and screened (recording quality, platform), segmented and
104
+ annotated into step-by-step actions by vision-language models, each click was located on
105
+ the frame, and before/after screenshots were cut. The **training split** of *macos-cua v2*:
106
+
107
+ | Topic | Videos | Steps |
108
+ |---|---|---|
109
+ | Godot 4 (game engine) | 79 | 6,271 |
110
+ | Blender (3D) | 39 | 3,764 |
111
+ | macOS video editing (Final Cut Pro, Premiere Pro, CapCut, iMovie) | 7 | 640 |
112
+ | macOS system and productivity apps | 6 | 420 |
113
+
114
+ Splits are by video (dev 14 videos, eval 30 videos, 20 applications appear only in eval).
115
+ Godot typing steps were left out of training: an audit found their labels mostly wrong.
116
+ Many Blender and Godot tutorials were recorded on Windows or full screen; steps that
117
+ would be wrong on a Mac (Windows shortcuts, taskbar, native dialogs) were removed.
118
+
119
+ **Label quality.** Labels are model-generated, not human-verified. A stronger model audited
120
+ a random sample per topic:
121
+
122
+ | Topic | Audited steps | Element located correctly | Action correct |
123
+ |---|---|---|---|
124
+ | macOS system and productivity | 200 | 91.5% | 75.5% |
125
+ | macOS video editing | 395 | 92.4% | 78.2% |
126
+ | Blender | 150 | 89.3% | 70.7% |
127
+ | Godot | 270 | 87.0% | 54.8% |
128
+
129
+ The dataset itself is not released.
130
+
131
+ ## Evaluation
132
+
133
+ On the eval split of *macos-cua v2* (3,442 steps from 30 videos never seen in training;
134
+ 2,079 steps with an element target), against the untrained base with the same prompt and
135
+ candidates:
136
+
137
+ | Question | Base | This model | Difference (95% CI, bootstrap paired by trajectory) |
138
+ |---|---|---|---|
139
+ | `action` accuracy | 0.481 | 0.525 | +0.043 (+0.005, +0.089) |
140
+ | `grounding` accuracy | 0.443 | 0.603 | +0.160 (+0.132, +0.186) |
141
+ | `next_target` accuracy | 0.155 | 0.261 | +0.106 (+0.085, +0.127) |
142
+ | `action` and `next_target` both right | 0.117 | 0.183 | |
143
+
144
+ On **applications never seen in training** (905 steps from software that appears only in
145
+ the eval split) the gains hold: action 0.439 → 0.550, grounding 0.501 → 0.650, next target
146
+ 0.221 → 0.313. A candidate covers the target in 83.4% of the element steps, which bounds
147
+ the element questions.
148
+
149
+ Excluding the 527 Godot typing steps, whose labels an audit found mostly wrong, action
150
+ accuracy is 0.505 → 0.617 (+0.111). Because those steps were left out of training, the
151
+ model rarely answers `type` (22 times against 588 typing steps in eval): expect low recall
152
+ for typing.
153
+
154
+ **Selective accuracy.** Acting only on the most confident half of the answers, grounding
155
+ accuracy is 0.822 and action accuracy 0.636.
156
+
157
+ **Calibration.** `temperatures.json` holds one temperature per question, fitted on the dev
158
+ split by log loss and applied as `p^(1/T)` renormalised (`inference/cua_decide.py
159
+ --temperatures`). Expected calibration error on eval, which the fit never saw:
160
+
161
+ | Question | Temperature | ECE before | ECE after |
162
+ |---|---|---|---|
163
+ | `action` | 2.05 | 0.259 | 0.047 |
164
+ | `grounding` | 1.20 | 0.145 | 0.107 |
165
+ | `next_target` | 0.90 | 0.064 | 0.085 |
166
+
167
+ The action head is strongly overconfident without scaling; the next-target head is
168
+ already close to calibrated, and its fitted temperature slightly lowers log loss on eval
169
+ while slightly raising ECE.
170
+
171
+ ## Limitations
172
+
173
+ - **macOS screenshots only**, English UI and tasks; tutorials over-represent Godot and
174
+ Blender.
175
+ - **Candidate-bound.** The model picks among candidates; if no candidate covers the target
176
+ (16.6% of the element steps in our eval), the element questions have no right answer.
177
+ - **Noisy labels**, as audited above; action-type labels are the weakest.
178
+ - **Not an agent by itself.** It decides the action kind and target; the text to type, the
179
+ keys of a shortcut and drag end points are not predicted.
180
+ - **Merged weights round to bf16.** Against base plus adapter, option probabilities differ
181
+ by at most 0.04 in total variation on our check; use `adapter/` for exact reproduction.
182
+ - Confidence is only meaningful after temperature scaling, and only for the question types
183
+ and candidate sources it was fitted with.
184
+ - Rarely predicts `type` (see Evaluation).
185
+
186
+ ## Licence and provenance
187
+
188
+ The weights are a derivative of Qwen3.5-4B (Apache-2.0) and are released under Apache-2.0
189
+ (`LICENSE`); the modification is the LoRA fine-tuning described above. The training data
190
+ was derived from public YouTube videos for research; no video frames are distributed here.
191
+ `inference/cua_decide.py` is released under the same licence. OmniParser v2 (optional at
192
+ inference) is licensed separately by its authors.
adapter/adapter_config.json ADDED
@@ -0,0 +1,259 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "fine_tune_type": "lora",
3
+ "num_layers": -1,
4
+ "lora_parameters": {
5
+ "rank": 8,
6
+ "dropout": 0,
7
+ "scale": 2.0,
8
+ "keys": [
9
+ "language_model.model.layers.31.mlp.up_proj",
10
+ "language_model.model.layers.31.mlp.down_proj",
11
+ "language_model.model.layers.31.mlp.gate_proj",
12
+ "language_model.model.layers.31.self_attn.o_proj",
13
+ "language_model.model.layers.31.self_attn.v_proj",
14
+ "language_model.model.layers.31.self_attn.k_proj",
15
+ "language_model.model.layers.31.self_attn.q_proj",
16
+ "language_model.model.layers.30.mlp.up_proj",
17
+ "language_model.model.layers.30.mlp.down_proj",
18
+ "language_model.model.layers.30.mlp.gate_proj",
19
+ "language_model.model.layers.30.linear_attn.out_proj",
20
+ "language_model.model.layers.30.linear_attn.in_proj_a",
21
+ "language_model.model.layers.30.linear_attn.in_proj_b",
22
+ "language_model.model.layers.30.linear_attn.in_proj_z",
23
+ "language_model.model.layers.30.linear_attn.in_proj_qkv",
24
+ "language_model.model.layers.29.mlp.up_proj",
25
+ "language_model.model.layers.29.mlp.down_proj",
26
+ "language_model.model.layers.29.mlp.gate_proj",
27
+ "language_model.model.layers.29.linear_attn.out_proj",
28
+ "language_model.model.layers.29.linear_attn.in_proj_a",
29
+ "language_model.model.layers.29.linear_attn.in_proj_b",
30
+ "language_model.model.layers.29.linear_attn.in_proj_z",
31
+ "language_model.model.layers.29.linear_attn.in_proj_qkv",
32
+ "language_model.model.layers.28.mlp.up_proj",
33
+ "language_model.model.layers.28.mlp.down_proj",
34
+ "language_model.model.layers.28.mlp.gate_proj",
35
+ "language_model.model.layers.28.linear_attn.out_proj",
36
+ "language_model.model.layers.28.linear_attn.in_proj_a",
37
+ "language_model.model.layers.28.linear_attn.in_proj_b",
38
+ "language_model.model.layers.28.linear_attn.in_proj_z",
39
+ "language_model.model.layers.28.linear_attn.in_proj_qkv",
40
+ "language_model.model.layers.27.mlp.up_proj",
41
+ "language_model.model.layers.27.mlp.down_proj",
42
+ "language_model.model.layers.27.mlp.gate_proj",
43
+ "language_model.model.layers.27.self_attn.o_proj",
44
+ "language_model.model.layers.27.self_attn.v_proj",
45
+ "language_model.model.layers.27.self_attn.k_proj",
46
+ "language_model.model.layers.27.self_attn.q_proj",
47
+ "language_model.model.layers.26.mlp.up_proj",
48
+ "language_model.model.layers.26.mlp.down_proj",
49
+ "language_model.model.layers.26.mlp.gate_proj",
50
+ "language_model.model.layers.26.linear_attn.out_proj",
51
+ "language_model.model.layers.26.linear_attn.in_proj_a",
52
+ "language_model.model.layers.26.linear_attn.in_proj_b",
53
+ "language_model.model.layers.26.linear_attn.in_proj_z",
54
+ "language_model.model.layers.26.linear_attn.in_proj_qkv",
55
+ "language_model.model.layers.25.mlp.up_proj",
56
+ "language_model.model.layers.25.mlp.down_proj",
57
+ "language_model.model.layers.25.mlp.gate_proj",
58
+ "language_model.model.layers.25.linear_attn.out_proj",
59
+ "language_model.model.layers.25.linear_attn.in_proj_a",
60
+ "language_model.model.layers.25.linear_attn.in_proj_b",
61
+ "language_model.model.layers.25.linear_attn.in_proj_z",
62
+ "language_model.model.layers.25.linear_attn.in_proj_qkv",
63
+ "language_model.model.layers.24.mlp.up_proj",
64
+ "language_model.model.layers.24.mlp.down_proj",
65
+ "language_model.model.layers.24.mlp.gate_proj",
66
+ "language_model.model.layers.24.linear_attn.out_proj",
67
+ "language_model.model.layers.24.linear_attn.in_proj_a",
68
+ "language_model.model.layers.24.linear_attn.in_proj_b",
69
+ "language_model.model.layers.24.linear_attn.in_proj_z",
70
+ "language_model.model.layers.24.linear_attn.in_proj_qkv",
71
+ "language_model.model.layers.23.mlp.up_proj",
72
+ "language_model.model.layers.23.mlp.down_proj",
73
+ "language_model.model.layers.23.mlp.gate_proj",
74
+ "language_model.model.layers.23.self_attn.o_proj",
75
+ "language_model.model.layers.23.self_attn.v_proj",
76
+ "language_model.model.layers.23.self_attn.k_proj",
77
+ "language_model.model.layers.23.self_attn.q_proj",
78
+ "language_model.model.layers.22.mlp.up_proj",
79
+ "language_model.model.layers.22.mlp.down_proj",
80
+ "language_model.model.layers.22.mlp.gate_proj",
81
+ "language_model.model.layers.22.linear_attn.out_proj",
82
+ "language_model.model.layers.22.linear_attn.in_proj_a",
83
+ "language_model.model.layers.22.linear_attn.in_proj_b",
84
+ "language_model.model.layers.22.linear_attn.in_proj_z",
85
+ "language_model.model.layers.22.linear_attn.in_proj_qkv",
86
+ "language_model.model.layers.21.mlp.up_proj",
87
+ "language_model.model.layers.21.mlp.down_proj",
88
+ "language_model.model.layers.21.mlp.gate_proj",
89
+ "language_model.model.layers.21.linear_attn.out_proj",
90
+ "language_model.model.layers.21.linear_attn.in_proj_a",
91
+ "language_model.model.layers.21.linear_attn.in_proj_b",
92
+ "language_model.model.layers.21.linear_attn.in_proj_z",
93
+ "language_model.model.layers.21.linear_attn.in_proj_qkv",
94
+ "language_model.model.layers.20.mlp.up_proj",
95
+ "language_model.model.layers.20.mlp.down_proj",
96
+ "language_model.model.layers.20.mlp.gate_proj",
97
+ "language_model.model.layers.20.linear_attn.out_proj",
98
+ "language_model.model.layers.20.linear_attn.in_proj_a",
99
+ "language_model.model.layers.20.linear_attn.in_proj_b",
100
+ "language_model.model.layers.20.linear_attn.in_proj_z",
101
+ "language_model.model.layers.20.linear_attn.in_proj_qkv",
102
+ "language_model.model.layers.19.mlp.up_proj",
103
+ "language_model.model.layers.19.mlp.down_proj",
104
+ "language_model.model.layers.19.mlp.gate_proj",
105
+ "language_model.model.layers.19.self_attn.o_proj",
106
+ "language_model.model.layers.19.self_attn.v_proj",
107
+ "language_model.model.layers.19.self_attn.k_proj",
108
+ "language_model.model.layers.19.self_attn.q_proj",
109
+ "language_model.model.layers.18.mlp.up_proj",
110
+ "language_model.model.layers.18.mlp.down_proj",
111
+ "language_model.model.layers.18.mlp.gate_proj",
112
+ "language_model.model.layers.18.linear_attn.out_proj",
113
+ "language_model.model.layers.18.linear_attn.in_proj_a",
114
+ "language_model.model.layers.18.linear_attn.in_proj_b",
115
+ "language_model.model.layers.18.linear_attn.in_proj_z",
116
+ "language_model.model.layers.18.linear_attn.in_proj_qkv",
117
+ "language_model.model.layers.17.mlp.up_proj",
118
+ "language_model.model.layers.17.mlp.down_proj",
119
+ "language_model.model.layers.17.mlp.gate_proj",
120
+ "language_model.model.layers.17.linear_attn.out_proj",
121
+ "language_model.model.layers.17.linear_attn.in_proj_a",
122
+ "language_model.model.layers.17.linear_attn.in_proj_b",
123
+ "language_model.model.layers.17.linear_attn.in_proj_z",
124
+ "language_model.model.layers.17.linear_attn.in_proj_qkv",
125
+ "language_model.model.layers.16.mlp.up_proj",
126
+ "language_model.model.layers.16.mlp.down_proj",
127
+ "language_model.model.layers.16.mlp.gate_proj",
128
+ "language_model.model.layers.16.linear_attn.out_proj",
129
+ "language_model.model.layers.16.linear_attn.in_proj_a",
130
+ "language_model.model.layers.16.linear_attn.in_proj_b",
131
+ "language_model.model.layers.16.linear_attn.in_proj_z",
132
+ "language_model.model.layers.16.linear_attn.in_proj_qkv",
133
+ "language_model.model.layers.15.mlp.up_proj",
134
+ "language_model.model.layers.15.mlp.down_proj",
135
+ "language_model.model.layers.15.mlp.gate_proj",
136
+ "language_model.model.layers.15.self_attn.o_proj",
137
+ "language_model.model.layers.15.self_attn.v_proj",
138
+ "language_model.model.layers.15.self_attn.k_proj",
139
+ "language_model.model.layers.15.self_attn.q_proj",
140
+ "language_model.model.layers.14.mlp.up_proj",
141
+ "language_model.model.layers.14.mlp.down_proj",
142
+ "language_model.model.layers.14.mlp.gate_proj",
143
+ "language_model.model.layers.14.linear_attn.out_proj",
144
+ "language_model.model.layers.14.linear_attn.in_proj_a",
145
+ "language_model.model.layers.14.linear_attn.in_proj_b",
146
+ "language_model.model.layers.14.linear_attn.in_proj_z",
147
+ "language_model.model.layers.14.linear_attn.in_proj_qkv",
148
+ "language_model.model.layers.13.mlp.up_proj",
149
+ "language_model.model.layers.13.mlp.down_proj",
150
+ "language_model.model.layers.13.mlp.gate_proj",
151
+ "language_model.model.layers.13.linear_attn.out_proj",
152
+ "language_model.model.layers.13.linear_attn.in_proj_a",
153
+ "language_model.model.layers.13.linear_attn.in_proj_b",
154
+ "language_model.model.layers.13.linear_attn.in_proj_z",
155
+ "language_model.model.layers.13.linear_attn.in_proj_qkv",
156
+ "language_model.model.layers.12.mlp.up_proj",
157
+ "language_model.model.layers.12.mlp.down_proj",
158
+ "language_model.model.layers.12.mlp.gate_proj",
159
+ "language_model.model.layers.12.linear_attn.out_proj",
160
+ "language_model.model.layers.12.linear_attn.in_proj_a",
161
+ "language_model.model.layers.12.linear_attn.in_proj_b",
162
+ "language_model.model.layers.12.linear_attn.in_proj_z",
163
+ "language_model.model.layers.12.linear_attn.in_proj_qkv",
164
+ "language_model.model.layers.11.mlp.up_proj",
165
+ "language_model.model.layers.11.mlp.down_proj",
166
+ "language_model.model.layers.11.mlp.gate_proj",
167
+ "language_model.model.layers.11.self_attn.o_proj",
168
+ "language_model.model.layers.11.self_attn.v_proj",
169
+ "language_model.model.layers.11.self_attn.k_proj",
170
+ "language_model.model.layers.11.self_attn.q_proj",
171
+ "language_model.model.layers.10.mlp.up_proj",
172
+ "language_model.model.layers.10.mlp.down_proj",
173
+ "language_model.model.layers.10.mlp.gate_proj",
174
+ "language_model.model.layers.10.linear_attn.out_proj",
175
+ "language_model.model.layers.10.linear_attn.in_proj_a",
176
+ "language_model.model.layers.10.linear_attn.in_proj_b",
177
+ "language_model.model.layers.10.linear_attn.in_proj_z",
178
+ "language_model.model.layers.10.linear_attn.in_proj_qkv",
179
+ "language_model.model.layers.9.mlp.up_proj",
180
+ "language_model.model.layers.9.mlp.down_proj",
181
+ "language_model.model.layers.9.mlp.gate_proj",
182
+ "language_model.model.layers.9.linear_attn.out_proj",
183
+ "language_model.model.layers.9.linear_attn.in_proj_a",
184
+ "language_model.model.layers.9.linear_attn.in_proj_b",
185
+ "language_model.model.layers.9.linear_attn.in_proj_z",
186
+ "language_model.model.layers.9.linear_attn.in_proj_qkv",
187
+ "language_model.model.layers.8.mlp.up_proj",
188
+ "language_model.model.layers.8.mlp.down_proj",
189
+ "language_model.model.layers.8.mlp.gate_proj",
190
+ "language_model.model.layers.8.linear_attn.out_proj",
191
+ "language_model.model.layers.8.linear_attn.in_proj_a",
192
+ "language_model.model.layers.8.linear_attn.in_proj_b",
193
+ "language_model.model.layers.8.linear_attn.in_proj_z",
194
+ "language_model.model.layers.8.linear_attn.in_proj_qkv",
195
+ "language_model.model.layers.7.mlp.up_proj",
196
+ "language_model.model.layers.7.mlp.down_proj",
197
+ "language_model.model.layers.7.mlp.gate_proj",
198
+ "language_model.model.layers.7.self_attn.o_proj",
199
+ "language_model.model.layers.7.self_attn.v_proj",
200
+ "language_model.model.layers.7.self_attn.k_proj",
201
+ "language_model.model.layers.7.self_attn.q_proj",
202
+ "language_model.model.layers.6.mlp.up_proj",
203
+ "language_model.model.layers.6.mlp.down_proj",
204
+ "language_model.model.layers.6.mlp.gate_proj",
205
+ "language_model.model.layers.6.linear_attn.out_proj",
206
+ "language_model.model.layers.6.linear_attn.in_proj_a",
207
+ "language_model.model.layers.6.linear_attn.in_proj_b",
208
+ "language_model.model.layers.6.linear_attn.in_proj_z",
209
+ "language_model.model.layers.6.linear_attn.in_proj_qkv",
210
+ "language_model.model.layers.5.mlp.up_proj",
211
+ "language_model.model.layers.5.mlp.down_proj",
212
+ "language_model.model.layers.5.mlp.gate_proj",
213
+ "language_model.model.layers.5.linear_attn.out_proj",
214
+ "language_model.model.layers.5.linear_attn.in_proj_a",
215
+ "language_model.model.layers.5.linear_attn.in_proj_b",
216
+ "language_model.model.layers.5.linear_attn.in_proj_z",
217
+ "language_model.model.layers.5.linear_attn.in_proj_qkv",
218
+ "language_model.model.layers.4.mlp.up_proj",
219
+ "language_model.model.layers.4.mlp.down_proj",
220
+ "language_model.model.layers.4.mlp.gate_proj",
221
+ "language_model.model.layers.4.linear_attn.out_proj",
222
+ "language_model.model.layers.4.linear_attn.in_proj_a",
223
+ "language_model.model.layers.4.linear_attn.in_proj_b",
224
+ "language_model.model.layers.4.linear_attn.in_proj_z",
225
+ "language_model.model.layers.4.linear_attn.in_proj_qkv",
226
+ "language_model.model.layers.3.mlp.up_proj",
227
+ "language_model.model.layers.3.mlp.down_proj",
228
+ "language_model.model.layers.3.mlp.gate_proj",
229
+ "language_model.model.layers.3.self_attn.o_proj",
230
+ "language_model.model.layers.3.self_attn.v_proj",
231
+ "language_model.model.layers.3.self_attn.k_proj",
232
+ "language_model.model.layers.3.self_attn.q_proj",
233
+ "language_model.model.layers.2.mlp.up_proj",
234
+ "language_model.model.layers.2.mlp.down_proj",
235
+ "language_model.model.layers.2.mlp.gate_proj",
236
+ "language_model.model.layers.2.linear_attn.out_proj",
237
+ "language_model.model.layers.2.linear_attn.in_proj_a",
238
+ "language_model.model.layers.2.linear_attn.in_proj_b",
239
+ "language_model.model.layers.2.linear_attn.in_proj_z",
240
+ "language_model.model.layers.2.linear_attn.in_proj_qkv",
241
+ "language_model.model.layers.1.mlp.up_proj",
242
+ "language_model.model.layers.1.mlp.down_proj",
243
+ "language_model.model.layers.1.mlp.gate_proj",
244
+ "language_model.model.layers.1.linear_attn.out_proj",
245
+ "language_model.model.layers.1.linear_attn.in_proj_a",
246
+ "language_model.model.layers.1.linear_attn.in_proj_b",
247
+ "language_model.model.layers.1.linear_attn.in_proj_z",
248
+ "language_model.model.layers.1.linear_attn.in_proj_qkv",
249
+ "language_model.model.layers.0.mlp.up_proj",
250
+ "language_model.model.layers.0.mlp.down_proj",
251
+ "language_model.model.layers.0.mlp.gate_proj",
252
+ "language_model.model.layers.0.linear_attn.out_proj",
253
+ "language_model.model.layers.0.linear_attn.in_proj_a",
254
+ "language_model.model.layers.0.linear_attn.in_proj_b",
255
+ "language_model.model.layers.0.linear_attn.in_proj_z",
256
+ "language_model.model.layers.0.linear_attn.in_proj_qkv"
257
+ ]
258
+ }
259
+ }
adapter/adapters.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:872135863fbb2c45785d965898d85819efe15052004c76eddf7a2923e9f6f365
3
+ size 64991946
chat_template.jinja ADDED
@@ -0,0 +1,154 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
+ {%- if tools and tools is iterable and tools is not mapping %}
46
+ {{- '<|im_start|>system\n' }}
47
+ {{- "# Tools\n\nYou have access to the following functions:\n\n<tools>" }}
48
+ {%- for tool in tools %}
49
+ {{- "\n" }}
50
+ {{- tool | tojson }}
51
+ {%- endfor %}
52
+ {{- "\n</tools>" }}
53
+ {{- '\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>' }}
54
+ {%- if messages[0].role == 'system' %}
55
+ {%- set content = render_content(messages[0].content, false, true)|trim %}
56
+ {%- if content %}
57
+ {{- '\n\n' + content }}
58
+ {%- endif %}
59
+ {%- endif %}
60
+ {{- '<|im_end|>\n' }}
61
+ {%- else %}
62
+ {%- if messages[0].role == 'system' %}
63
+ {%- set content = render_content(messages[0].content, false, true)|trim %}
64
+ {{- '<|im_start|>system\n' + content + '<|im_end|>\n' }}
65
+ {%- endif %}
66
+ {%- endif %}
67
+ {%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}
68
+ {%- for message in messages[::-1] %}
69
+ {%- set index = (messages|length - 1) - loop.index0 %}
70
+ {%- if ns.multi_step_tool and message.role == "user" %}
71
+ {%- set content = render_content(message.content, false)|trim %}
72
+ {%- if not(content.startswith('<tool_response>') and content.endswith('</tool_response>')) %}
73
+ {%- set ns.multi_step_tool = false %}
74
+ {%- set ns.last_query_index = index %}
75
+ {%- endif %}
76
+ {%- endif %}
77
+ {%- endfor %}
78
+ {%- if ns.multi_step_tool %}
79
+ {{- raise_exception('No user query found in messages.') }}
80
+ {%- endif %}
81
+ {%- for message in messages %}
82
+ {%- set content = render_content(message.content, true)|trim %}
83
+ {%- if message.role == "system" %}
84
+ {%- if not loop.first %}
85
+ {{- raise_exception('System message must be at the beginning.') }}
86
+ {%- endif %}
87
+ {%- elif message.role == "user" %}
88
+ {{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }}
89
+ {%- elif message.role == "assistant" %}
90
+ {%- set reasoning_content = '' %}
91
+ {%- if message.reasoning_content is string %}
92
+ {%- set reasoning_content = message.reasoning_content %}
93
+ {%- else %}
94
+ {%- if '</think>' in content %}
95
+ {%- set reasoning_content = content.split('</think>')[0].rstrip('\n').split('<think>')[-1].lstrip('\n') %}
96
+ {%- set content = content.split('</think>')[-1].lstrip('\n') %}
97
+ {%- endif %}
98
+ {%- endif %}
99
+ {%- set reasoning_content = reasoning_content|trim %}
100
+ {%- if loop.index0 > ns.last_query_index %}
101
+ {{- '<|im_start|>' + message.role + '\n<think>\n' + reasoning_content + '\n</think>\n\n' + content }}
102
+ {%- else %}
103
+ {{- '<|im_start|>' + message.role + '\n' + content }}
104
+ {%- endif %}
105
+ {%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %}
106
+ {%- for tool_call in message.tool_calls %}
107
+ {%- if tool_call.function is defined %}
108
+ {%- set tool_call = tool_call.function %}
109
+ {%- endif %}
110
+ {%- if loop.first %}
111
+ {%- if content|trim %}
112
+ {{- '\n\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
113
+ {%- else %}
114
+ {{- '<tool_call>\n<function=' + tool_call.name + '>\n' }}
115
+ {%- endif %}
116
+ {%- else %}
117
+ {{- '\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
118
+ {%- endif %}
119
+ {%- if tool_call.arguments is defined %}
120
+ {%- for args_name, args_value in tool_call.arguments|items %}
121
+ {{- '<parameter=' + args_name + '>\n' }}
122
+ {%- set args_value = args_value | tojson | safe if args_value is mapping or (args_value is sequence and args_value is not string) else args_value | string %}
123
+ {{- args_value }}
124
+ {{- '\n</parameter>\n' }}
125
+ {%- endfor %}
126
+ {%- endif %}
127
+ {{- '</function>\n</tool_call>' }}
128
+ {%- endfor %}
129
+ {%- endif %}
130
+ {{- '<|im_end|>\n' }}
131
+ {%- elif message.role == "tool" %}
132
+ {%- if loop.previtem and loop.previtem.role != "tool" %}
133
+ {{- '<|im_start|>user' }}
134
+ {%- endif %}
135
+ {{- '\n<tool_response>\n' }}
136
+ {{- content }}
137
+ {{- '\n</tool_response>' }}
138
+ {%- if not loop.last and loop.nextitem.role != "tool" %}
139
+ {{- '<|im_end|>\n' }}
140
+ {%- elif loop.last %}
141
+ {{- '<|im_end|>\n' }}
142
+ {%- endif %}
143
+ {%- else %}
144
+ {{- raise_exception('Unexpected message role.') }}
145
+ {%- endif %}
146
+ {%- endfor %}
147
+ {%- if add_generation_prompt %}
148
+ {{- '<|im_start|>assistant\n' }}
149
+ {%- if enable_thinking is defined and enable_thinking is false %}
150
+ {{- '<think>\n\n</think>\n\n' }}
151
+ {%- else %}
152
+ {{- '<think>\n' }}
153
+ {%- endif %}
154
+ {%- endif %}
config.json ADDED
@@ -0,0 +1,104 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "Qwen3_5ForConditionalGeneration"
4
+ ],
5
+ "image_token_id": 248056,
6
+ "model_type": "qwen3_5",
7
+ "text_config": {
8
+ "attention_bias": false,
9
+ "attention_dropout": 0.0,
10
+ "attn_output_gate": true,
11
+ "dtype": "bfloat16",
12
+ "eos_token_id": 248044,
13
+ "full_attention_interval": 4,
14
+ "head_dim": 256,
15
+ "hidden_act": "silu",
16
+ "hidden_size": 2560,
17
+ "initializer_range": 0.02,
18
+ "intermediate_size": 9216,
19
+ "layer_types": [
20
+ "linear_attention",
21
+ "linear_attention",
22
+ "linear_attention",
23
+ "full_attention",
24
+ "linear_attention",
25
+ "linear_attention",
26
+ "linear_attention",
27
+ "full_attention",
28
+ "linear_attention",
29
+ "linear_attention",
30
+ "linear_attention",
31
+ "full_attention",
32
+ "linear_attention",
33
+ "linear_attention",
34
+ "linear_attention",
35
+ "full_attention",
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
+ ],
53
+ "linear_conv_kernel_dim": 4,
54
+ "linear_key_head_dim": 128,
55
+ "linear_num_key_heads": 16,
56
+ "linear_num_value_heads": 32,
57
+ "linear_value_head_dim": 128,
58
+ "max_position_embeddings": 262144,
59
+ "mlp_only_layers": [],
60
+ "model_type": "qwen3_5_text",
61
+ "mtp_num_hidden_layers": 1,
62
+ "mtp_use_dedicated_embeddings": false,
63
+ "num_attention_heads": 16,
64
+ "num_hidden_layers": 32,
65
+ "num_key_value_heads": 4,
66
+ "rms_norm_eps": 1e-06,
67
+ "tie_word_embeddings": true,
68
+ "use_cache": true,
69
+ "vocab_size": 248320,
70
+ "mamba_ssm_dtype": "float32",
71
+ "rope_parameters": {
72
+ "mrope_interleaved": true,
73
+ "mrope_section": [
74
+ 11,
75
+ 11,
76
+ 10
77
+ ],
78
+ "rope_type": "default",
79
+ "rope_theta": 10000000,
80
+ "partial_rotary_factor": 0.25
81
+ }
82
+ },
83
+ "tie_word_embeddings": true,
84
+ "transformers_version": "4.57.0.dev0",
85
+ "video_token_id": 248057,
86
+ "vision_config": {
87
+ "deepstack_visual_indexes": [],
88
+ "depth": 24,
89
+ "hidden_act": "gelu_pytorch_tanh",
90
+ "hidden_size": 1024,
91
+ "in_channels": 3,
92
+ "initializer_range": 0.02,
93
+ "intermediate_size": 4096,
94
+ "model_type": "qwen3_5",
95
+ "num_heads": 16,
96
+ "num_position_embeddings": 2304,
97
+ "out_hidden_size": 2560,
98
+ "patch_size": 16,
99
+ "spatial_merge_size": 2,
100
+ "temporal_patch_size": 2
101
+ },
102
+ "vision_end_token_id": 248054,
103
+ "vision_start_token_id": 248053
104
+ }
inference/cua_decide.py ADDED
@@ -0,0 +1,318 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Typed next-step decisions on a macOS screenshot with the macOS CUA decision model.
2
+
3
+ The model does not generate free text. Each step is asked as up to three multiple-choice
4
+ questions, and every option's probability is read from one shared forward pass:
5
+
6
+ - action: which kind of action comes next (click, double-click, ..., finish);
7
+ - next_target: which on-screen element the next action acts on;
8
+ - grounding: which element matches a description you give.
9
+
10
+ Elements are candidates found on the screenshot: text lines from the macOS Vision
11
+ framework, plus, optionally, icons from OmniParser v2's detector (AGPL-3.0 weights, not
12
+ bundled; see the model card). The prompt format below is the one the model was trained on;
13
+ changing it changes the answers.
14
+
15
+ pip install "mlx-vlm>=0.7,<0.8" pyobjc-framework-vision pyobjc-framework-quartz
16
+ python cua_decide.py --model <repo or dir> --image screen.png \\
17
+ --task "Turn on Dark Mode" --past "Click the Apple menu" \\
18
+ --temperatures temperatures.json
19
+
20
+ This file is self-contained and mirrors the code the model was trained and evaluated with.
21
+ """
22
+
23
+ from __future__ import annotations
24
+
25
+ import argparse
26
+ import json
27
+ import math
28
+ from dataclasses import dataclass
29
+ from pathlib import Path
30
+ from typing import Any
31
+
32
+ SYSTEM = ("You are a macOS computer-use assistant. You look at the current screen and "
33
+ "answer each question by choosing one of the options it offers.")
34
+ # Option label shown to the model, and the action it stands for.
35
+ ACTIONS = [("click", "click"), ("double-click", "doubleClick"),
36
+ ("right-click", "rightClick"), ("drag", "dragTo"), ("type", "write"),
37
+ ("press", "press"), ("shortcut", "hotkey"), ("scroll", "scroll"),
38
+ ("hover", "moveTo"), ("wait", "wait"), ("finish", "finish")]
39
+
40
+
41
+ # -- candidates ------------------------------------------------------------------------------
42
+
43
+ @dataclass(frozen=True)
44
+ class Candidate:
45
+ """A box on the screenshot, normalized to [0, 1] from the top left."""
46
+ x1: float
47
+ y1: float
48
+ x2: float
49
+ y2: float
50
+ text: str
51
+ source: str
52
+
53
+ @property
54
+ def centre(self) -> tuple[float, float]:
55
+ return (self.x1 + self.x2) / 2, (self.y1 + self.y2) / 2
56
+
57
+
58
+ def text_candidates(image: Path, min_height: float = 0.006) -> list[Candidate]:
59
+ """Every text line the macOS Vision framework recognises."""
60
+ import Vision
61
+ from Foundation import NSURL
62
+
63
+ handler = Vision.VNImageRequestHandler.alloc().initWithURL_options_(
64
+ NSURL.fileURLWithPath_(str(image)), None)
65
+ request = Vision.VNRecognizeTextRequest.alloc().init()
66
+ request.setRecognitionLevel_(Vision.VNRequestTextRecognitionLevelAccurate)
67
+ request.setUsesLanguageCorrection_(False)
68
+ ok, error = handler.performRequests_error_([request], None)
69
+ if not ok:
70
+ raise RuntimeError(f"text recognition failed on {image}: {error}")
71
+ found = []
72
+ for observation in request.results() or []:
73
+ top = observation.topCandidates_(1)
74
+ if not top:
75
+ continue
76
+ box = observation.boundingBox()
77
+ x1, width = float(box.origin.x), float(box.size.width)
78
+ y2 = 1.0 - float(box.origin.y)
79
+ y1 = y2 - float(box.size.height)
80
+ if y2 - y1 >= min_height:
81
+ found.append(Candidate(max(0.0, x1), max(0.0, y1), min(1.0, x1 + width),
82
+ min(1.0, y2), str(top[0].string()), "text"))
83
+ return found
84
+
85
+
86
+ def icon_candidates(image: Path, weights: Path, confidence: float = 0.05) -> list[Candidate]:
87
+ """Interactable regions from OmniParser v2's icon detector (you supply its weights)."""
88
+ from ultralytics import YOLO
89
+
90
+ result = YOLO(str(weights)).predict(str(image), conf=confidence, iou=0.3, imgsz=1280,
91
+ verbose=False)[0]
92
+ width, height = result.orig_shape[1], result.orig_shape[0]
93
+ return [Candidate(x1 / width, y1 / height, x2 / width, y2 / height, "", "icon")
94
+ for x1, y1, x2, y2 in result.boxes.xyxy.tolist()]
95
+
96
+
97
+ def _overlap(first: Candidate, second: Candidate) -> float:
98
+ width = min(first.x2, second.x2) - max(first.x1, second.x1)
99
+ height = min(first.y2, second.y2) - max(first.y1, second.y1)
100
+ if width <= 0 or height <= 0:
101
+ return 0.0
102
+ smaller = min((first.x2 - first.x1) * (first.y2 - first.y1),
103
+ (second.x2 - second.x1) * (second.y2 - second.y1))
104
+ return width * height / smaller if smaller else 0.0
105
+
106
+
107
+ def screen_candidates(image: Path, icon_weights: Path | None = None) -> list[Candidate]:
108
+ """Text lines, then detected icons no text line accounts for, in reading order."""
109
+ texts = text_candidates(image)
110
+ icons = [] if icon_weights is None else [
111
+ icon for icon in icon_candidates(image, icon_weights)
112
+ if all(_overlap(icon, text) < 0.6 for text in texts)]
113
+ return sorted(texts + icons, key=lambda item: (round(item.y1, 2), item.x1))
114
+
115
+
116
+ # -- prompt ---------------------------------------------------------------------------------
117
+
118
+ def label_width(found: list[Candidate]) -> int:
119
+ return max(2, len(str(max(0, len(found) - 1))))
120
+
121
+
122
+ def context(task: str, past_actions: list[str], found: list[Candidate]) -> str:
123
+ """The shared part of every question: task, the last three actions, the elements."""
124
+ width = label_width(found)
125
+ elements = "\n".join(
126
+ f"[{index:0{width}d}] at ({round(c.centre[0] * 1000)}, {round(c.centre[1] * 1000)}) "
127
+ + (f'"{c.text[:60]}"' if c.text else "icon or control")
128
+ for index, c in enumerate(found))
129
+ history = "\n".join(past_actions[-3:]) or "(none)"
130
+ return (f"Task: {task}\nPast actions:\n{history}\n\n"
131
+ f"Elements on the current screen, numbered, with centre coordinates "
132
+ f"from 0 to 1000:\n{elements}")
133
+
134
+
135
+ def questions(found: list[Candidate], describe: str | None) -> list[tuple[str, str, list[str]]]:
136
+ """(name, question text, option labels) for each question to ask."""
137
+ width = label_width(found)
138
+ labels = [f"{index:0{width}d}" for index in range(len(found))]
139
+ asked = [("action", "What kind of action comes next? Answer with exactly one word from: "
140
+ + ", ".join(label for label, _ in ACTIONS) + ".", [label for label, _ in ACTIONS])]
141
+ if found:
142
+ asked.append(("next_target", "Which element does the next action act on? "
143
+ f"Answer with the element's {width}-digit number.", labels))
144
+ if describe:
145
+ asked.append(("grounding", f"Which element is this: {describe}? "
146
+ f"Answer with the element's {width}-digit number.", labels))
147
+ return asked
148
+
149
+
150
+ # -- scoring --------------------------------------------------------------------------------
151
+
152
+ class DecisionModel:
153
+ """Reads option probabilities from one shared forward pass over the common prefix."""
154
+
155
+ def __init__(self, path: str, adapter: str | None = None) -> None:
156
+ import mlx.core as mx
157
+ import mlx_vlm
158
+ from mlx_vlm import utils
159
+ from mlx_vlm.models import cache
160
+
161
+ self.mx, self.utils, self.cache = mx, utils, cache
162
+ self.model, self.processor = mlx_vlm.load(path, adapter_path=adapter, lazy=False)
163
+ # The resolution the model was trained at.
164
+ self.processor.image_processor.max_pixels = 786432
165
+ self.processor.image_processor.min_pixels = 65536
166
+ self.model.eval()
167
+ self.tokenizer = self.processor.tokenizer
168
+ mx.set_cache_limit(2 * 1024**3)
169
+
170
+ def _prompt(self, text: str) -> str:
171
+ messages = [{"role": "system", "content": SYSTEM},
172
+ {"role": "user", "content": [{"type": "image"},
173
+ {"type": "text", "text": text}]}]
174
+ return self.processor.apply_chat_template(messages, tokenize=False,
175
+ add_generation_prompt=True,
176
+ enable_thinking=False)
177
+
178
+ def _reset(self) -> None:
179
+ # Positions carried over from the last prompt must not leak into this one.
180
+ for name in ("_position_ids", "_rope_deltas"):
181
+ if hasattr(self.model.language_model, name):
182
+ setattr(self.model.language_model, name, None)
183
+
184
+ @staticmethod
185
+ def _snapshot(entries: list[Any]) -> list[Any]:
186
+ return [("kv", entry.offset) if hasattr(entry, "offset") else ("arrays", list(entry.cache))
187
+ for entry in entries]
188
+
189
+ @staticmethod
190
+ def _restore(entries: list[Any], state: list[Any]) -> None:
191
+ for entry, (kind, value) in zip(entries, state, strict=True):
192
+ if kind == "kv":
193
+ entry.offset = value
194
+ else:
195
+ entry.cache = list(value)
196
+
197
+ def _next(self, entries: list[Any], tokens: list[int], kwargs: dict[str, Any]) -> Any:
198
+ mx = self.mx
199
+ out = self.model.language_model(mx.array([tokens]), cache=entries, **kwargs)
200
+ logits = out.logits[:, -1, :].astype(mx.float32)
201
+ return (logits - mx.logsumexp(logits, axis=-1, keepdims=True))[0]
202
+
203
+ def decide(self, image: Path, shared: str,
204
+ asked: list[tuple[str, str, list[str]]]) -> dict[str, list[float]]:
205
+ """Each question's option probabilities, from one pass over the shared prefix."""
206
+ mx = self.mx
207
+ lm = self.model.language_model
208
+ encoded = [self.utils.prepare_inputs(self.processor, images=[str(image)],
209
+ prompts=[self._prompt(f"{shared}\n\n{text}")],
210
+ image_token_index=self.model.config.image_token_index)
211
+ for _, text, _ in asked]
212
+ sequences = [inputs["input_ids"][0].tolist() for inputs in encoded]
213
+ common = 0
214
+ while all(len(seq) > common + 1 for seq in sequences) and len(
215
+ {seq[common] for seq in sequences}) == 1:
216
+ common += 1
217
+ self._reset()
218
+ entries = self.cache.make_prompt_cache(lm)
219
+ first = encoded[0]
220
+ prefix = first["input_ids"][:, :common]
221
+ extra = {key: value for key, value in first.items()
222
+ if key not in ("input_ids", "pixel_values", "attention_mask")}
223
+ embedded = self.model.get_input_embeddings(
224
+ prefix, first.get("pixel_values"), mask=first["attention_mask"][:, :common], **extra)
225
+ kwargs = {key: value for key, value in embedded.to_dict().items()
226
+ if key != "inputs_embeds" and value is not None}
227
+ lm(prefix, inputs_embeds=embedded.inputs_embeds, cache=entries, skip_logits=True,
228
+ return_hidden=True, **kwargs)
229
+ # Positions are only right for the prefix; later tokens continue from the cache.
230
+ kwargs = {key: value for key, value in kwargs.items() if key != "position_ids"}
231
+ mx.eval([entry.state for entry in entries])
232
+ base = self._snapshot(entries)
233
+ result = {}
234
+ for (name, _, labels), sequence in zip(asked, sequences, strict=True):
235
+ root = self._next(entries, sequence[common:], kwargs)
236
+ after_question = self._snapshot(entries)
237
+ tokens = [self.tokenizer.encode(label, add_special_tokens=False) for label in labels]
238
+ scores = self._walk(entries, root, tokens, kwargs, after_question)
239
+ top = max(scores)
240
+ weights = [math.exp(score - top) for score in scores]
241
+ total = sum(weights)
242
+ result[name] = [weight / total for weight in weights]
243
+ self._restore(entries, base)
244
+ mx.clear_cache()
245
+ return result
246
+
247
+ def _walk(self, entries: list[Any], root: Any, labels: list[list[int]],
248
+ kwargs: dict[str, Any], root_state: list[Any]) -> list[float]:
249
+ """Log probability of every label, one step per distinct token prefix."""
250
+ scores = [0.0] * len(labels)
251
+ pending = [((), root, root_state)]
252
+ while pending:
253
+ prefix, logprobs, state = pending.pop()
254
+ depth = len(prefix)
255
+ members = [index for index, tokens in enumerate(labels)
256
+ if tuple(tokens[:depth]) == prefix and len(tokens) > depth]
257
+ if not members:
258
+ continue
259
+ row = logprobs.tolist()
260
+ children: dict[int, list[int]] = {}
261
+ for index in members:
262
+ token = labels[index][depth]
263
+ scores[index] += row[token]
264
+ children.setdefault(token, []).append(index)
265
+ for token, group in children.items():
266
+ if all(len(labels[index]) == depth + 1 for index in group):
267
+ continue
268
+ self._restore(entries, state)
269
+ following = self._next(entries, [token], kwargs)
270
+ pending.append((prefix + (token,), following, self._snapshot(entries)))
271
+ return scores
272
+
273
+
274
+ def calibrated(probabilities: list[float], temperature: float) -> list[float]:
275
+ """Temperature scaling: the same ranking, confidence that means what it says."""
276
+ logs = [math.log(max(value, 1e-12)) / temperature for value in probabilities]
277
+ top = max(logs)
278
+ weights = [math.exp(value - top) for value in logs]
279
+ total = sum(weights)
280
+ return [weight / total for weight in weights]
281
+
282
+
283
+ def main() -> None:
284
+ parser = argparse.ArgumentParser(description=__doc__,
285
+ formatter_class=argparse.RawDescriptionHelpFormatter)
286
+ parser.add_argument("--model", required=True, help="merged model repo/dir, or the base")
287
+ parser.add_argument("--adapter", help="LoRA adapter dir, when --model is the base")
288
+ parser.add_argument("--image", type=Path, required=True)
289
+ parser.add_argument("--task", required=True)
290
+ parser.add_argument("--past", action="append", default=[], help="a past action, in order")
291
+ parser.add_argument("--describe", help="also ground this element description")
292
+ parser.add_argument("--icon-weights", type=Path,
293
+ help="OmniParser v2 icon_detect/model.pt (AGPL-3.0, download yourself)")
294
+ parser.add_argument("--temperatures", type=Path, help="temperatures.json from the repo")
295
+ args = parser.parse_args()
296
+ found = screen_candidates(args.image, args.icon_weights)
297
+ asked = questions(found, args.describe)
298
+ probabilities = DecisionModel(args.model, args.adapter).decide(
299
+ args.image, context(args.task, args.past, found), asked)
300
+ temperatures = json.loads(args.temperatures.read_text())["questions"] \
301
+ if args.temperatures else {}
302
+ for name, _, labels in asked:
303
+ scaled = calibrated(probabilities[name], temperatures.get(name, {}).get("temperature", 1.0))
304
+ best = max(range(len(scaled)), key=scaled.__getitem__)
305
+ answer: dict[str, Any] = {"question": name, "choice": labels[best],
306
+ "confidence": round(scaled[best], 4)}
307
+ if name == "action":
308
+ answer["action"] = ACTIONS[best][1]
309
+ else:
310
+ element = found[best]
311
+ answer["element"] = {"text": element.text, "centre": [round(v, 4) for v in element.centre],
312
+ "box": [round(v, 4) for v in (element.x1, element.y1,
313
+ element.x2, element.y2)]}
314
+ print(json.dumps(answer, ensure_ascii=False))
315
+
316
+
317
+ if __name__ == "__main__":
318
+ main()
merge_check.json ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ {
2
+ "fused_layers": 248,
3
+ "check_steps": 5,
4
+ "worst_total_variation_vs_adapter": 0.04049
5
+ }
model-00001-of-00002.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:83a8837096b98320146ea9705130cb70e9ee445bc74ae04f1338985b54a75687
3
+ size 5366980383
model-00002-of-00002.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6b6428660ef6d18286f9a92ef85263f178189eb4c099541ebc1b964f73818f18
3
+ size 3711641426
model.safetensors.index.json ADDED
@@ -0,0 +1,730 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "metadata": {
3
+ "total_size": 9078532608
4
+ },
5
+ "weight_map": {
6
+ "language_model.model.embed_tokens.weight": "model-00001-of-00002.safetensors",
7
+ "language_model.model.layers.0.input_layernorm.weight": "model-00001-of-00002.safetensors",
8
+ "language_model.model.layers.0.linear_attn.A_log": "model-00001-of-00002.safetensors",
9
+ "language_model.model.layers.0.linear_attn.conv1d.weight": "model-00001-of-00002.safetensors",
10
+ "language_model.model.layers.0.linear_attn.dt_bias": "model-00001-of-00002.safetensors",
11
+ "language_model.model.layers.0.linear_attn.in_proj_a.weight": "model-00001-of-00002.safetensors",
12
+ "language_model.model.layers.0.linear_attn.in_proj_b.weight": "model-00001-of-00002.safetensors",
13
+ "language_model.model.layers.0.linear_attn.in_proj_qkv.weight": "model-00001-of-00002.safetensors",
14
+ "language_model.model.layers.0.linear_attn.in_proj_z.weight": "model-00001-of-00002.safetensors",
15
+ "language_model.model.layers.0.linear_attn.norm.weight": "model-00001-of-00002.safetensors",
16
+ "language_model.model.layers.0.linear_attn.out_proj.weight": "model-00001-of-00002.safetensors",
17
+ "language_model.model.layers.0.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
18
+ "language_model.model.layers.0.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
19
+ "language_model.model.layers.0.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
20
+ "language_model.model.layers.0.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
21
+ "language_model.model.layers.1.input_layernorm.weight": "model-00001-of-00002.safetensors",
22
+ "language_model.model.layers.1.linear_attn.A_log": "model-00001-of-00002.safetensors",
23
+ "language_model.model.layers.1.linear_attn.conv1d.weight": "model-00001-of-00002.safetensors",
24
+ "language_model.model.layers.1.linear_attn.dt_bias": "model-00001-of-00002.safetensors",
25
+ "language_model.model.layers.1.linear_attn.in_proj_a.weight": "model-00001-of-00002.safetensors",
26
+ "language_model.model.layers.1.linear_attn.in_proj_b.weight": "model-00001-of-00002.safetensors",
27
+ "language_model.model.layers.1.linear_attn.in_proj_qkv.weight": "model-00001-of-00002.safetensors",
28
+ "language_model.model.layers.1.linear_attn.in_proj_z.weight": "model-00001-of-00002.safetensors",
29
+ "language_model.model.layers.1.linear_attn.norm.weight": "model-00001-of-00002.safetensors",
30
+ "language_model.model.layers.1.linear_attn.out_proj.weight": "model-00001-of-00002.safetensors",
31
+ "language_model.model.layers.1.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
32
+ "language_model.model.layers.1.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
33
+ "language_model.model.layers.1.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
34
+ "language_model.model.layers.1.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
35
+ "language_model.model.layers.10.input_layernorm.weight": "model-00001-of-00002.safetensors",
36
+ "language_model.model.layers.10.linear_attn.A_log": "model-00001-of-00002.safetensors",
37
+ "language_model.model.layers.10.linear_attn.conv1d.weight": "model-00001-of-00002.safetensors",
38
+ "language_model.model.layers.10.linear_attn.dt_bias": "model-00001-of-00002.safetensors",
39
+ "language_model.model.layers.10.linear_attn.in_proj_a.weight": "model-00001-of-00002.safetensors",
40
+ "language_model.model.layers.10.linear_attn.in_proj_b.weight": "model-00001-of-00002.safetensors",
41
+ "language_model.model.layers.10.linear_attn.in_proj_qkv.weight": "model-00001-of-00002.safetensors",
42
+ "language_model.model.layers.10.linear_attn.in_proj_z.weight": "model-00001-of-00002.safetensors",
43
+ "language_model.model.layers.10.linear_attn.norm.weight": "model-00001-of-00002.safetensors",
44
+ "language_model.model.layers.10.linear_attn.out_proj.weight": "model-00001-of-00002.safetensors",
45
+ "language_model.model.layers.10.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
46
+ "language_model.model.layers.10.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
47
+ "language_model.model.layers.10.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
48
+ "language_model.model.layers.10.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
49
+ "language_model.model.layers.11.input_layernorm.weight": "model-00001-of-00002.safetensors",
50
+ "language_model.model.layers.11.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
51
+ "language_model.model.layers.11.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
52
+ "language_model.model.layers.11.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
53
+ "language_model.model.layers.11.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
54
+ "language_model.model.layers.11.self_attn.k_norm.weight": "model-00001-of-00002.safetensors",
55
+ "language_model.model.layers.11.self_attn.k_proj.weight": "model-00001-of-00002.safetensors",
56
+ "language_model.model.layers.11.self_attn.o_proj.weight": "model-00001-of-00002.safetensors",
57
+ "language_model.model.layers.11.self_attn.q_norm.weight": "model-00001-of-00002.safetensors",
58
+ "language_model.model.layers.11.self_attn.q_proj.weight": "model-00001-of-00002.safetensors",
59
+ "language_model.model.layers.11.self_attn.v_proj.weight": "model-00001-of-00002.safetensors",
60
+ "language_model.model.layers.12.input_layernorm.weight": "model-00001-of-00002.safetensors",
61
+ "language_model.model.layers.12.linear_attn.A_log": "model-00001-of-00002.safetensors",
62
+ "language_model.model.layers.12.linear_attn.conv1d.weight": "model-00001-of-00002.safetensors",
63
+ "language_model.model.layers.12.linear_attn.dt_bias": "model-00001-of-00002.safetensors",
64
+ "language_model.model.layers.12.linear_attn.in_proj_a.weight": "model-00001-of-00002.safetensors",
65
+ "language_model.model.layers.12.linear_attn.in_proj_b.weight": "model-00001-of-00002.safetensors",
66
+ "language_model.model.layers.12.linear_attn.in_proj_qkv.weight": "model-00001-of-00002.safetensors",
67
+ "language_model.model.layers.12.linear_attn.in_proj_z.weight": "model-00001-of-00002.safetensors",
68
+ "language_model.model.layers.12.linear_attn.norm.weight": "model-00001-of-00002.safetensors",
69
+ "language_model.model.layers.12.linear_attn.out_proj.weight": "model-00001-of-00002.safetensors",
70
+ "language_model.model.layers.12.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
71
+ "language_model.model.layers.12.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
72
+ "language_model.model.layers.12.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
73
+ "language_model.model.layers.12.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
74
+ "language_model.model.layers.13.input_layernorm.weight": "model-00001-of-00002.safetensors",
75
+ "language_model.model.layers.13.linear_attn.A_log": "model-00001-of-00002.safetensors",
76
+ "language_model.model.layers.13.linear_attn.conv1d.weight": "model-00001-of-00002.safetensors",
77
+ "language_model.model.layers.13.linear_attn.dt_bias": "model-00001-of-00002.safetensors",
78
+ "language_model.model.layers.13.linear_attn.in_proj_a.weight": "model-00001-of-00002.safetensors",
79
+ "language_model.model.layers.13.linear_attn.in_proj_b.weight": "model-00001-of-00002.safetensors",
80
+ "language_model.model.layers.13.linear_attn.in_proj_qkv.weight": "model-00001-of-00002.safetensors",
81
+ "language_model.model.layers.13.linear_attn.in_proj_z.weight": "model-00001-of-00002.safetensors",
82
+ "language_model.model.layers.13.linear_attn.norm.weight": "model-00001-of-00002.safetensors",
83
+ "language_model.model.layers.13.linear_attn.out_proj.weight": "model-00001-of-00002.safetensors",
84
+ "language_model.model.layers.13.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
85
+ "language_model.model.layers.13.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
86
+ "language_model.model.layers.13.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
87
+ "language_model.model.layers.13.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
88
+ "language_model.model.layers.14.input_layernorm.weight": "model-00001-of-00002.safetensors",
89
+ "language_model.model.layers.14.linear_attn.A_log": "model-00001-of-00002.safetensors",
90
+ "language_model.model.layers.14.linear_attn.conv1d.weight": "model-00001-of-00002.safetensors",
91
+ "language_model.model.layers.14.linear_attn.dt_bias": "model-00001-of-00002.safetensors",
92
+ "language_model.model.layers.14.linear_attn.in_proj_a.weight": "model-00001-of-00002.safetensors",
93
+ "language_model.model.layers.14.linear_attn.in_proj_b.weight": "model-00001-of-00002.safetensors",
94
+ "language_model.model.layers.14.linear_attn.in_proj_qkv.weight": "model-00001-of-00002.safetensors",
95
+ "language_model.model.layers.14.linear_attn.in_proj_z.weight": "model-00001-of-00002.safetensors",
96
+ "language_model.model.layers.14.linear_attn.norm.weight": "model-00001-of-00002.safetensors",
97
+ "language_model.model.layers.14.linear_attn.out_proj.weight": "model-00001-of-00002.safetensors",
98
+ "language_model.model.layers.14.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
99
+ "language_model.model.layers.14.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
100
+ "language_model.model.layers.14.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
101
+ "language_model.model.layers.14.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
102
+ "language_model.model.layers.15.input_layernorm.weight": "model-00001-of-00002.safetensors",
103
+ "language_model.model.layers.15.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
104
+ "language_model.model.layers.15.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
105
+ "language_model.model.layers.15.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
106
+ "language_model.model.layers.15.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
107
+ "language_model.model.layers.15.self_attn.k_norm.weight": "model-00001-of-00002.safetensors",
108
+ "language_model.model.layers.15.self_attn.k_proj.weight": "model-00001-of-00002.safetensors",
109
+ "language_model.model.layers.15.self_attn.o_proj.weight": "model-00001-of-00002.safetensors",
110
+ "language_model.model.layers.15.self_attn.q_norm.weight": "model-00001-of-00002.safetensors",
111
+ "language_model.model.layers.15.self_attn.q_proj.weight": "model-00001-of-00002.safetensors",
112
+ "language_model.model.layers.15.self_attn.v_proj.weight": "model-00001-of-00002.safetensors",
113
+ "language_model.model.layers.16.input_layernorm.weight": "model-00002-of-00002.safetensors",
114
+ "language_model.model.layers.16.linear_attn.A_log": "model-00002-of-00002.safetensors",
115
+ "language_model.model.layers.16.linear_attn.conv1d.weight": "model-00002-of-00002.safetensors",
116
+ "language_model.model.layers.16.linear_attn.dt_bias": "model-00002-of-00002.safetensors",
117
+ "language_model.model.layers.16.linear_attn.in_proj_a.weight": "model-00002-of-00002.safetensors",
118
+ "language_model.model.layers.16.linear_attn.in_proj_b.weight": "model-00002-of-00002.safetensors",
119
+ "language_model.model.layers.16.linear_attn.in_proj_qkv.weight": "model-00002-of-00002.safetensors",
120
+ "language_model.model.layers.16.linear_attn.in_proj_z.weight": "model-00002-of-00002.safetensors",
121
+ "language_model.model.layers.16.linear_attn.norm.weight": "model-00002-of-00002.safetensors",
122
+ "language_model.model.layers.16.linear_attn.out_proj.weight": "model-00002-of-00002.safetensors",
123
+ "language_model.model.layers.16.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
124
+ "language_model.model.layers.16.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
125
+ "language_model.model.layers.16.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
126
+ "language_model.model.layers.16.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
127
+ "language_model.model.layers.17.input_layernorm.weight": "model-00002-of-00002.safetensors",
128
+ "language_model.model.layers.17.linear_attn.A_log": "model-00002-of-00002.safetensors",
129
+ "language_model.model.layers.17.linear_attn.conv1d.weight": "model-00002-of-00002.safetensors",
130
+ "language_model.model.layers.17.linear_attn.dt_bias": "model-00002-of-00002.safetensors",
131
+ "language_model.model.layers.17.linear_attn.in_proj_a.weight": "model-00002-of-00002.safetensors",
132
+ "language_model.model.layers.17.linear_attn.in_proj_b.weight": "model-00002-of-00002.safetensors",
133
+ "language_model.model.layers.17.linear_attn.in_proj_qkv.weight": "model-00002-of-00002.safetensors",
134
+ "language_model.model.layers.17.linear_attn.in_proj_z.weight": "model-00002-of-00002.safetensors",
135
+ "language_model.model.layers.17.linear_attn.norm.weight": "model-00002-of-00002.safetensors",
136
+ "language_model.model.layers.17.linear_attn.out_proj.weight": "model-00002-of-00002.safetensors",
137
+ "language_model.model.layers.17.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
138
+ "language_model.model.layers.17.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
139
+ "language_model.model.layers.17.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
140
+ "language_model.model.layers.17.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
141
+ "language_model.model.layers.18.input_layernorm.weight": "model-00002-of-00002.safetensors",
142
+ "language_model.model.layers.18.linear_attn.A_log": "model-00002-of-00002.safetensors",
143
+ "language_model.model.layers.18.linear_attn.conv1d.weight": "model-00002-of-00002.safetensors",
144
+ "language_model.model.layers.18.linear_attn.dt_bias": "model-00002-of-00002.safetensors",
145
+ "language_model.model.layers.18.linear_attn.in_proj_a.weight": "model-00002-of-00002.safetensors",
146
+ "language_model.model.layers.18.linear_attn.in_proj_b.weight": "model-00002-of-00002.safetensors",
147
+ "language_model.model.layers.18.linear_attn.in_proj_qkv.weight": "model-00002-of-00002.safetensors",
148
+ "language_model.model.layers.18.linear_attn.in_proj_z.weight": "model-00002-of-00002.safetensors",
149
+ "language_model.model.layers.18.linear_attn.norm.weight": "model-00002-of-00002.safetensors",
150
+ "language_model.model.layers.18.linear_attn.out_proj.weight": "model-00002-of-00002.safetensors",
151
+ "language_model.model.layers.18.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
152
+ "language_model.model.layers.18.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
153
+ "language_model.model.layers.18.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
154
+ "language_model.model.layers.18.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
155
+ "language_model.model.layers.19.input_layernorm.weight": "model-00002-of-00002.safetensors",
156
+ "language_model.model.layers.19.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
157
+ "language_model.model.layers.19.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
158
+ "language_model.model.layers.19.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
159
+ "language_model.model.layers.19.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
160
+ "language_model.model.layers.19.self_attn.k_norm.weight": "model-00002-of-00002.safetensors",
161
+ "language_model.model.layers.19.self_attn.k_proj.weight": "model-00002-of-00002.safetensors",
162
+ "language_model.model.layers.19.self_attn.o_proj.weight": "model-00002-of-00002.safetensors",
163
+ "language_model.model.layers.19.self_attn.q_norm.weight": "model-00002-of-00002.safetensors",
164
+ "language_model.model.layers.19.self_attn.q_proj.weight": "model-00002-of-00002.safetensors",
165
+ "language_model.model.layers.19.self_attn.v_proj.weight": "model-00002-of-00002.safetensors",
166
+ "language_model.model.layers.2.input_layernorm.weight": "model-00001-of-00002.safetensors",
167
+ "language_model.model.layers.2.linear_attn.A_log": "model-00001-of-00002.safetensors",
168
+ "language_model.model.layers.2.linear_attn.conv1d.weight": "model-00001-of-00002.safetensors",
169
+ "language_model.model.layers.2.linear_attn.dt_bias": "model-00001-of-00002.safetensors",
170
+ "language_model.model.layers.2.linear_attn.in_proj_a.weight": "model-00001-of-00002.safetensors",
171
+ "language_model.model.layers.2.linear_attn.in_proj_b.weight": "model-00001-of-00002.safetensors",
172
+ "language_model.model.layers.2.linear_attn.in_proj_qkv.weight": "model-00001-of-00002.safetensors",
173
+ "language_model.model.layers.2.linear_attn.in_proj_z.weight": "model-00001-of-00002.safetensors",
174
+ "language_model.model.layers.2.linear_attn.norm.weight": "model-00001-of-00002.safetensors",
175
+ "language_model.model.layers.2.linear_attn.out_proj.weight": "model-00001-of-00002.safetensors",
176
+ "language_model.model.layers.2.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
177
+ "language_model.model.layers.2.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
178
+ "language_model.model.layers.2.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
179
+ "language_model.model.layers.2.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
180
+ "language_model.model.layers.20.input_layernorm.weight": "model-00002-of-00002.safetensors",
181
+ "language_model.model.layers.20.linear_attn.A_log": "model-00002-of-00002.safetensors",
182
+ "language_model.model.layers.20.linear_attn.conv1d.weight": "model-00002-of-00002.safetensors",
183
+ "language_model.model.layers.20.linear_attn.dt_bias": "model-00002-of-00002.safetensors",
184
+ "language_model.model.layers.20.linear_attn.in_proj_a.weight": "model-00002-of-00002.safetensors",
185
+ "language_model.model.layers.20.linear_attn.in_proj_b.weight": "model-00002-of-00002.safetensors",
186
+ "language_model.model.layers.20.linear_attn.in_proj_qkv.weight": "model-00002-of-00002.safetensors",
187
+ "language_model.model.layers.20.linear_attn.in_proj_z.weight": "model-00002-of-00002.safetensors",
188
+ "language_model.model.layers.20.linear_attn.norm.weight": "model-00002-of-00002.safetensors",
189
+ "language_model.model.layers.20.linear_attn.out_proj.weight": "model-00002-of-00002.safetensors",
190
+ "language_model.model.layers.20.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
191
+ "language_model.model.layers.20.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
192
+ "language_model.model.layers.20.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
193
+ "language_model.model.layers.20.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
194
+ "language_model.model.layers.21.input_layernorm.weight": "model-00002-of-00002.safetensors",
195
+ "language_model.model.layers.21.linear_attn.A_log": "model-00002-of-00002.safetensors",
196
+ "language_model.model.layers.21.linear_attn.conv1d.weight": "model-00002-of-00002.safetensors",
197
+ "language_model.model.layers.21.linear_attn.dt_bias": "model-00002-of-00002.safetensors",
198
+ "language_model.model.layers.21.linear_attn.in_proj_a.weight": "model-00002-of-00002.safetensors",
199
+ "language_model.model.layers.21.linear_attn.in_proj_b.weight": "model-00002-of-00002.safetensors",
200
+ "language_model.model.layers.21.linear_attn.in_proj_qkv.weight": "model-00002-of-00002.safetensors",
201
+ "language_model.model.layers.21.linear_attn.in_proj_z.weight": "model-00002-of-00002.safetensors",
202
+ "language_model.model.layers.21.linear_attn.norm.weight": "model-00002-of-00002.safetensors",
203
+ "language_model.model.layers.21.linear_attn.out_proj.weight": "model-00002-of-00002.safetensors",
204
+ "language_model.model.layers.21.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
205
+ "language_model.model.layers.21.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
206
+ "language_model.model.layers.21.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
207
+ "language_model.model.layers.21.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
208
+ "language_model.model.layers.22.input_layernorm.weight": "model-00002-of-00002.safetensors",
209
+ "language_model.model.layers.22.linear_attn.A_log": "model-00002-of-00002.safetensors",
210
+ "language_model.model.layers.22.linear_attn.conv1d.weight": "model-00002-of-00002.safetensors",
211
+ "language_model.model.layers.22.linear_attn.dt_bias": "model-00002-of-00002.safetensors",
212
+ "language_model.model.layers.22.linear_attn.in_proj_a.weight": "model-00002-of-00002.safetensors",
213
+ "language_model.model.layers.22.linear_attn.in_proj_b.weight": "model-00002-of-00002.safetensors",
214
+ "language_model.model.layers.22.linear_attn.in_proj_qkv.weight": "model-00002-of-00002.safetensors",
215
+ "language_model.model.layers.22.linear_attn.in_proj_z.weight": "model-00002-of-00002.safetensors",
216
+ "language_model.model.layers.22.linear_attn.norm.weight": "model-00002-of-00002.safetensors",
217
+ "language_model.model.layers.22.linear_attn.out_proj.weight": "model-00002-of-00002.safetensors",
218
+ "language_model.model.layers.22.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
219
+ "language_model.model.layers.22.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
220
+ "language_model.model.layers.22.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
221
+ "language_model.model.layers.22.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
222
+ "language_model.model.layers.23.input_layernorm.weight": "model-00002-of-00002.safetensors",
223
+ "language_model.model.layers.23.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
224
+ "language_model.model.layers.23.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
225
+ "language_model.model.layers.23.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
226
+ "language_model.model.layers.23.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
227
+ "language_model.model.layers.23.self_attn.k_norm.weight": "model-00002-of-00002.safetensors",
228
+ "language_model.model.layers.23.self_attn.k_proj.weight": "model-00002-of-00002.safetensors",
229
+ "language_model.model.layers.23.self_attn.o_proj.weight": "model-00002-of-00002.safetensors",
230
+ "language_model.model.layers.23.self_attn.q_norm.weight": "model-00002-of-00002.safetensors",
231
+ "language_model.model.layers.23.self_attn.q_proj.weight": "model-00002-of-00002.safetensors",
232
+ "language_model.model.layers.23.self_attn.v_proj.weight": "model-00002-of-00002.safetensors",
233
+ "language_model.model.layers.24.input_layernorm.weight": "model-00002-of-00002.safetensors",
234
+ "language_model.model.layers.24.linear_attn.A_log": "model-00002-of-00002.safetensors",
235
+ "language_model.model.layers.24.linear_attn.conv1d.weight": "model-00002-of-00002.safetensors",
236
+ "language_model.model.layers.24.linear_attn.dt_bias": "model-00002-of-00002.safetensors",
237
+ "language_model.model.layers.24.linear_attn.in_proj_a.weight": "model-00002-of-00002.safetensors",
238
+ "language_model.model.layers.24.linear_attn.in_proj_b.weight": "model-00002-of-00002.safetensors",
239
+ "language_model.model.layers.24.linear_attn.in_proj_qkv.weight": "model-00002-of-00002.safetensors",
240
+ "language_model.model.layers.24.linear_attn.in_proj_z.weight": "model-00002-of-00002.safetensors",
241
+ "language_model.model.layers.24.linear_attn.norm.weight": "model-00002-of-00002.safetensors",
242
+ "language_model.model.layers.24.linear_attn.out_proj.weight": "model-00002-of-00002.safetensors",
243
+ "language_model.model.layers.24.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
244
+ "language_model.model.layers.24.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
245
+ "language_model.model.layers.24.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
246
+ "language_model.model.layers.24.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
247
+ "language_model.model.layers.25.input_layernorm.weight": "model-00002-of-00002.safetensors",
248
+ "language_model.model.layers.25.linear_attn.A_log": "model-00002-of-00002.safetensors",
249
+ "language_model.model.layers.25.linear_attn.conv1d.weight": "model-00002-of-00002.safetensors",
250
+ "language_model.model.layers.25.linear_attn.dt_bias": "model-00002-of-00002.safetensors",
251
+ "language_model.model.layers.25.linear_attn.in_proj_a.weight": "model-00002-of-00002.safetensors",
252
+ "language_model.model.layers.25.linear_attn.in_proj_b.weight": "model-00002-of-00002.safetensors",
253
+ "language_model.model.layers.25.linear_attn.in_proj_qkv.weight": "model-00002-of-00002.safetensors",
254
+ "language_model.model.layers.25.linear_attn.in_proj_z.weight": "model-00002-of-00002.safetensors",
255
+ "language_model.model.layers.25.linear_attn.norm.weight": "model-00002-of-00002.safetensors",
256
+ "language_model.model.layers.25.linear_attn.out_proj.weight": "model-00002-of-00002.safetensors",
257
+ "language_model.model.layers.25.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
258
+ "language_model.model.layers.25.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
259
+ "language_model.model.layers.25.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
260
+ "language_model.model.layers.25.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
261
+ "language_model.model.layers.26.input_layernorm.weight": "model-00002-of-00002.safetensors",
262
+ "language_model.model.layers.26.linear_attn.A_log": "model-00002-of-00002.safetensors",
263
+ "language_model.model.layers.26.linear_attn.conv1d.weight": "model-00002-of-00002.safetensors",
264
+ "language_model.model.layers.26.linear_attn.dt_bias": "model-00002-of-00002.safetensors",
265
+ "language_model.model.layers.26.linear_attn.in_proj_a.weight": "model-00002-of-00002.safetensors",
266
+ "language_model.model.layers.26.linear_attn.in_proj_b.weight": "model-00002-of-00002.safetensors",
267
+ "language_model.model.layers.26.linear_attn.in_proj_qkv.weight": "model-00002-of-00002.safetensors",
268
+ "language_model.model.layers.26.linear_attn.in_proj_z.weight": "model-00002-of-00002.safetensors",
269
+ "language_model.model.layers.26.linear_attn.norm.weight": "model-00002-of-00002.safetensors",
270
+ "language_model.model.layers.26.linear_attn.out_proj.weight": "model-00002-of-00002.safetensors",
271
+ "language_model.model.layers.26.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
272
+ "language_model.model.layers.26.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
273
+ "language_model.model.layers.26.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
274
+ "language_model.model.layers.26.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
275
+ "language_model.model.layers.27.input_layernorm.weight": "model-00002-of-00002.safetensors",
276
+ "language_model.model.layers.27.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
277
+ "language_model.model.layers.27.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
278
+ "language_model.model.layers.27.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
279
+ "language_model.model.layers.27.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
280
+ "language_model.model.layers.27.self_attn.k_norm.weight": "model-00002-of-00002.safetensors",
281
+ "language_model.model.layers.27.self_attn.k_proj.weight": "model-00002-of-00002.safetensors",
282
+ "language_model.model.layers.27.self_attn.o_proj.weight": "model-00002-of-00002.safetensors",
283
+ "language_model.model.layers.27.self_attn.q_norm.weight": "model-00002-of-00002.safetensors",
284
+ "language_model.model.layers.27.self_attn.q_proj.weight": "model-00002-of-00002.safetensors",
285
+ "language_model.model.layers.27.self_attn.v_proj.weight": "model-00002-of-00002.safetensors",
286
+ "language_model.model.layers.28.input_layernorm.weight": "model-00002-of-00002.safetensors",
287
+ "language_model.model.layers.28.linear_attn.A_log": "model-00002-of-00002.safetensors",
288
+ "language_model.model.layers.28.linear_attn.conv1d.weight": "model-00002-of-00002.safetensors",
289
+ "language_model.model.layers.28.linear_attn.dt_bias": "model-00002-of-00002.safetensors",
290
+ "language_model.model.layers.28.linear_attn.in_proj_a.weight": "model-00002-of-00002.safetensors",
291
+ "language_model.model.layers.28.linear_attn.in_proj_b.weight": "model-00002-of-00002.safetensors",
292
+ "language_model.model.layers.28.linear_attn.in_proj_qkv.weight": "model-00002-of-00002.safetensors",
293
+ "language_model.model.layers.28.linear_attn.in_proj_z.weight": "model-00002-of-00002.safetensors",
294
+ "language_model.model.layers.28.linear_attn.norm.weight": "model-00002-of-00002.safetensors",
295
+ "language_model.model.layers.28.linear_attn.out_proj.weight": "model-00002-of-00002.safetensors",
296
+ "language_model.model.layers.28.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
297
+ "language_model.model.layers.28.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
298
+ "language_model.model.layers.28.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
299
+ "language_model.model.layers.28.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
300
+ "language_model.model.layers.29.input_layernorm.weight": "model-00002-of-00002.safetensors",
301
+ "language_model.model.layers.29.linear_attn.A_log": "model-00002-of-00002.safetensors",
302
+ "language_model.model.layers.29.linear_attn.conv1d.weight": "model-00002-of-00002.safetensors",
303
+ "language_model.model.layers.29.linear_attn.dt_bias": "model-00002-of-00002.safetensors",
304
+ "language_model.model.layers.29.linear_attn.in_proj_a.weight": "model-00002-of-00002.safetensors",
305
+ "language_model.model.layers.29.linear_attn.in_proj_b.weight": "model-00002-of-00002.safetensors",
306
+ "language_model.model.layers.29.linear_attn.in_proj_qkv.weight": "model-00002-of-00002.safetensors",
307
+ "language_model.model.layers.29.linear_attn.in_proj_z.weight": "model-00002-of-00002.safetensors",
308
+ "language_model.model.layers.29.linear_attn.norm.weight": "model-00002-of-00002.safetensors",
309
+ "language_model.model.layers.29.linear_attn.out_proj.weight": "model-00002-of-00002.safetensors",
310
+ "language_model.model.layers.29.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
311
+ "language_model.model.layers.29.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
312
+ "language_model.model.layers.29.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
313
+ "language_model.model.layers.29.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
314
+ "language_model.model.layers.3.input_layernorm.weight": "model-00001-of-00002.safetensors",
315
+ "language_model.model.layers.3.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
316
+ "language_model.model.layers.3.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
317
+ "language_model.model.layers.3.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
318
+ "language_model.model.layers.3.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
319
+ "language_model.model.layers.3.self_attn.k_norm.weight": "model-00001-of-00002.safetensors",
320
+ "language_model.model.layers.3.self_attn.k_proj.weight": "model-00001-of-00002.safetensors",
321
+ "language_model.model.layers.3.self_attn.o_proj.weight": "model-00001-of-00002.safetensors",
322
+ "language_model.model.layers.3.self_attn.q_norm.weight": "model-00001-of-00002.safetensors",
323
+ "language_model.model.layers.3.self_attn.q_proj.weight": "model-00001-of-00002.safetensors",
324
+ "language_model.model.layers.3.self_attn.v_proj.weight": "model-00001-of-00002.safetensors",
325
+ "language_model.model.layers.30.input_layernorm.weight": "model-00002-of-00002.safetensors",
326
+ "language_model.model.layers.30.linear_attn.A_log": "model-00002-of-00002.safetensors",
327
+ "language_model.model.layers.30.linear_attn.conv1d.weight": "model-00002-of-00002.safetensors",
328
+ "language_model.model.layers.30.linear_attn.dt_bias": "model-00002-of-00002.safetensors",
329
+ "language_model.model.layers.30.linear_attn.in_proj_a.weight": "model-00002-of-00002.safetensors",
330
+ "language_model.model.layers.30.linear_attn.in_proj_b.weight": "model-00002-of-00002.safetensors",
331
+ "language_model.model.layers.30.linear_attn.in_proj_qkv.weight": "model-00002-of-00002.safetensors",
332
+ "language_model.model.layers.30.linear_attn.in_proj_z.weight": "model-00002-of-00002.safetensors",
333
+ "language_model.model.layers.30.linear_attn.norm.weight": "model-00002-of-00002.safetensors",
334
+ "language_model.model.layers.30.linear_attn.out_proj.weight": "model-00002-of-00002.safetensors",
335
+ "language_model.model.layers.30.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
336
+ "language_model.model.layers.30.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
337
+ "language_model.model.layers.30.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
338
+ "language_model.model.layers.30.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
339
+ "language_model.model.layers.31.input_layernorm.weight": "model-00002-of-00002.safetensors",
340
+ "language_model.model.layers.31.mlp.down_proj.weight": "model-00002-of-00002.safetensors",
341
+ "language_model.model.layers.31.mlp.gate_proj.weight": "model-00002-of-00002.safetensors",
342
+ "language_model.model.layers.31.mlp.up_proj.weight": "model-00002-of-00002.safetensors",
343
+ "language_model.model.layers.31.post_attention_layernorm.weight": "model-00002-of-00002.safetensors",
344
+ "language_model.model.layers.31.self_attn.k_norm.weight": "model-00002-of-00002.safetensors",
345
+ "language_model.model.layers.31.self_attn.k_proj.weight": "model-00002-of-00002.safetensors",
346
+ "language_model.model.layers.31.self_attn.o_proj.weight": "model-00002-of-00002.safetensors",
347
+ "language_model.model.layers.31.self_attn.q_norm.weight": "model-00002-of-00002.safetensors",
348
+ "language_model.model.layers.31.self_attn.q_proj.weight": "model-00002-of-00002.safetensors",
349
+ "language_model.model.layers.31.self_attn.v_proj.weight": "model-00002-of-00002.safetensors",
350
+ "language_model.model.layers.4.input_layernorm.weight": "model-00001-of-00002.safetensors",
351
+ "language_model.model.layers.4.linear_attn.A_log": "model-00001-of-00002.safetensors",
352
+ "language_model.model.layers.4.linear_attn.conv1d.weight": "model-00001-of-00002.safetensors",
353
+ "language_model.model.layers.4.linear_attn.dt_bias": "model-00001-of-00002.safetensors",
354
+ "language_model.model.layers.4.linear_attn.in_proj_a.weight": "model-00001-of-00002.safetensors",
355
+ "language_model.model.layers.4.linear_attn.in_proj_b.weight": "model-00001-of-00002.safetensors",
356
+ "language_model.model.layers.4.linear_attn.in_proj_qkv.weight": "model-00001-of-00002.safetensors",
357
+ "language_model.model.layers.4.linear_attn.in_proj_z.weight": "model-00001-of-00002.safetensors",
358
+ "language_model.model.layers.4.linear_attn.norm.weight": "model-00001-of-00002.safetensors",
359
+ "language_model.model.layers.4.linear_attn.out_proj.weight": "model-00001-of-00002.safetensors",
360
+ "language_model.model.layers.4.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
361
+ "language_model.model.layers.4.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
362
+ "language_model.model.layers.4.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
363
+ "language_model.model.layers.4.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
364
+ "language_model.model.layers.5.input_layernorm.weight": "model-00001-of-00002.safetensors",
365
+ "language_model.model.layers.5.linear_attn.A_log": "model-00001-of-00002.safetensors",
366
+ "language_model.model.layers.5.linear_attn.conv1d.weight": "model-00001-of-00002.safetensors",
367
+ "language_model.model.layers.5.linear_attn.dt_bias": "model-00001-of-00002.safetensors",
368
+ "language_model.model.layers.5.linear_attn.in_proj_a.weight": "model-00001-of-00002.safetensors",
369
+ "language_model.model.layers.5.linear_attn.in_proj_b.weight": "model-00001-of-00002.safetensors",
370
+ "language_model.model.layers.5.linear_attn.in_proj_qkv.weight": "model-00001-of-00002.safetensors",
371
+ "language_model.model.layers.5.linear_attn.in_proj_z.weight": "model-00001-of-00002.safetensors",
372
+ "language_model.model.layers.5.linear_attn.norm.weight": "model-00001-of-00002.safetensors",
373
+ "language_model.model.layers.5.linear_attn.out_proj.weight": "model-00001-of-00002.safetensors",
374
+ "language_model.model.layers.5.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
375
+ "language_model.model.layers.5.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
376
+ "language_model.model.layers.5.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
377
+ "language_model.model.layers.5.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
378
+ "language_model.model.layers.6.input_layernorm.weight": "model-00001-of-00002.safetensors",
379
+ "language_model.model.layers.6.linear_attn.A_log": "model-00001-of-00002.safetensors",
380
+ "language_model.model.layers.6.linear_attn.conv1d.weight": "model-00001-of-00002.safetensors",
381
+ "language_model.model.layers.6.linear_attn.dt_bias": "model-00001-of-00002.safetensors",
382
+ "language_model.model.layers.6.linear_attn.in_proj_a.weight": "model-00001-of-00002.safetensors",
383
+ "language_model.model.layers.6.linear_attn.in_proj_b.weight": "model-00001-of-00002.safetensors",
384
+ "language_model.model.layers.6.linear_attn.in_proj_qkv.weight": "model-00001-of-00002.safetensors",
385
+ "language_model.model.layers.6.linear_attn.in_proj_z.weight": "model-00001-of-00002.safetensors",
386
+ "language_model.model.layers.6.linear_attn.norm.weight": "model-00001-of-00002.safetensors",
387
+ "language_model.model.layers.6.linear_attn.out_proj.weight": "model-00001-of-00002.safetensors",
388
+ "language_model.model.layers.6.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
389
+ "language_model.model.layers.6.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
390
+ "language_model.model.layers.6.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
391
+ "language_model.model.layers.6.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
392
+ "language_model.model.layers.7.input_layernorm.weight": "model-00001-of-00002.safetensors",
393
+ "language_model.model.layers.7.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
394
+ "language_model.model.layers.7.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
395
+ "language_model.model.layers.7.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
396
+ "language_model.model.layers.7.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
397
+ "language_model.model.layers.7.self_attn.k_norm.weight": "model-00001-of-00002.safetensors",
398
+ "language_model.model.layers.7.self_attn.k_proj.weight": "model-00001-of-00002.safetensors",
399
+ "language_model.model.layers.7.self_attn.o_proj.weight": "model-00001-of-00002.safetensors",
400
+ "language_model.model.layers.7.self_attn.q_norm.weight": "model-00001-of-00002.safetensors",
401
+ "language_model.model.layers.7.self_attn.q_proj.weight": "model-00001-of-00002.safetensors",
402
+ "language_model.model.layers.7.self_attn.v_proj.weight": "model-00001-of-00002.safetensors",
403
+ "language_model.model.layers.8.input_layernorm.weight": "model-00001-of-00002.safetensors",
404
+ "language_model.model.layers.8.linear_attn.A_log": "model-00001-of-00002.safetensors",
405
+ "language_model.model.layers.8.linear_attn.conv1d.weight": "model-00001-of-00002.safetensors",
406
+ "language_model.model.layers.8.linear_attn.dt_bias": "model-00001-of-00002.safetensors",
407
+ "language_model.model.layers.8.linear_attn.in_proj_a.weight": "model-00001-of-00002.safetensors",
408
+ "language_model.model.layers.8.linear_attn.in_proj_b.weight": "model-00001-of-00002.safetensors",
409
+ "language_model.model.layers.8.linear_attn.in_proj_qkv.weight": "model-00001-of-00002.safetensors",
410
+ "language_model.model.layers.8.linear_attn.in_proj_z.weight": "model-00001-of-00002.safetensors",
411
+ "language_model.model.layers.8.linear_attn.norm.weight": "model-00001-of-00002.safetensors",
412
+ "language_model.model.layers.8.linear_attn.out_proj.weight": "model-00001-of-00002.safetensors",
413
+ "language_model.model.layers.8.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
414
+ "language_model.model.layers.8.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
415
+ "language_model.model.layers.8.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
416
+ "language_model.model.layers.8.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
417
+ "language_model.model.layers.9.input_layernorm.weight": "model-00001-of-00002.safetensors",
418
+ "language_model.model.layers.9.linear_attn.A_log": "model-00001-of-00002.safetensors",
419
+ "language_model.model.layers.9.linear_attn.conv1d.weight": "model-00001-of-00002.safetensors",
420
+ "language_model.model.layers.9.linear_attn.dt_bias": "model-00001-of-00002.safetensors",
421
+ "language_model.model.layers.9.linear_attn.in_proj_a.weight": "model-00001-of-00002.safetensors",
422
+ "language_model.model.layers.9.linear_attn.in_proj_b.weight": "model-00001-of-00002.safetensors",
423
+ "language_model.model.layers.9.linear_attn.in_proj_qkv.weight": "model-00001-of-00002.safetensors",
424
+ "language_model.model.layers.9.linear_attn.in_proj_z.weight": "model-00001-of-00002.safetensors",
425
+ "language_model.model.layers.9.linear_attn.norm.weight": "model-00001-of-00002.safetensors",
426
+ "language_model.model.layers.9.linear_attn.out_proj.weight": "model-00001-of-00002.safetensors",
427
+ "language_model.model.layers.9.mlp.down_proj.weight": "model-00001-of-00002.safetensors",
428
+ "language_model.model.layers.9.mlp.gate_proj.weight": "model-00001-of-00002.safetensors",
429
+ "language_model.model.layers.9.mlp.up_proj.weight": "model-00001-of-00002.safetensors",
430
+ "language_model.model.layers.9.post_attention_layernorm.weight": "model-00001-of-00002.safetensors",
431
+ "language_model.model.norm.weight": "model-00002-of-00002.safetensors",
432
+ "vision_tower.blocks.0.attn.proj.bias": "model-00001-of-00002.safetensors",
433
+ "vision_tower.blocks.0.attn.proj.weight": "model-00001-of-00002.safetensors",
434
+ "vision_tower.blocks.0.attn.qkv.bias": "model-00001-of-00002.safetensors",
435
+ "vision_tower.blocks.0.attn.qkv.weight": "model-00001-of-00002.safetensors",
436
+ "vision_tower.blocks.0.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
437
+ "vision_tower.blocks.0.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
438
+ "vision_tower.blocks.0.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
439
+ "vision_tower.blocks.0.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
440
+ "vision_tower.blocks.0.norm1.bias": "model-00001-of-00002.safetensors",
441
+ "vision_tower.blocks.0.norm1.weight": "model-00001-of-00002.safetensors",
442
+ "vision_tower.blocks.0.norm2.bias": "model-00001-of-00002.safetensors",
443
+ "vision_tower.blocks.0.norm2.weight": "model-00001-of-00002.safetensors",
444
+ "vision_tower.blocks.1.attn.proj.bias": "model-00001-of-00002.safetensors",
445
+ "vision_tower.blocks.1.attn.proj.weight": "model-00001-of-00002.safetensors",
446
+ "vision_tower.blocks.1.attn.qkv.bias": "model-00001-of-00002.safetensors",
447
+ "vision_tower.blocks.1.attn.qkv.weight": "model-00001-of-00002.safetensors",
448
+ "vision_tower.blocks.1.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
449
+ "vision_tower.blocks.1.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
450
+ "vision_tower.blocks.1.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
451
+ "vision_tower.blocks.1.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
452
+ "vision_tower.blocks.1.norm1.bias": "model-00001-of-00002.safetensors",
453
+ "vision_tower.blocks.1.norm1.weight": "model-00001-of-00002.safetensors",
454
+ "vision_tower.blocks.1.norm2.bias": "model-00001-of-00002.safetensors",
455
+ "vision_tower.blocks.1.norm2.weight": "model-00001-of-00002.safetensors",
456
+ "vision_tower.blocks.10.attn.proj.bias": "model-00001-of-00002.safetensors",
457
+ "vision_tower.blocks.10.attn.proj.weight": "model-00001-of-00002.safetensors",
458
+ "vision_tower.blocks.10.attn.qkv.bias": "model-00001-of-00002.safetensors",
459
+ "vision_tower.blocks.10.attn.qkv.weight": "model-00001-of-00002.safetensors",
460
+ "vision_tower.blocks.10.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
461
+ "vision_tower.blocks.10.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
462
+ "vision_tower.blocks.10.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
463
+ "vision_tower.blocks.10.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
464
+ "vision_tower.blocks.10.norm1.bias": "model-00001-of-00002.safetensors",
465
+ "vision_tower.blocks.10.norm1.weight": "model-00001-of-00002.safetensors",
466
+ "vision_tower.blocks.10.norm2.bias": "model-00001-of-00002.safetensors",
467
+ "vision_tower.blocks.10.norm2.weight": "model-00001-of-00002.safetensors",
468
+ "vision_tower.blocks.11.attn.proj.bias": "model-00001-of-00002.safetensors",
469
+ "vision_tower.blocks.11.attn.proj.weight": "model-00001-of-00002.safetensors",
470
+ "vision_tower.blocks.11.attn.qkv.bias": "model-00001-of-00002.safetensors",
471
+ "vision_tower.blocks.11.attn.qkv.weight": "model-00001-of-00002.safetensors",
472
+ "vision_tower.blocks.11.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
473
+ "vision_tower.blocks.11.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
474
+ "vision_tower.blocks.11.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
475
+ "vision_tower.blocks.11.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
476
+ "vision_tower.blocks.11.norm1.bias": "model-00001-of-00002.safetensors",
477
+ "vision_tower.blocks.11.norm1.weight": "model-00001-of-00002.safetensors",
478
+ "vision_tower.blocks.11.norm2.bias": "model-00001-of-00002.safetensors",
479
+ "vision_tower.blocks.11.norm2.weight": "model-00001-of-00002.safetensors",
480
+ "vision_tower.blocks.12.attn.proj.bias": "model-00001-of-00002.safetensors",
481
+ "vision_tower.blocks.12.attn.proj.weight": "model-00001-of-00002.safetensors",
482
+ "vision_tower.blocks.12.attn.qkv.bias": "model-00001-of-00002.safetensors",
483
+ "vision_tower.blocks.12.attn.qkv.weight": "model-00001-of-00002.safetensors",
484
+ "vision_tower.blocks.12.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
485
+ "vision_tower.blocks.12.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
486
+ "vision_tower.blocks.12.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
487
+ "vision_tower.blocks.12.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
488
+ "vision_tower.blocks.12.norm1.bias": "model-00001-of-00002.safetensors",
489
+ "vision_tower.blocks.12.norm1.weight": "model-00001-of-00002.safetensors",
490
+ "vision_tower.blocks.12.norm2.bias": "model-00001-of-00002.safetensors",
491
+ "vision_tower.blocks.12.norm2.weight": "model-00001-of-00002.safetensors",
492
+ "vision_tower.blocks.13.attn.proj.bias": "model-00001-of-00002.safetensors",
493
+ "vision_tower.blocks.13.attn.proj.weight": "model-00001-of-00002.safetensors",
494
+ "vision_tower.blocks.13.attn.qkv.bias": "model-00001-of-00002.safetensors",
495
+ "vision_tower.blocks.13.attn.qkv.weight": "model-00001-of-00002.safetensors",
496
+ "vision_tower.blocks.13.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
497
+ "vision_tower.blocks.13.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
498
+ "vision_tower.blocks.13.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
499
+ "vision_tower.blocks.13.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
500
+ "vision_tower.blocks.13.norm1.bias": "model-00001-of-00002.safetensors",
501
+ "vision_tower.blocks.13.norm1.weight": "model-00001-of-00002.safetensors",
502
+ "vision_tower.blocks.13.norm2.bias": "model-00001-of-00002.safetensors",
503
+ "vision_tower.blocks.13.norm2.weight": "model-00001-of-00002.safetensors",
504
+ "vision_tower.blocks.14.attn.proj.bias": "model-00001-of-00002.safetensors",
505
+ "vision_tower.blocks.14.attn.proj.weight": "model-00001-of-00002.safetensors",
506
+ "vision_tower.blocks.14.attn.qkv.bias": "model-00001-of-00002.safetensors",
507
+ "vision_tower.blocks.14.attn.qkv.weight": "model-00001-of-00002.safetensors",
508
+ "vision_tower.blocks.14.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
509
+ "vision_tower.blocks.14.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
510
+ "vision_tower.blocks.14.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
511
+ "vision_tower.blocks.14.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
512
+ "vision_tower.blocks.14.norm1.bias": "model-00001-of-00002.safetensors",
513
+ "vision_tower.blocks.14.norm1.weight": "model-00001-of-00002.safetensors",
514
+ "vision_tower.blocks.14.norm2.bias": "model-00001-of-00002.safetensors",
515
+ "vision_tower.blocks.14.norm2.weight": "model-00001-of-00002.safetensors",
516
+ "vision_tower.blocks.15.attn.proj.bias": "model-00001-of-00002.safetensors",
517
+ "vision_tower.blocks.15.attn.proj.weight": "model-00001-of-00002.safetensors",
518
+ "vision_tower.blocks.15.attn.qkv.bias": "model-00001-of-00002.safetensors",
519
+ "vision_tower.blocks.15.attn.qkv.weight": "model-00001-of-00002.safetensors",
520
+ "vision_tower.blocks.15.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
521
+ "vision_tower.blocks.15.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
522
+ "vision_tower.blocks.15.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
523
+ "vision_tower.blocks.15.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
524
+ "vision_tower.blocks.15.norm1.bias": "model-00001-of-00002.safetensors",
525
+ "vision_tower.blocks.15.norm1.weight": "model-00001-of-00002.safetensors",
526
+ "vision_tower.blocks.15.norm2.bias": "model-00001-of-00002.safetensors",
527
+ "vision_tower.blocks.15.norm2.weight": "model-00001-of-00002.safetensors",
528
+ "vision_tower.blocks.16.attn.proj.bias": "model-00001-of-00002.safetensors",
529
+ "vision_tower.blocks.16.attn.proj.weight": "model-00001-of-00002.safetensors",
530
+ "vision_tower.blocks.16.attn.qkv.bias": "model-00001-of-00002.safetensors",
531
+ "vision_tower.blocks.16.attn.qkv.weight": "model-00001-of-00002.safetensors",
532
+ "vision_tower.blocks.16.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
533
+ "vision_tower.blocks.16.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
534
+ "vision_tower.blocks.16.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
535
+ "vision_tower.blocks.16.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
536
+ "vision_tower.blocks.16.norm1.bias": "model-00001-of-00002.safetensors",
537
+ "vision_tower.blocks.16.norm1.weight": "model-00001-of-00002.safetensors",
538
+ "vision_tower.blocks.16.norm2.bias": "model-00001-of-00002.safetensors",
539
+ "vision_tower.blocks.16.norm2.weight": "model-00001-of-00002.safetensors",
540
+ "vision_tower.blocks.17.attn.proj.bias": "model-00001-of-00002.safetensors",
541
+ "vision_tower.blocks.17.attn.proj.weight": "model-00001-of-00002.safetensors",
542
+ "vision_tower.blocks.17.attn.qkv.bias": "model-00001-of-00002.safetensors",
543
+ "vision_tower.blocks.17.attn.qkv.weight": "model-00001-of-00002.safetensors",
544
+ "vision_tower.blocks.17.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
545
+ "vision_tower.blocks.17.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
546
+ "vision_tower.blocks.17.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
547
+ "vision_tower.blocks.17.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
548
+ "vision_tower.blocks.17.norm1.bias": "model-00001-of-00002.safetensors",
549
+ "vision_tower.blocks.17.norm1.weight": "model-00001-of-00002.safetensors",
550
+ "vision_tower.blocks.17.norm2.bias": "model-00001-of-00002.safetensors",
551
+ "vision_tower.blocks.17.norm2.weight": "model-00001-of-00002.safetensors",
552
+ "vision_tower.blocks.18.attn.proj.bias": "model-00001-of-00002.safetensors",
553
+ "vision_tower.blocks.18.attn.proj.weight": "model-00001-of-00002.safetensors",
554
+ "vision_tower.blocks.18.attn.qkv.bias": "model-00001-of-00002.safetensors",
555
+ "vision_tower.blocks.18.attn.qkv.weight": "model-00001-of-00002.safetensors",
556
+ "vision_tower.blocks.18.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
557
+ "vision_tower.blocks.18.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
558
+ "vision_tower.blocks.18.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
559
+ "vision_tower.blocks.18.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
560
+ "vision_tower.blocks.18.norm1.bias": "model-00001-of-00002.safetensors",
561
+ "vision_tower.blocks.18.norm1.weight": "model-00001-of-00002.safetensors",
562
+ "vision_tower.blocks.18.norm2.bias": "model-00001-of-00002.safetensors",
563
+ "vision_tower.blocks.18.norm2.weight": "model-00001-of-00002.safetensors",
564
+ "vision_tower.blocks.19.attn.proj.bias": "model-00001-of-00002.safetensors",
565
+ "vision_tower.blocks.19.attn.proj.weight": "model-00001-of-00002.safetensors",
566
+ "vision_tower.blocks.19.attn.qkv.bias": "model-00001-of-00002.safetensors",
567
+ "vision_tower.blocks.19.attn.qkv.weight": "model-00001-of-00002.safetensors",
568
+ "vision_tower.blocks.19.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
569
+ "vision_tower.blocks.19.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
570
+ "vision_tower.blocks.19.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
571
+ "vision_tower.blocks.19.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
572
+ "vision_tower.blocks.19.norm1.bias": "model-00001-of-00002.safetensors",
573
+ "vision_tower.blocks.19.norm1.weight": "model-00001-of-00002.safetensors",
574
+ "vision_tower.blocks.19.norm2.bias": "model-00001-of-00002.safetensors",
575
+ "vision_tower.blocks.19.norm2.weight": "model-00001-of-00002.safetensors",
576
+ "vision_tower.blocks.2.attn.proj.bias": "model-00001-of-00002.safetensors",
577
+ "vision_tower.blocks.2.attn.proj.weight": "model-00001-of-00002.safetensors",
578
+ "vision_tower.blocks.2.attn.qkv.bias": "model-00001-of-00002.safetensors",
579
+ "vision_tower.blocks.2.attn.qkv.weight": "model-00001-of-00002.safetensors",
580
+ "vision_tower.blocks.2.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
581
+ "vision_tower.blocks.2.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
582
+ "vision_tower.blocks.2.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
583
+ "vision_tower.blocks.2.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
584
+ "vision_tower.blocks.2.norm1.bias": "model-00001-of-00002.safetensors",
585
+ "vision_tower.blocks.2.norm1.weight": "model-00001-of-00002.safetensors",
586
+ "vision_tower.blocks.2.norm2.bias": "model-00001-of-00002.safetensors",
587
+ "vision_tower.blocks.2.norm2.weight": "model-00001-of-00002.safetensors",
588
+ "vision_tower.blocks.20.attn.proj.bias": "model-00001-of-00002.safetensors",
589
+ "vision_tower.blocks.20.attn.proj.weight": "model-00001-of-00002.safetensors",
590
+ "vision_tower.blocks.20.attn.qkv.bias": "model-00001-of-00002.safetensors",
591
+ "vision_tower.blocks.20.attn.qkv.weight": "model-00001-of-00002.safetensors",
592
+ "vision_tower.blocks.20.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
593
+ "vision_tower.blocks.20.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
594
+ "vision_tower.blocks.20.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
595
+ "vision_tower.blocks.20.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
596
+ "vision_tower.blocks.20.norm1.bias": "model-00001-of-00002.safetensors",
597
+ "vision_tower.blocks.20.norm1.weight": "model-00001-of-00002.safetensors",
598
+ "vision_tower.blocks.20.norm2.bias": "model-00001-of-00002.safetensors",
599
+ "vision_tower.blocks.20.norm2.weight": "model-00001-of-00002.safetensors",
600
+ "vision_tower.blocks.21.attn.proj.bias": "model-00001-of-00002.safetensors",
601
+ "vision_tower.blocks.21.attn.proj.weight": "model-00001-of-00002.safetensors",
602
+ "vision_tower.blocks.21.attn.qkv.bias": "model-00001-of-00002.safetensors",
603
+ "vision_tower.blocks.21.attn.qkv.weight": "model-00001-of-00002.safetensors",
604
+ "vision_tower.blocks.21.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
605
+ "vision_tower.blocks.21.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
606
+ "vision_tower.blocks.21.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
607
+ "vision_tower.blocks.21.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
608
+ "vision_tower.blocks.21.norm1.bias": "model-00001-of-00002.safetensors",
609
+ "vision_tower.blocks.21.norm1.weight": "model-00001-of-00002.safetensors",
610
+ "vision_tower.blocks.21.norm2.bias": "model-00001-of-00002.safetensors",
611
+ "vision_tower.blocks.21.norm2.weight": "model-00001-of-00002.safetensors",
612
+ "vision_tower.blocks.22.attn.proj.bias": "model-00001-of-00002.safetensors",
613
+ "vision_tower.blocks.22.attn.proj.weight": "model-00001-of-00002.safetensors",
614
+ "vision_tower.blocks.22.attn.qkv.bias": "model-00001-of-00002.safetensors",
615
+ "vision_tower.blocks.22.attn.qkv.weight": "model-00001-of-00002.safetensors",
616
+ "vision_tower.blocks.22.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
617
+ "vision_tower.blocks.22.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
618
+ "vision_tower.blocks.22.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
619
+ "vision_tower.blocks.22.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
620
+ "vision_tower.blocks.22.norm1.bias": "model-00001-of-00002.safetensors",
621
+ "vision_tower.blocks.22.norm1.weight": "model-00001-of-00002.safetensors",
622
+ "vision_tower.blocks.22.norm2.bias": "model-00001-of-00002.safetensors",
623
+ "vision_tower.blocks.22.norm2.weight": "model-00001-of-00002.safetensors",
624
+ "vision_tower.blocks.23.attn.proj.bias": "model-00001-of-00002.safetensors",
625
+ "vision_tower.blocks.23.attn.proj.weight": "model-00001-of-00002.safetensors",
626
+ "vision_tower.blocks.23.attn.qkv.bias": "model-00001-of-00002.safetensors",
627
+ "vision_tower.blocks.23.attn.qkv.weight": "model-00001-of-00002.safetensors",
628
+ "vision_tower.blocks.23.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
629
+ "vision_tower.blocks.23.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
630
+ "vision_tower.blocks.23.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
631
+ "vision_tower.blocks.23.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
632
+ "vision_tower.blocks.23.norm1.bias": "model-00001-of-00002.safetensors",
633
+ "vision_tower.blocks.23.norm1.weight": "model-00001-of-00002.safetensors",
634
+ "vision_tower.blocks.23.norm2.bias": "model-00001-of-00002.safetensors",
635
+ "vision_tower.blocks.23.norm2.weight": "model-00001-of-00002.safetensors",
636
+ "vision_tower.blocks.3.attn.proj.bias": "model-00001-of-00002.safetensors",
637
+ "vision_tower.blocks.3.attn.proj.weight": "model-00001-of-00002.safetensors",
638
+ "vision_tower.blocks.3.attn.qkv.bias": "model-00001-of-00002.safetensors",
639
+ "vision_tower.blocks.3.attn.qkv.weight": "model-00001-of-00002.safetensors",
640
+ "vision_tower.blocks.3.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
641
+ "vision_tower.blocks.3.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
642
+ "vision_tower.blocks.3.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
643
+ "vision_tower.blocks.3.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
644
+ "vision_tower.blocks.3.norm1.bias": "model-00001-of-00002.safetensors",
645
+ "vision_tower.blocks.3.norm1.weight": "model-00001-of-00002.safetensors",
646
+ "vision_tower.blocks.3.norm2.bias": "model-00001-of-00002.safetensors",
647
+ "vision_tower.blocks.3.norm2.weight": "model-00001-of-00002.safetensors",
648
+ "vision_tower.blocks.4.attn.proj.bias": "model-00001-of-00002.safetensors",
649
+ "vision_tower.blocks.4.attn.proj.weight": "model-00001-of-00002.safetensors",
650
+ "vision_tower.blocks.4.attn.qkv.bias": "model-00001-of-00002.safetensors",
651
+ "vision_tower.blocks.4.attn.qkv.weight": "model-00001-of-00002.safetensors",
652
+ "vision_tower.blocks.4.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
653
+ "vision_tower.blocks.4.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
654
+ "vision_tower.blocks.4.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
655
+ "vision_tower.blocks.4.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
656
+ "vision_tower.blocks.4.norm1.bias": "model-00001-of-00002.safetensors",
657
+ "vision_tower.blocks.4.norm1.weight": "model-00001-of-00002.safetensors",
658
+ "vision_tower.blocks.4.norm2.bias": "model-00001-of-00002.safetensors",
659
+ "vision_tower.blocks.4.norm2.weight": "model-00001-of-00002.safetensors",
660
+ "vision_tower.blocks.5.attn.proj.bias": "model-00001-of-00002.safetensors",
661
+ "vision_tower.blocks.5.attn.proj.weight": "model-00001-of-00002.safetensors",
662
+ "vision_tower.blocks.5.attn.qkv.bias": "model-00001-of-00002.safetensors",
663
+ "vision_tower.blocks.5.attn.qkv.weight": "model-00001-of-00002.safetensors",
664
+ "vision_tower.blocks.5.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
665
+ "vision_tower.blocks.5.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
666
+ "vision_tower.blocks.5.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
667
+ "vision_tower.blocks.5.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
668
+ "vision_tower.blocks.5.norm1.bias": "model-00001-of-00002.safetensors",
669
+ "vision_tower.blocks.5.norm1.weight": "model-00001-of-00002.safetensors",
670
+ "vision_tower.blocks.5.norm2.bias": "model-00001-of-00002.safetensors",
671
+ "vision_tower.blocks.5.norm2.weight": "model-00001-of-00002.safetensors",
672
+ "vision_tower.blocks.6.attn.proj.bias": "model-00001-of-00002.safetensors",
673
+ "vision_tower.blocks.6.attn.proj.weight": "model-00001-of-00002.safetensors",
674
+ "vision_tower.blocks.6.attn.qkv.bias": "model-00001-of-00002.safetensors",
675
+ "vision_tower.blocks.6.attn.qkv.weight": "model-00001-of-00002.safetensors",
676
+ "vision_tower.blocks.6.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
677
+ "vision_tower.blocks.6.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
678
+ "vision_tower.blocks.6.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
679
+ "vision_tower.blocks.6.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
680
+ "vision_tower.blocks.6.norm1.bias": "model-00001-of-00002.safetensors",
681
+ "vision_tower.blocks.6.norm1.weight": "model-00001-of-00002.safetensors",
682
+ "vision_tower.blocks.6.norm2.bias": "model-00001-of-00002.safetensors",
683
+ "vision_tower.blocks.6.norm2.weight": "model-00001-of-00002.safetensors",
684
+ "vision_tower.blocks.7.attn.proj.bias": "model-00001-of-00002.safetensors",
685
+ "vision_tower.blocks.7.attn.proj.weight": "model-00001-of-00002.safetensors",
686
+ "vision_tower.blocks.7.attn.qkv.bias": "model-00001-of-00002.safetensors",
687
+ "vision_tower.blocks.7.attn.qkv.weight": "model-00001-of-00002.safetensors",
688
+ "vision_tower.blocks.7.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
689
+ "vision_tower.blocks.7.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
690
+ "vision_tower.blocks.7.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
691
+ "vision_tower.blocks.7.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
692
+ "vision_tower.blocks.7.norm1.bias": "model-00001-of-00002.safetensors",
693
+ "vision_tower.blocks.7.norm1.weight": "model-00001-of-00002.safetensors",
694
+ "vision_tower.blocks.7.norm2.bias": "model-00001-of-00002.safetensors",
695
+ "vision_tower.blocks.7.norm2.weight": "model-00001-of-00002.safetensors",
696
+ "vision_tower.blocks.8.attn.proj.bias": "model-00001-of-00002.safetensors",
697
+ "vision_tower.blocks.8.attn.proj.weight": "model-00001-of-00002.safetensors",
698
+ "vision_tower.blocks.8.attn.qkv.bias": "model-00001-of-00002.safetensors",
699
+ "vision_tower.blocks.8.attn.qkv.weight": "model-00001-of-00002.safetensors",
700
+ "vision_tower.blocks.8.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
701
+ "vision_tower.blocks.8.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
702
+ "vision_tower.blocks.8.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
703
+ "vision_tower.blocks.8.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
704
+ "vision_tower.blocks.8.norm1.bias": "model-00001-of-00002.safetensors",
705
+ "vision_tower.blocks.8.norm1.weight": "model-00001-of-00002.safetensors",
706
+ "vision_tower.blocks.8.norm2.bias": "model-00001-of-00002.safetensors",
707
+ "vision_tower.blocks.8.norm2.weight": "model-00001-of-00002.safetensors",
708
+ "vision_tower.blocks.9.attn.proj.bias": "model-00001-of-00002.safetensors",
709
+ "vision_tower.blocks.9.attn.proj.weight": "model-00001-of-00002.safetensors",
710
+ "vision_tower.blocks.9.attn.qkv.bias": "model-00001-of-00002.safetensors",
711
+ "vision_tower.blocks.9.attn.qkv.weight": "model-00001-of-00002.safetensors",
712
+ "vision_tower.blocks.9.mlp.linear_fc1.bias": "model-00001-of-00002.safetensors",
713
+ "vision_tower.blocks.9.mlp.linear_fc1.weight": "model-00001-of-00002.safetensors",
714
+ "vision_tower.blocks.9.mlp.linear_fc2.bias": "model-00001-of-00002.safetensors",
715
+ "vision_tower.blocks.9.mlp.linear_fc2.weight": "model-00001-of-00002.safetensors",
716
+ "vision_tower.blocks.9.norm1.bias": "model-00001-of-00002.safetensors",
717
+ "vision_tower.blocks.9.norm1.weight": "model-00001-of-00002.safetensors",
718
+ "vision_tower.blocks.9.norm2.bias": "model-00001-of-00002.safetensors",
719
+ "vision_tower.blocks.9.norm2.weight": "model-00001-of-00002.safetensors",
720
+ "vision_tower.merger.linear_fc1.bias": "model-00001-of-00002.safetensors",
721
+ "vision_tower.merger.linear_fc1.weight": "model-00001-of-00002.safetensors",
722
+ "vision_tower.merger.linear_fc2.bias": "model-00001-of-00002.safetensors",
723
+ "vision_tower.merger.linear_fc2.weight": "model-00001-of-00002.safetensors",
724
+ "vision_tower.merger.norm.bias": "model-00001-of-00002.safetensors",
725
+ "vision_tower.merger.norm.weight": "model-00001-of-00002.safetensors",
726
+ "vision_tower.patch_embed.proj.bias": "model-00001-of-00002.safetensors",
727
+ "vision_tower.patch_embed.proj.weight": "model-00001-of-00002.safetensors",
728
+ "vision_tower.pos_embed.weight": "model-00001-of-00002.safetensors"
729
+ }
730
+ }
preprocessor_config.json ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "size": {
3
+ "longest_edge": 16777216,
4
+ "shortest_edge": 65536
5
+ },
6
+ "patch_size": 16,
7
+ "temporal_patch_size": 2,
8
+ "merge_size": 2,
9
+ "image_mean": [
10
+ 0.5,
11
+ 0.5,
12
+ 0.5
13
+ ],
14
+ "image_std": [
15
+ 0.5,
16
+ 0.5,
17
+ 0.5
18
+ ],
19
+ "processor_class": "Qwen3VLProcessor",
20
+ "image_processor_type": "Qwen2VLImageProcessorFast"
21
+ }
processor_config.json ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "image_processor": {
3
+ "data_format": "channels_first",
4
+ "do_convert_rgb": true,
5
+ "do_normalize": true,
6
+ "do_rescale": true,
7
+ "do_resize": true,
8
+ "image_mean": [
9
+ 0.5,
10
+ 0.5,
11
+ 0.5
12
+ ],
13
+ "image_processor_type": "Qwen2VLImageProcessorFast",
14
+ "image_std": [
15
+ 0.5,
16
+ 0.5,
17
+ 0.5
18
+ ],
19
+ "merge_size": 2,
20
+ "patch_size": 16,
21
+ "resample": 3,
22
+ "rescale_factor": 0.00392156862745098,
23
+ "size": {
24
+ "longest_edge": 16777216,
25
+ "shortest_edge": 65536
26
+ },
27
+ "temporal_patch_size": 2
28
+ },
29
+ "processor_class": "Qwen3VLProcessor",
30
+ "video_processor": {
31
+ "data_format": "channels_first",
32
+ "default_to_square": true,
33
+ "do_convert_rgb": true,
34
+ "do_normalize": true,
35
+ "do_rescale": true,
36
+ "do_resize": true,
37
+ "do_sample_frames": true,
38
+ "fps": 2,
39
+ "image_mean": [
40
+ 0.5,
41
+ 0.5,
42
+ 0.5
43
+ ],
44
+ "image_std": [
45
+ 0.5,
46
+ 0.5,
47
+ 0.5
48
+ ],
49
+ "max_frames": 768,
50
+ "merge_size": 2,
51
+ "min_frames": 4,
52
+ "patch_size": 16,
53
+ "resample": 3,
54
+ "rescale_factor": 0.00392156862745098,
55
+ "return_metadata": false,
56
+ "size": {
57
+ "longest_edge": 25165824,
58
+ "shortest_edge": 4096
59
+ },
60
+ "temporal_patch_size": 2,
61
+ "video_processor_type": "Qwen3VLVideoProcessor"
62
+ }
63
+ }
temperatures.json ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "dev": "experiments/decision/dev-v2-lora-v2b.jsonl",
3
+ "eval": "experiments/decision/eval-v2-lora-v2b.jsonl",
4
+ "questions": {
5
+ "grounding": {
6
+ "temperature": 1.2,
7
+ "dev_items": 771,
8
+ "dev_ece": {
9
+ "before": 0.1964,
10
+ "after": 0.145
11
+ },
12
+ "dev_log_loss": {
13
+ "before": 1.2577,
14
+ "after": 1.2158
15
+ },
16
+ "eval_items": 2079,
17
+ "eval_ece": {
18
+ "before": 0.1447,
19
+ "after": 0.1069
20
+ },
21
+ "eval_log_loss": {
22
+ "before": 1.2496,
23
+ "after": 1.2284
24
+ }
25
+ },
26
+ "action": {
27
+ "temperature": 2.05,
28
+ "dev_items": 1317,
29
+ "dev_ece": {
30
+ "before": 0.2948,
31
+ "after": 0.0523
32
+ },
33
+ "dev_log_loss": {
34
+ "before": 2.1282,
35
+ "after": 1.6834
36
+ },
37
+ "eval_items": 3442,
38
+ "eval_ece": {
39
+ "before": 0.2593,
40
+ "after": 0.0467
41
+ },
42
+ "eval_log_loss": {
43
+ "before": 2.0045,
44
+ "after": 1.6253
45
+ }
46
+ },
47
+ "next_target": {
48
+ "temperature": 0.9,
49
+ "dev_items": 771,
50
+ "dev_ece": {
51
+ "before": 0.1169,
52
+ "after": 0.1149
53
+ },
54
+ "dev_log_loss": {
55
+ "before": 2.9552,
56
+ "after": 2.9388
57
+ },
58
+ "eval_items": 2079,
59
+ "eval_ece": {
60
+ "before": 0.0635,
61
+ "after": 0.0852
62
+ },
63
+ "eval_log_loss": {
64
+ "before": 3.1757,
65
+ "after": 3.1547
66
+ }
67
+ }
68
+ }
69
+ }
tokenizer.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:87a7830d63fcf43bf241c3c5242e96e62dd3fdc29224ca26fed8ea333db72de4
3
+ size 19989343
tokenizer_config.json ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
+ "model_max_length": 262144,
14
+ "model_specific_special_tokens": {
15
+ "audio_bos_token": "<|audio_start|>",
16
+ "audio_eos_token": "<|audio_end|>",
17
+ "audio_token": "<|audio_pad|>",
18
+ "image_token": "<|image_pad|>",
19
+ "video_token": "<|video_pad|>",
20
+ "vision_bos_token": "<|vision_start|>",
21
+ "vision_eos_token": "<|vision_end|>"
22
+ },
23
+ "pad_token": "<|endoftext|>",
24
+ "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+",
25
+ "processor_class": "Qwen3VLProcessor",
26
+ "split_special_tokens": false,
27
+ "tokenizer_class": "TokenizersBackend",
28
+ "unk_token": null,
29
+ "video_token": "<|video_pad|>",
30
+ "vision_bos_token": "<|vision_start|>",
31
+ "vision_eos_token": "<|vision_end|>"
32
+ }
video_preprocessor_config.json ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "size": {
3
+ "longest_edge": 25165824,
4
+ "shortest_edge": 4096
5
+ },
6
+ "patch_size": 16,
7
+ "temporal_patch_size": 2,
8
+ "merge_size": 2,
9
+ "image_mean": [
10
+ 0.5,
11
+ 0.5,
12
+ 0.5
13
+ ],
14
+ "image_std": [
15
+ 0.5,
16
+ 0.5,
17
+ 0.5
18
+ ],
19
+ "processor_class": "Qwen3VLProcessor",
20
+ "video_processor_type": "Qwen3VLVideoProcessor"
21
+ }
vocab.json ADDED
The diff for this file is too large to render. See raw diff