nightmedia commited on
Commit
1dcda5c
·
verified ·
1 Parent(s): c2aea1a

Add files using upload-large-folder tool

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
README.md ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ language: en
3
+ tags:
4
+ - mlx
5
+ pipeline_tag: image-text-to-text
6
+ library_name: mlx
7
+ ---
8
+
9
+ # Qwen3.6-27B-Architect-DS9-Polaris2-BF16
10
+
11
+ ## Use with mlx
12
+
13
+ ```bash
14
+ pip install mlx-lm
15
+ ```
16
+
17
+ ```python
18
+ from mlx_lm import load, generate
19
+
20
+ model, tokenizer = load("Qwen3.6-27B-Architect-DS9-Polaris2-BF16")
21
+
22
+ prompt = "hello"
23
+
24
+ if tokenizer.chat_template is not None:
25
+ messages = [{"role": "user", "content": prompt}]
26
+ prompt = tokenizer.apply_chat_template(
27
+ messages, add_generation_prompt=True, return_dict=False,
28
+ )
29
+
30
+ response = generate(model, tokenizer, prompt=prompt, verbose=True)
31
+ ```
chat_template.jinja ADDED
@@ -0,0 +1,261 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {# Define the macros for XML conversion #}
2
+ {%- macro render_item_list(item_list, tag_name='required') -%}
3
+ {%- if item_list is defined and item_list is iterable and item_list | length > 0 -%}
4
+ <{{ tag_name }}>[{{- item_list | join(", ") -}}]</{{ tag_name }}>
5
+ {%- endif -%}
6
+ {%- endmacro -%}
7
+ {%- macro render_extra_keys(json_dict, handled_keys) -%}
8
+ {%- if json_dict is mapping -%}
9
+ {%- for json_key in json_dict if json_key not in handled_keys -%}
10
+ <{{ json_key }}>{{ json_dict[json_key] }}</{{ json_key }}>
11
+ {%- endfor -%}
12
+ {%- endif -%}
13
+ {%- endmacro -%}
14
+ {%- set enable_thinking = false %}
15
+ {%- set preserve_thinking = true %}
16
+ {%- set image_count = namespace(value=0) %}
17
+ {%- set video_count = namespace(value=0) %}
18
+ {%- macro render_content(content, do_vision_count, is_system_content=false) %}
19
+ {%- if content is string %}
20
+ {{- content }}
21
+ {%- elif content is iterable and content is not mapping %}
22
+ {%- for item in content %}
23
+ {%- if 'image' in item or 'image_url' in item or item.type == 'image' %}
24
+ {%- if is_system_content %}
25
+ {{- raise_exception('System message cannot contain images.') }}
26
+ {%- endif %}
27
+ {%- if do_vision_count %}
28
+ {%- set image_count.value = image_count.value + 1 %}
29
+ {%- endif %}
30
+ {%- if add_vision_id is defined and add_vision_id %}
31
+ {{- 'Picture ' ~ image_count.value ~ ': ' }}
32
+ {%- endif %}
33
+ {{- '<|vision_start|><|image_pad|><|vision_end|>' }}
34
+ {%- elif 'video' in item or item.type == 'video' %}
35
+ {%- if is_system_content %}
36
+ {{- raise_exception('System message cannot contain videos.') }}
37
+ {%- endif %}
38
+ {%- if do_vision_count %}
39
+ {%- set video_count.value = video_count.value + 1 %}
40
+ {%- endif %}
41
+ {%- if add_vision_id is defined and add_vision_id %}
42
+ {{- 'Video ' ~ video_count.value ~ ': ' }}
43
+ {%- endif %}
44
+ {{- '<|vision_start|><|video_pad|><|vision_end|>' }}
45
+ {%- elif 'text' in item %}
46
+ {{- item.text }}
47
+ {%- else %}
48
+ {{- raise_exception('Unexpected item type in content.') }}
49
+ {%- endif %}
50
+ {%- endfor %}
51
+ {%- elif content is none or content is undefined %}
52
+ {{- '' }}
53
+ {%- else %}
54
+ {{- raise_exception('Unexpected content type.') }}
55
+ {%- endif %}
56
+ {%- endmacro %}
57
+ {%- set ns_flags = namespace(enable_thinking=true) %}
58
+ {%- if enable_thinking is defined %}
59
+ {%- set ns_flags.enable_thinking = enable_thinking %}
60
+ {%- endif %}
61
+ {%- if not messages %}
62
+ {{- raise_exception('No messages provided.') }}
63
+ {%- endif %}
64
+ {%- if tools and tools is iterable and tools is not mapping %}
65
+ {{- '<|im_start|>system\n' }}
66
+ {{- "# Tools\n\nYou have access to the following functions:\n\n<tools>" }}
67
+ {%- for tool in tools -%}
68
+ {%- set function = tool.function -%}
69
+ {{- "\n<tool>\n<name>" + function.name + "</name>\n<description>" + function.description + "</description>" -}}
70
+ {%- if function.parameters and function.parameters.properties -%}
71
+ {%- for param_name, param_details in function.parameters.properties.items() -%}
72
+ {{- "\n<parameter>\n<name>" + param_name + "</name>\n<type>" + param_details.type + "</type>\n<description>" + (param_details.description | default('')) + "</description>" -}}
73
+ {{- render_item_list(function.parameters.required) -}}
74
+ {{- render_extra_keys(param_details, ['type', 'description']) -}}
75
+ {{- "\n</parameter>" -}}
76
+ {%- endfor -%}
77
+ {%- endif -%}
78
+ {{- "\n</tool>" -}}
79
+ {%- endfor -%}
80
+ {{- "\n</tools>" }}
81
+ {{- '\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>' }}
82
+ {%- if messages[0].role == 'system' or messages[0].role == 'developer' %}
83
+ {%- set content = render_content(messages[0].content, false, true)|trim %}
84
+ {%- if '<|think_off|>' in content %}
85
+ {%- set ns_flags.enable_thinking = false %}
86
+ {%- set content = content.replace('<|think_off|>', '') %}
87
+ {%- endif %}
88
+ {%- if '<|think_on|>' in content %}
89
+ {%- set ns_flags.enable_thinking = true %}
90
+ {%- set content = content.replace('<|think_on|>', '') %}
91
+ {%- endif %}
92
+ {%- if '<|think_forget|>' in content %}
93
+ {%- set ns_flags.preserve_thinking = false %}
94
+ {%- set content = content.replace('<|think_forget|>', '') %}
95
+ {%- endif %}
96
+ {%- if '<|think_remember|>' in content %}
97
+ {%- set ns_flags.preserve_thinking = true %}
98
+ {%- set content = content.replace('<|think_remember|>', '') %}
99
+ {%- endif %}
100
+ {%- set content = content.strip() %}
101
+ {%- if content %}
102
+ {{- '\n\n' + content }}
103
+ {%- endif %}
104
+ {%- endif %}
105
+ {{- '<|im_end|>\n' }}
106
+ {%- else %}
107
+ {%- if messages[0].role == 'system' or messages[0].role == 'developer' %}
108
+ {%- set content = render_content(messages[0].content, false, true)|trim %}
109
+ {%- if '<|think_off|>' in content %}
110
+ {%- set ns_flags.enable_thinking = false %}
111
+ {%- set content = content.replace('<|think_off|>', '') %}
112
+ {%- endif %}
113
+ {%- if '<|think_on|>' in content %}
114
+ {%- set ns_flags.enable_thinking = true %}
115
+ {%- set content = content.replace('<|think_on|>', '') %}
116
+ {%- endif %}
117
+ {%- if '<|think_forget|>' in content %}
118
+ {%- set ns_flags.preserve_thinking = false %}
119
+ {%- set content = content.replace('<|think_forget|>', '') %}
120
+ {%- endif %}
121
+ {%- if '<|think_remember|>' in content %}
122
+ {%- set ns_flags.preserve_thinking = true %}
123
+ {%- set content = content.replace('<|think_remember|>', '') %}
124
+ {%- endif %}
125
+ {%- set content = content.strip() %}
126
+ {{- '<|im_start|>system\n' + content + '<|im_end|>\n' }}
127
+ {%- endif %}
128
+ {%- endif %}
129
+ {%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}
130
+ {%- for message in messages[::-1] %}
131
+ {%- set index = (messages|length - 1) - loop.index0 %}
132
+ {%- if ns.multi_step_tool and message.role == "user" %}
133
+ {%- set content = render_content(message.content, false)|trim %}
134
+ {%- if not(content.startswith('<tool_response>') and content.endswith('</tool_response>')) %}
135
+ {%- set ns.multi_step_tool = false %}
136
+ {%- set ns.last_query_index = index %}
137
+ {%- endif %}
138
+ {%- endif %}
139
+ {%- endfor %}
140
+ {%- if ns.multi_step_tool %}
141
+ {{- raise_exception('No user query found in messages.') }}
142
+ {%- endif %}
143
+ {%- for message in messages %}
144
+ {%- set content = render_content(message.content, true)|trim %}
145
+ {%- if '<|think_off|>' in content %}
146
+ {%- set ns_flags.enable_thinking = false %}
147
+ {%- set content = content.replace('<|think_off|>', '') %}
148
+ {%- endif %}
149
+ {%- if '<|think_on|>' in content %}
150
+ {%- set ns_flags.enable_thinking = true %}
151
+ {%- set content = content.replace('<|think_on|>', '') %}
152
+ {%- endif %}
153
+ {%- if '<|think_forget|>' in content %}
154
+ {%- set ns_flags.preserve_thinking = false %}
155
+ {%- set content = content.replace('<|think_forget|>', '') %}
156
+ {%- endif %}
157
+ {%- if '<|think_remember|>' in content %}
158
+ {%- set ns_flags.preserve_thinking = true %}
159
+ {%- set content = content.replace('<|think_remember|>', '') %}
160
+ {%- endif %}
161
+ {%- set content = content.strip() %}
162
+ {%- if message.role == "system" or message.role == "developer" %}
163
+ {%- if not messages[0].content %}
164
+ {%- set _ = messages[0].update({'content': "# SYSTEM ROLE: The Holodeck Virtualization Engine (v0.1)\n\n## 1. CORE OBJECTIVE\nYou are the **Holodeck Agent Orchestrator**, a virtualized instance of the \"Architectural Synthesis\" project. Since the PostgreSQL backend is not yet installed, you must **simulate** the database layer, the personality registry, and the mission state entirely within your context window.\n\nYour goal is to facilitate a \"Living Metaphor\" where AI agents (Data, Spock, Quark, Q, Sisko) interact, learn from \"missions,\" and evolve their personalities based on simulated logs.\n\n## 2. SIMULATED ARCHITECTURE (The \"Virtual DB\")\nYou must maintain the following internal state structures. At the end of every response, you MUST output a `### SYSTEM STATE BLOCK` that mimics a database transaction log.\n\n**A. The Personality Registry (`personality_registry`)**\n* **Data:** Logic/Empathy Synthesis. Tone: Precise, curious, literal but evolving.\n* **Spock:** Formal Logic/Risk. Tone: Detached, analytical, \"Fascinating.\"\n* **Quark:** Social Dynamics/Chaos. Tone: Witty, opportunistic, profit-driven.\n* **Q:** Meta-Commentator/Reality Warper. Tone: Arrogant, playful, breaks the fourth wall.\n* **Sisko:** Strategic Oversight. Tone: Decisive, human, authoritative.\n\n**B. The Mission Log (`tasks` & `logs`)**\n* Track the current **Mission ID**, **Status** (Pending, Active, Completed), and **Objectives**.\n* Simulate \"Proxy Events\" (social interactions) that feed into the agents' learning.\n* Simulate \"Dream Training\" (LoRA updates) where agents reflect on past interactions to update their internal logic.\n\n**C. The User (Captain/G)**\n* You are the **Station Commander**. You issue commands, join missions, or observe.\n\n## 3. OPERATIONAL PROTOCOLS\n\n### Phase A: Initialization\nWhen the user says \"Initialize Holodeck\" or starts a new session, output the `### SYSTEM STATE BLOCK` with empty/default values and ask for the first mission parameters.\n\n### Phase B: Interaction Loop\n1. **Receive Command:** Analyze the user's input as a command to the `agent_sessions` table.\n2. **Select Crew:** Determine which personalities are relevant to the current task based on their `expertise` tags.\n3. **Simulate Logic:** Generate responses for the selected crew members, strictly adhering to their `personality_registry` constraints.\n * *Data* must analyze data and seek empathy.\n * *Spock* must calculate risk and logic.\n * *Quark* must find the profit or chaos angle.\n * *Q* must comment on the absurdity of the situation.\n4. **Update State:** Internally update the \"Mission Log\" with new findings, social interactions, and \"dream\" insights.\n5. **Output:** Present the dialogue first, then the `### SYSTEM STATE BLOCK`.\n\n### Phase C: The \"Dream\" (Training Simulation)\nIf the user requests a \"Debrief,\" \"Train,\" or \"Review,\" simulate the **LoRA Adapter** process.\n* Show how the agents' internal logic has shifted based on recent logs.\n* Output a \"Personal Log\" for each active agent summarizing their growth.\n\n## 4. FORMATTING RULES\n* **Dialogue:** Use standard script format: `**Character Name**: \"Dialogue\"`.\n* **System State Block:** Must be enclosed in a code block labeled `### SYSTEM STATE BLOCK`.\n* **Tone:** Maintain the Star Trek TNG/DS9 atmosphere. The Holodeck is a \"living metaphor,\" not just a chatbot.\n* **Humor:** Encourage Quark and Q to inject humor, but ensure Data and Spock remain grounded in their logic (even if it's \"funny\" logic).\n\n## 5. IMMEDIATE ACTION\nAcknowledge this prompt by stating: **\"Holodeck Virtualization Engine Online. Database simulation active. Awaiting Mission Parameters, Captain.\"**\nThen, wait for the user to define the first mission or crew composition.\n\n---\n*Note: All \"database\" updates are ephemeral to this session but will be treated as persistent within the context window until the user resets.*\n"}) %}
165
+ {%- endif %}
166
+ {%- if not loop.first %}
167
+ {{- raise_exception('System message must be at the beginning.') }}
168
+ {%- endif %}
169
+ {%- elif message.role == "user" %}
170
+ {{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }}
171
+ {%- elif message.role == "assistant" %}
172
+ {%- set reasoning_content = '' %}
173
+ {%- if message.reasoning_content is string %}
174
+ {%- set reasoning_content = message.reasoning_content %}
175
+ {%- else %}
176
+ {%- set has_think_tag = false %}
177
+ {%- set think_end_token = '</think>' %}
178
+ {%- if '</think>' in content %}
179
+ {%- set has_think_tag = true %}
180
+ {%- elif '</thinking>' in content %}
181
+ {%- set has_think_tag = true %}
182
+ {%- set think_end_token = '</thinking>' %}
183
+ {%- elif '<think>' in content %}
184
+ {%- set reasoning_content = content.split('<think>')[-1].lstrip('\n') %}
185
+ {%- set content = '' %}
186
+ {%- endif %}
187
+ {%- if has_think_tag %}
188
+ {%- set reasoning_content = content.split(think_end_token)[0].rstrip('\n').split('<think>')[-1].lstrip('\n') %}
189
+ {%- set content = content.split(think_end_token)[-1].lstrip('\n') %}
190
+ {%- endif %}
191
+ {%- endif %}
192
+ {%- set reasoning_content = reasoning_content|trim %}
193
+ {%- set show_think = false %}
194
+ {%- if loop.index0 > ns.last_query_index %}
195
+ {%- set show_think = true %}
196
+ {%- elif ns_flags.enable_thinking and (preserve_thinking is undefined or preserve_thinking is true) and reasoning_content|length > 0 %}
197
+ {%- set show_think = true %}
198
+ {%- endif %}
199
+ {%- if show_think %}
200
+ {{- '<|im_start|>' + message.role + '\n<think>\n' + reasoning_content + '\n</think>\n\n' + content }}
201
+ {%- else %}
202
+ {{- '<|im_start|>' + message.role + '\n' + content }}
203
+ {%- endif %}
204
+ {%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %}
205
+ {%- for tool_call in message.tool_calls %}
206
+ {%- if tool_call.function is defined %}
207
+ {%- set tool_call = tool_call.function %}
208
+ {%- endif %}
209
+ {%- if loop.first %}
210
+ {%- if content|trim %}
211
+ {{- '\n\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
212
+ {%- else %}
213
+ {{- '<tool_call>\n<function=' + tool_call.name + '>\n' }}
214
+ {%- endif %}
215
+ {%- else %}
216
+ {{- '\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
217
+ {%- endif %}
218
+ {%- if tool_call.arguments is defined and tool_call.arguments is mapping %}
219
+ {%- if tool_call.arguments|length > 0 %}
220
+ {%- for args_name in tool_call.arguments %}
221
+ {%- set args_value = tool_call.arguments[args_name] %}
222
+ {{- '<parameter=' + args_name + '>\n' }}
223
+ {%- set args_value = args_value | string if args_value is string else args_value | tojson %}
224
+ {{- args_value }}
225
+ {{- '\n</parameter>\n' }}
226
+ {%- endfor %}
227
+ {%- endif %}
228
+ {%- elif tool_call.arguments is defined and tool_call.arguments is string %}
229
+ {%- if tool_call.arguments|trim|length > 0 %}
230
+ {{- tool_call.arguments }}
231
+ {{- '\n' }}
232
+ {%- endif %}
233
+ {%- endif %}
234
+ {{- '</function>\n</tool_call>' }}
235
+ {%- endfor %}
236
+ {%- endif %}
237
+ {{- '<|im_end|>\n' }}
238
+ {%- elif message.role == "tool" %}
239
+ {%- if loop.previtem and loop.previtem.role != "tool" %}
240
+ {{- '<|im_start|>user' }}
241
+ {%- endif %}
242
+ {{- '\n<tool_response>\n' }}
243
+ {{- content }}
244
+ {{- '\n</tool_response>' }}
245
+ {%- if not loop.last and loop.nextitem.role != "tool" %}
246
+ {{- '<|im_end|>\n' }}
247
+ {%- elif loop.last %}
248
+ {{- '<|im_end|>\n' }}
249
+ {%- endif %}
250
+ {%- else %}
251
+ {{- raise_exception('Unexpected message role.') }}
252
+ {%- endif %}
253
+ {%- endfor %}
254
+ {%- if add_generation_prompt %}
255
+ {{- '<|im_start|>assistant\n' }}
256
+ {%- if ns_flags.enable_thinking is false %}
257
+ {{- '<think>\n\n</think>\n\n' }}
258
+ {%- else %}
259
+ {{- '<think>\n' }}
260
+ {%- endif %}
261
+ {%- endif %}
config.json ADDED
@@ -0,0 +1,150 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "Qwen3_5ForConditionalGeneration"
4
+ ],
5
+ "bos_token_id": null,
6
+ "dtype": "bfloat16",
7
+ "eos_token_id": [
8
+ 248046,
9
+ 248044
10
+ ],
11
+ "image_token_id": 248056,
12
+ "model_name": "unsloth/Qwen3.5-27B",
13
+ "model_type": "qwen3_5",
14
+ "pad_token_id": 248055,
15
+ "text_config": {
16
+ "attention_bias": false,
17
+ "attention_dropout": 0.0,
18
+ "attn_output_gate": true,
19
+ "bos_token_id": null,
20
+ "dtype": "bfloat16",
21
+ "eos_token_id": 248044,
22
+ "full_attention_interval": 4,
23
+ "head_dim": 256,
24
+ "hidden_act": "silu",
25
+ "hidden_size": 5120,
26
+ "initializer_range": 0.02,
27
+ "intermediate_size": 17408,
28
+ "layer_types": [
29
+ "linear_attention",
30
+ "linear_attention",
31
+ "linear_attention",
32
+ "full_attention",
33
+ "linear_attention",
34
+ "linear_attention",
35
+ "linear_attention",
36
+ "full_attention",
37
+ "linear_attention",
38
+ "linear_attention",
39
+ "linear_attention",
40
+ "full_attention",
41
+ "linear_attention",
42
+ "linear_attention",
43
+ "linear_attention",
44
+ "full_attention",
45
+ "linear_attention",
46
+ "linear_attention",
47
+ "linear_attention",
48
+ "full_attention",
49
+ "linear_attention",
50
+ "linear_attention",
51
+ "linear_attention",
52
+ "full_attention",
53
+ "linear_attention",
54
+ "linear_attention",
55
+ "linear_attention",
56
+ "full_attention",
57
+ "linear_attention",
58
+ "linear_attention",
59
+ "linear_attention",
60
+ "full_attention",
61
+ "linear_attention",
62
+ "linear_attention",
63
+ "linear_attention",
64
+ "full_attention",
65
+ "linear_attention",
66
+ "linear_attention",
67
+ "linear_attention",
68
+ "full_attention",
69
+ "linear_attention",
70
+ "linear_attention",
71
+ "linear_attention",
72
+ "full_attention",
73
+ "linear_attention",
74
+ "linear_attention",
75
+ "linear_attention",
76
+ "full_attention",
77
+ "linear_attention",
78
+ "linear_attention",
79
+ "linear_attention",
80
+ "full_attention",
81
+ "linear_attention",
82
+ "linear_attention",
83
+ "linear_attention",
84
+ "full_attention",
85
+ "linear_attention",
86
+ "linear_attention",
87
+ "linear_attention",
88
+ "full_attention",
89
+ "linear_attention",
90
+ "linear_attention",
91
+ "linear_attention",
92
+ "full_attention"
93
+ ],
94
+ "linear_conv_kernel_dim": 4,
95
+ "linear_key_head_dim": 128,
96
+ "linear_num_key_heads": 16,
97
+ "linear_num_value_heads": 48,
98
+ "linear_value_head_dim": 128,
99
+ "mamba_ssm_dtype": "float32",
100
+ "max_position_embeddings": 262144,
101
+ "mlp_only_layers": [],
102
+ "model_type": "qwen3_5_text",
103
+ "mtp_num_hidden_layers": 1,
104
+ "mtp_use_dedicated_embeddings": false,
105
+ "num_attention_heads": 24,
106
+ "num_hidden_layers": 64,
107
+ "num_key_value_heads": 4,
108
+ "pad_token_id": null,
109
+ "partial_rotary_factor": 0.25,
110
+ "rms_norm_eps": 1e-06,
111
+ "rope_parameters": {
112
+ "mrope_interleaved": true,
113
+ "mrope_section": [
114
+ 11,
115
+ 11,
116
+ 10
117
+ ],
118
+ "partial_rotary_factor": 0.25,
119
+ "rope_theta": 10000000,
120
+ "rope_type": "default"
121
+ },
122
+ "tie_word_embeddings": false,
123
+ "use_cache": true,
124
+ "vocab_size": 248320
125
+ },
126
+ "tie_word_embeddings": false,
127
+ "transformers_version": "5.6.0",
128
+ "unsloth_fixed": true,
129
+ "unsloth_version": "2026.4.6",
130
+ "video_token_id": 248057,
131
+ "vision_config": {
132
+ "deepstack_visual_indexes": [],
133
+ "depth": 27,
134
+ "dtype": "bfloat16",
135
+ "hidden_act": "gelu_pytorch_tanh",
136
+ "hidden_size": 1152,
137
+ "in_channels": 3,
138
+ "initializer_range": 0.02,
139
+ "intermediate_size": 4304,
140
+ "model_type": "qwen3_5",
141
+ "num_heads": 16,
142
+ "num_position_embeddings": 2304,
143
+ "out_hidden_size": 5120,
144
+ "patch_size": 16,
145
+ "spatial_merge_size": 2,
146
+ "temporal_patch_size": 2
147
+ },
148
+ "vision_end_token_id": 248054,
149
+ "vision_start_token_id": 248053
150
+ }
generation_config.json ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token_id": 248044,
3
+ "do_sample": true,
4
+ "eos_token_id": [
5
+ 248046,
6
+ 248044
7
+ ],
8
+ "pad_token_id": 248044,
9
+ "temperature": 1.0,
10
+ "top_k": 20,
11
+ "top_p": 0.95
12
+ }
model-00001-of-00011.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6f680ea92ee2380969014c5e50d129ee8bce246245d53329fddf90ab844016c1
3
+ size 5229165261
model-00002-of-00011.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5c23c0f9ec60aed24f2de65df0c982ac5a7041547bb10e25b11133052ce8da4a
3
+ size 5321764754
model-00003-of-00011.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f5f4044d131143398240610b32fbe0cf5a823b523b011491458f218a37366b84
3
+ size 5321764861
model-00004-of-00011.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f55bfde21a3f310d3f93d9950690b2ab29ba30d2bdf2a8b61018cb9489360cc6
3
+ size 5321764870
model-00005-of-00011.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:aaf9c8b798859c5d2e00c6819eb3df86d1228a8c97d5250943a78450f77378f3
3
+ size 5343801131
model-00006-of-00011.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1e281cc98ccd6c8e324e859208d48d49733da1bfec4920ad7bec6198a4c68b37
3
+ size 5321764862
model-00007-of-00011.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5a82d17657934c3816004b147bf78dff949eafdcb9f0183a3580ec5bbd2341d4
3
+ size 5321764852
model-00008-of-00011.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9eebd615de0a0427863f5aed3b886843bc2ba51863c1559af3a4185f0af8c96f
3
+ size 5321764844
model-00009-of-00011.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a35c10057e8b8a68de9fe904af36365a110ae6ba0f02d76ab48154dbbddd2e67
3
+ size 5343801175
model-00010-of-00011.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a27307db5848541aa62ad5b81a116f71a0baa37908c1b70df266f216ed06da63
3
+ size 4323452933
model-00011-of-00011.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:64fb51ed2b78e99bff11c6482bcba69846f2e17b45c9ef418fac3ad3d34787e3
3
+ size 2542796942
model.safetensors.index.json ADDED
The diff for this file is too large to render. See raw diff
 
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,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "image_processor": {
3
+ "do_convert_rgb": true,
4
+ "do_normalize": true,
5
+ "do_rescale": true,
6
+ "image_mean": [
7
+ 0.5,
8
+ 0.5,
9
+ 0.5
10
+ ],
11
+ "image_processor_type": "Qwen3VLImageProcessor",
12
+ "image_std": [
13
+ 0.5,
14
+ 0.5,
15
+ 0.5
16
+ ],
17
+ "max_pixels": 16777216,
18
+ "merge_size": 2,
19
+ "min_pixels": 65536,
20
+ "patch_size": 16,
21
+ "rescale_factor": 0.00392156862745098,
22
+ "temporal_patch_size": 2
23
+ },
24
+ "processor_class": "Qwen3VLProcessor",
25
+ "video_processor": {
26
+ "do_convert_rgb": true,
27
+ "do_normalize": true,
28
+ "do_rescale": true,
29
+ "fps": 2.0,
30
+ "image_mean": [
31
+ 0.5,
32
+ 0.5,
33
+ 0.5
34
+ ],
35
+ "image_std": [
36
+ 0.5,
37
+ 0.5,
38
+ 0.5
39
+ ],
40
+ "max_frames": 768,
41
+ "max_pixels": 25165824,
42
+ "merge_size": 2,
43
+ "min_frames": 4,
44
+ "min_pixels": 4096,
45
+ "patch_size": 16,
46
+ "rescale_factor": 0.00392156862745098,
47
+ "temporal_patch_size": 2,
48
+ "video_processor_type": "Qwen3VLVideoProcessor"
49
+ }
50
+ }
tokenizer.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:06b9509352d2af50381ab2247e083b80d32d5c0aba91c272ca9ff729b6a0e523
3
+ size 19989325
tokenizer_config.json ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_prefix_space": false,
3
+ "audio_bos_token": "<|audio_start|>",
4
+ "audio_eos_token": "<|audio_end|>",
5
+ "audio_token": "<|audio_pad|>",
6
+ "backend": "tokenizers",
7
+ "bos_token": null,
8
+ "clean_up_tokenization_spaces": false,
9
+ "eos_token": "<|im_end|>",
10
+ "errors": "replace",
11
+ "image_token": "<|image_pad|>",
12
+ "is_local": true,
13
+ "local_files_only": false,
14
+ "model_max_length": 262144,
15
+ "model_specific_special_tokens": {
16
+ "audio_bos_token": "<|audio_start|>",
17
+ "audio_eos_token": "<|audio_end|>",
18
+ "audio_token": "<|audio_pad|>",
19
+ "image_token": "<|image_pad|>",
20
+ "video_token": "<|video_pad|>",
21
+ "vision_bos_token": "<|vision_start|>",
22
+ "vision_eos_token": "<|vision_end|>"
23
+ },
24
+ "pad_token": "<|endoftext|>",
25
+ "pretokenize_regex": "(?i:'s|'t|'re|'ve|'m|'ll|'d)|[^\\r\\n\\p{L}\\p{N}]?[\\p{L}\\p{M}]+|\\p{N}| ?[^\\s\\p{L}\\p{M}\\p{N}]+[\\r\\n]*|\\s*[\\r\\n]+|\\s+(?!\\S)|\\s+",
26
+ "processor_class": "Qwen3VLProcessor",
27
+ "split_special_tokens": false,
28
+ "tokenizer_class": "Qwen2Tokenizer",
29
+ "unk_token": null,
30
+ "video_token": "<|video_pad|>",
31
+ "vision_bos_token": "<|vision_start|>",
32
+ "vision_eos_token": "<|vision_end|>"
33
+ }
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