Add DSpark tokenizer files and update chat template

#5
chat_template.jinja CHANGED
@@ -9,6 +9,7 @@
9
  {%- set think_end_token = '</mm:think>' -%}
10
  {%- set image_token = ']<]image[>[' -%}
11
  {%- set video_token = ']<]video[>[' -%}
 
12
  {#- Recursive XML renderer for tool_call arguments ======================== -#}
13
  {#- None values are intentionally skipped in mapping iteration so that
14
  `<key>null</key>` (which would round-trip to the literal string "null")
@@ -50,6 +51,8 @@
50
  {{- image_token }}
51
  {%- elif item is mapping and item.type == 'video' -%}
52
  {{- video_token }}
 
 
53
  {%- elif item is string -%}
54
  {{- item }}
55
  {%- endif -%}
@@ -81,7 +84,9 @@
81
  {{- 'You have a thinking capability that allows you to reason step by step before responding. When thinking is enabled, wrap your reasoning in ' ~ think_begin_token ~ think_end_token ~ ' tags before your response. When thinking is disabled, begin your response directly after the ' ~ think_end_token ~ ' prefix. When thinking is adaptive, decide on your own whether to think for the current turn.\n' }}
82
  {{- 'Current thinking mode: adaptive. You are encouraged to think for complex decision-making, multi-step reasoning, or when analyzing function/tool results.\n' }}
83
  {{- '</thinking_instructions>' }}
84
- {{- '\n\n<model_id>8bb8149fe</model_id>' }}
 
 
85
  {%- if reasoning_effort is defined and reasoning_effort is not none -%}
86
  {{- '\n\n<effort>' ~ reasoning_effort ~ '</effort>' }}
87
  {%- elif effort is defined and effort is not none -%}
@@ -217,6 +222,8 @@
217
  {{- image_token }}
218
  {%- elif tr is mapping and tr.type is defined and tr.type == 'video' -%}
219
  {{- video_token }}
 
 
220
  {%- else -%}
221
  {{- tr.output if tr.output is defined else (tr.text if tr.type == 'text' and tr.text is defined else tr) }}
222
  {%- endif -%}
 
9
  {%- set think_end_token = '</mm:think>' -%}
10
  {%- set image_token = ']<]image[>[' -%}
11
  {%- set video_token = ']<]video[>[' -%}
12
+ {%- set frame_token = ']<]frame[>[' -%}
13
  {#- Recursive XML renderer for tool_call arguments ======================== -#}
14
  {#- None values are intentionally skipped in mapping iteration so that
15
  `<key>null</key>` (which would round-trip to the literal string "null")
 
51
  {{- image_token }}
52
  {%- elif item is mapping and item.type == 'video' -%}
53
  {{- video_token }}
54
+ {%- elif item is mapping and item.type == 'frame' -%}
55
+ {{- frame_token}}
56
  {%- elif item is string -%}
57
  {{- item }}
58
  {%- endif -%}
 
84
  {{- 'You have a thinking capability that allows you to reason step by step before responding. When thinking is enabled, wrap your reasoning in ' ~ think_begin_token ~ think_end_token ~ ' tags before your response. When thinking is disabled, begin your response directly after the ' ~ think_end_token ~ ' prefix. When thinking is adaptive, decide on your own whether to think for the current turn.\n' }}
85
  {{- 'Current thinking mode: adaptive. You are encouraged to think for complex decision-making, multi-step reasoning, or when analyzing function/tool results.\n' }}
86
  {{- '</thinking_instructions>' }}
87
+ {%- if template_model_id is defined -%}
88
+ {{- '\n\n<model_id>' ~ template_model_id ~ '</model_id>' }}
89
+ {%- endif -%}
90
  {%- if reasoning_effort is defined and reasoning_effort is not none -%}
91
  {{- '\n\n<effort>' ~ reasoning_effort ~ '</effort>' }}
92
  {%- elif effort is defined and effort is not none -%}
 
222
  {{- image_token }}
223
  {%- elif tr is mapping and tr.type is defined and tr.type == 'video' -%}
224
  {{- video_token }}
225
+ {%- elif tr is mapping and tr.type is defined and tr.type == 'frame' -%}
226
+ {{- frame_token }}
227
  {%- else -%}
228
  {{- tr.output if tr.output is defined else (tr.text if tr.type == 'text' and tr.text is defined else tr) }}
229
  {%- endif -%}
dspark/added_tokens.json ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "]!p~[": 200000,
3
+ "<fim_prefix>": 200001,
4
+ "<fim_middle>": 200002,
5
+ "<fim_suffix>": 200003,
6
+ "<fim_pad>": 200004,
7
+ "<reponame>": 200005,
8
+ "<filename>": 200006,
9
+ "<gh_stars>": 200007,
10
+ "<issue_start>": 200008,
11
+ "<issue_comment>": 200009,
12
+ "<issue_closed>": 200010,
13
+ "<jupyter_start>": 200011,
14
+ "<jupyter_text>": 200012,
15
+ "<jupyter_code>": 200013,
16
+ "<jupyter_output>": 200014,
17
+ "<empty_output>": 200015,
18
+ "<commit_before>": 200016,
19
+ "<commit_msg>": 200017,
20
+ "<commit_after>": 200018,
21
+ "]~b]": 200019,
22
+ "[e~[": 200020,
23
+ "]!d~[": 200021,
24
+ "<function_call>": 200022,
25
+ "<code_interpreter>": 200023,
26
+ "]<]speech[>[": 200024,
27
+ "]<]image[>[": 200025,
28
+ "]<]video[>[": 200026,
29
+ "]<]start of speech[>[": 200027,
30
+ "]<]end of speech[>[": 200028,
31
+ "]<]start of image[>[": 200029,
32
+ "]<]end of image[>[": 200030,
33
+ "]<]start of video[>[": 200031,
34
+ "]<]end of video[>[": 200032,
35
+ "]<]vision pad[>[": 200033,
36
+ "]~!b[": 200034,
37
+ "<jupyter_error>": 200035,
38
+ "<add_file>": 200036,
39
+ "<delete_file>": 200037,
40
+ "<rename_file>": 200038,
41
+ "<edit_file>": 200039,
42
+ "<commit_message>": 200040,
43
+ "<empty_source_file>": 200041,
44
+ "<repo_struct>": 200042,
45
+ "<code_context>": 200043,
46
+ "<file_content>": 200044,
47
+ "<source_files>": 200045,
48
+ "<pr_start>": 200046,
49
+ "<review_comment>": 200047,
50
+ "<filepath>": 200048,
51
+ "<file_sep>": 200049,
52
+ "<think>": 200050,
53
+ "</think>": 200051,
54
+ "<tool_call>": 200052,
55
+ "</tool_call>": 200053,
56
+ "]<]frame[>[": 200054,
57
+ "]<]start of frame[>[": 200055,
58
+ "]<]end of frame[>[": 200056,
59
+ "<|content_altered_placeholder|>": 200057,
60
+ "]<]minimax[>[": 200058,
61
+ "<mm:think>": 200059,
62
+ "</mm:think>": 200060
63
+ }
dspark/chat_template.jinja ADDED
@@ -0,0 +1,255 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {# ---------- special token variables ---------- #}
2
+ {%- set ns_token = ']<]minimax[>[' -%}
3
+ {%- set bod_token = ']~!b[' -%}
4
+ {%- set bos_token = ']~b]' -%}
5
+ {%- set eos_token = '[e~[' -%}
6
+ {%- set toolcall_begin_token = ns_token ~ '<tool_call>' -%}
7
+ {%- set toolcall_end_token = ns_token ~ '</tool_call>' -%}
8
+ {%- set think_begin_token = '<mm:think>' -%}
9
+ {%- set think_end_token = '</mm:think>' -%}
10
+ {%- set image_token = ']<]image[>[' -%}
11
+ {%- set video_token = ']<]video[>[' -%}
12
+ {%- set frame_token = ']<]frame[>[' -%}
13
+ {#- Recursive XML renderer for tool_call arguments ======================== -#}
14
+ {#- None values are intentionally skipped in mapping iteration so that
15
+ `<key>null</key>` (which would round-trip to the literal string "null")
16
+ never appears in the rendered tool_call. The convention is: omit the
17
+ field entirely. The top-level `_args` loop applies the same rule.
18
+ The `val is none` branch below is a safety net only — upstream cleaning
19
+ (drop_none_in_tool_arguments) should ensure no None ever reaches here. -#}
20
+ {%- macro to_xml(val, ns) -%}
21
+ {%- if val is mapping -%}
22
+ {%- for k, v in val.items() if v is not none -%}
23
+ {{ ns }}<{{ k }}>{{ to_xml(v, ns) }}{{ ns }}</{{ k }}>
24
+ {%- endfor -%}
25
+ {%- elif val is iterable and val is not string -%}
26
+ {%- for item in val -%}
27
+ {{ ns }}<item>{{ to_xml(item, ns) }}{{ ns }}</item>
28
+ {%- endfor -%}
29
+ {%- elif val is none -%}
30
+ {#- Should be unreachable when upstream cleaning is applied. -#}
31
+ {%- elif val is boolean -%}
32
+ {{ val | tojson }}
33
+ {%- else -%}
34
+ {{ val }}
35
+ {%- endif -%}
36
+ {%- endmacro -%}
37
+ {#- Tool Rendering Functions ============================================== -#}
38
+ {%- macro render_tool_namespace(namespace_name, tool_list) -%}
39
+ {%- for tool in tool_list -%}
40
+ <tool>{{ tool.function | tojson(ensure_ascii=False) }}</tool>
41
+ {% endfor -%}
42
+ {%- endmacro -%}
43
+ {%- macro visible_text(content) -%}
44
+ {%- if content is string -%}
45
+ {{ content }}
46
+ {%- elif content is iterable and content is not mapping -%}
47
+ {%- for item in content -%}
48
+ {%- if item is mapping and item.type == 'text' -%}
49
+ {{- item.text }}
50
+ {%- elif item is mapping and item.type == 'image' -%}
51
+ {{- image_token }}
52
+ {%- elif item is mapping and item.type == 'video' -%}
53
+ {{- video_token }}
54
+ {%- elif item is mapping and item.type == 'frame' -%}
55
+ {{- frame_token}}
56
+ {%- elif item is string -%}
57
+ {{- item }}
58
+ {%- endif -%}
59
+ {%- endfor -%}
60
+ {%- elif content is none -%}
61
+ {{- '' }}
62
+ {%- else -%}
63
+ {{- content }}
64
+ {%- endif -%}
65
+ {%- endmacro -%}
66
+ {#- System Message Construction ============================================ -#}
67
+ {%- macro build_system_message(system_message) -%}
68
+ {%- if system_message and system_message.content -%}
69
+ {{- visible_text(system_message.content) }}
70
+ {#- Handle current_date -#}
71
+ {%- if system_message.current_date -%}
72
+ {{- '\n' ~ 'Current date: ' + system_message.current_date }}
73
+ {%- endif -%}
74
+ {#- Handle current_location -#}
75
+ {%- if system_message.current_location -%}
76
+ {{- '\n' ~ 'Current location: ' + system_message.current_location }}
77
+ {%- endif -%}
78
+ {%- else -%}
79
+ {{- 'Your model version is MiniMax-M3.1, developed by MiniMax. Knowledge cutoff: January 2026. Founded in early 2022, MiniMax is a global AI foundation model company committed to advancing the frontiers of AI towards AGI.' }}
80
+ {%- endif -%}
81
+
82
+ {#- Thinking mode instructions -#}
83
+ {{- '\n\n<thinking_instructions>\n' }}
84
+ {{- 'You have a thinking capability that allows you to reason step by step before responding. When thinking is enabled, wrap your reasoning in ' ~ think_begin_token ~ think_end_token ~ ' tags before your response. When thinking is disabled, begin your response directly after the ' ~ think_end_token ~ ' prefix. When thinking is adaptive, decide on your own whether to think for the current turn.\n' }}
85
+ {{- 'Current thinking mode: adaptive. You are encouraged to think for complex decision-making, multi-step reasoning, or when analyzing function/tool results.\n' }}
86
+ {{- '</thinking_instructions>' }}
87
+ {%- if template_model_id is defined -%}
88
+ {{- '\n\n<model_id>' ~ template_model_id ~ '</model_id>' }}
89
+ {%- endif -%}
90
+ {%- if reasoning_effort is defined and reasoning_effort is not none -%}
91
+ {{- '\n\n<effort>' ~ reasoning_effort ~ '</effort>' }}
92
+ {%- elif effort is defined and effort is not none -%}
93
+ {{- '\n\n<effort>' ~ effort ~ '</effort>' }}
94
+ {%- endif -%}
95
+ {%- endmacro -%}
96
+ {%- macro build_developer_message(developer_message) -%}
97
+ {%- if developer_message and developer_message.content -%}
98
+ {{- visible_text(developer_message.content) }}
99
+ {%- else -%}
100
+ {%- if model_identity is not defined -%}
101
+ {%- set model_identity = "You are a helpful assistant." -%}
102
+ {%- endif -%}
103
+ {{- model_identity }}
104
+ {%- endif -%}
105
+ {%- endmacro -%}
106
+ {#- Main Template Logic ================================================= -#}
107
+ {#- Role mapping: root -> system sp (high priority), system/developer -> developer sp (low priority) -#}
108
+ {%- set system_message = none -%}
109
+ {%- set developer_message = none -%}
110
+ {%- set conversation_messages = messages -%}
111
+ {%- if messages and messages[0].role == "root" -%}
112
+ {%- set system_message = messages[0] -%}
113
+ {%- set conversation_messages = messages[1:] -%}
114
+ {%- if conversation_messages and conversation_messages[0].role in ["system", "developer"] -%}
115
+ {%- set developer_message = conversation_messages[0] -%}
116
+ {%- set conversation_messages = conversation_messages[1:] -%}
117
+ {%- endif -%}
118
+ {%- elif messages and messages[0].role in ["system", "developer"] -%}
119
+ {%- set developer_message = messages[0] -%}
120
+ {%- set conversation_messages = messages[1:] -%}
121
+ {%- endif -%}
122
+ {#- Render system sp (higher priority, root role only) -#}
123
+ {{- bod_token ~ bos_token ~ 'system' ~ '\n' }}
124
+ {{- build_system_message(system_message) }}
125
+ {{- eos_token ~ '\n' }}
126
+
127
+ {#- Render developer sp (lower priority: system/developer role + tools) -#}
128
+ {{- bos_token ~ 'developer' ~ '\n' }}
129
+ {{- build_developer_message(developer_message) }}
130
+ {%- if tools -%}
131
+ {{- '\n\n' ~ '# Tools' ~ '\n' ~ 'You may call one or more tools to assist with the user query.\nHere are the tools available in JSONSchema format:' ~ '\n' }}
132
+ {{- '\n' ~ '<tools>' ~ '\n' }}
133
+ {{- render_tool_namespace("functions", tools) }}
134
+ {{- '</tools>' ~ '\n\n' }}
135
+ {{- 'To call tools, wrap all invocations in a single ' ~ toolcall_begin_token ~ toolcall_end_token ~ ' block. Parameter values containing nested objects or arrays are recursively expanded into XML elements. Example:\n' }}
136
+ {{- '\n' ~ toolcall_begin_token ~ '\n' }}
137
+ {{- ns_token + '<invoke name="tool-name-1">' }}
138
+ {{- ns_token + '<param-1>value-1' + ns_token + '</param-1>' }}
139
+ {{- ns_token + '<param-2>' }}
140
+ {{- ns_token + '<item>' }}
141
+ {{- ns_token + '<key-a>val-a' + ns_token + '</key-a>' }}
142
+ {{- ns_token + '<key-b>val-b' + ns_token + '</key-b>' }}
143
+ {{- ns_token + '</item>' }}
144
+ {{- ns_token + '</param-2>' }}
145
+ {{- ns_token + '</invoke>\n' }}
146
+ {{- ns_token + '<invoke name="tool-name-2">' }}
147
+ {{- ns_token + '<param-1>value-1' + ns_token + '</param-1>' }}
148
+ {{- ns_token + '</invoke>\n' }}
149
+ {{- toolcall_end_token }}
150
+ {%- endif -%}
151
+ {{- eos_token ~ '\n' }}
152
+
153
+ {#- Render messages -#}
154
+ {%- set last_tool_call = namespace(name=none) -%}
155
+ {%- for message in conversation_messages -%}
156
+ {%- if message.role == 'assistant' -%}
157
+ {{- bos_token ~ 'ai' ~ '\n' }}
158
+
159
+ {%- set reasoning_content = '' %}
160
+ {%- set content = visible_text(message.content) %}
161
+ {%- if message.reasoning_content is string %}
162
+ {%- set reasoning_content = message.reasoning_content %}
163
+ {%- else %}
164
+ {%- if think_end_token in content %}
165
+ {%- set reasoning_content = content.split(think_end_token)[0].strip('\n').split(think_begin_token)[-1].strip('\n') %}
166
+ {%- set content = content.split(think_end_token)[-1].strip('\n') %}
167
+ {%- endif %}
168
+ {%- endif %}
169
+
170
+ {%- if reasoning_content -%}
171
+ {#- Render thinking for every assistant turn (all-turn visible) -#}
172
+ {{- think_begin_token ~ reasoning_content ~ think_end_token }}
173
+ {%- else -%}
174
+ {#- No thinking rendered → prefix with think_end_token -#}
175
+ {{- think_end_token }}
176
+ {%- endif -%}
177
+
178
+ {%- if content -%}
179
+ {{- content }}
180
+ {%- endif -%}
181
+ {%- if message.tool_calls -%}
182
+ {{- toolcall_begin_token ~ '\n' }}
183
+
184
+ {%- for tool_call in message.tool_calls -%}
185
+ {%- if tool_call.function -%}
186
+ {%- set tool_call = tool_call.function -%}
187
+ {%- endif -%}
188
+ {{- ns_token + '<invoke name="' + tool_call.name + '">' }}
189
+ {%- set _args = tool_call.arguments -%}
190
+ {%- for k, v in _args.items() if v is not none %}
191
+ {{- ns_token + '<' + k + '>' -}}
192
+ {{- to_xml(v, ns_token) -}}
193
+ {{- ns_token + '</' + k + '>' }}
194
+ {%- endfor -%}
195
+ {{- ns_token + '</invoke>' ~ '\n' }}
196
+ {%- endfor -%}
197
+
198
+ {{- toolcall_end_token }}
199
+ {%- if message.tool_calls[-1].function -%}
200
+ {%- set last_tool_call.name = message.tool_calls[-1].function.name -%}
201
+ {%- else -%}
202
+ {%- set last_tool_call.name = message.tool_calls[-1].name -%}
203
+ {%- endif -%}
204
+ {%- else -%}
205
+ {%- set last_tool_call.name = none -%}
206
+ {%- endif -%}
207
+ {{- eos_token ~ '\n' }}
208
+
209
+ {%- elif message.role == 'tool' -%}
210
+ {%- if last_tool_call.name is none -%}
211
+ {{- raise_exception("Message has tool role, but there was no previous assistant message with a tool call!") }}
212
+ {%- endif -%}
213
+ {%- if loop.first or (conversation_messages[loop.index0 - 1].role != 'tool') -%}
214
+ {{- bos_token ~ 'tool' }}
215
+ {%- endif -%}
216
+ {{- '\n<response>' }}
217
+ {%- if message.content is string -%}
218
+ {{- message.content }}
219
+ {%- else -%}
220
+ {%- for tr in message.content -%}
221
+ {%- if tr is mapping and tr.type is defined and tr.type == 'image' -%}
222
+ {{- image_token }}
223
+ {%- elif tr is mapping and tr.type is defined and tr.type == 'video' -%}
224
+ {{- video_token }}
225
+ {%- elif tr is mapping and tr.type is defined and tr.type == 'frame' -%}
226
+ {{- frame_token }}
227
+ {%- else -%}
228
+ {{- tr.output if tr.output is defined else (tr.text if tr.type == 'text' and tr.text is defined else tr) }}
229
+ {%- endif -%}
230
+ {%- endfor -%}
231
+ {%- endif -%}
232
+ {{- '</response>' }}
233
+ {%- if loop.last or (conversation_messages[loop.index0 + 1].role != 'tool') -%}
234
+ {{- eos_token ~ '\n' -}}
235
+ {%- endif -%}
236
+
237
+ {%- elif message.role in ['system', 'developer'] -%}
238
+ {#- Mid-conversation system/developer messages keep their position and
239
+ map to the lower-priority M3 developer role. -#}
240
+ {{- bos_token ~ 'developer' ~ '\n' }}
241
+ {{- build_developer_message(message) }}
242
+ {{- eos_token ~ '\n' }}
243
+
244
+ {%- elif message.role == 'user' -%}
245
+ {{- bos_token ~ 'user' ~ '\n' }}
246
+ {{- visible_text(message.content) }}
247
+ {{- eos_token ~ '\n' }}
248
+ {%- endif -%}
249
+ {%- endfor -%}
250
+
251
+ {#- Generation prompt -#}
252
+ {%- if add_generation_prompt -%}
253
+ {{- bos_token ~ 'ai' ~ '\n' }}
254
+ {#- adaptive: no prefix, let model decide -#}
255
+ {%- endif -%}
dspark/merges.txt ADDED
The diff for this file is too large to render. See raw diff
 
dspark/special_tokens_map.json ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token": {
3
+ "content": "]~b]",
4
+ "lstrip": false,
5
+ "normalized": false,
6
+ "rstrip": false,
7
+ "single_word": false
8
+ },
9
+ "eos_token": {
10
+ "content": "[e~[",
11
+ "lstrip": false,
12
+ "normalized": false,
13
+ "rstrip": false,
14
+ "single_word": false
15
+ }
16
+ }
dspark/tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
dspark/tokenizer_config.json ADDED
@@ -0,0 +1,501 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_prefix_space": false,
3
+ "added_tokens_decoder": {
4
+ "200000": {
5
+ "content": "]!p~[",
6
+ "lstrip": false,
7
+ "normalized": false,
8
+ "rstrip": false,
9
+ "single_word": false,
10
+ "special": true
11
+ },
12
+ "200001": {
13
+ "content": "<fim_prefix>",
14
+ "lstrip": false,
15
+ "normalized": false,
16
+ "rstrip": false,
17
+ "single_word": false,
18
+ "special": true
19
+ },
20
+ "200002": {
21
+ "content": "<fim_middle>",
22
+ "lstrip": false,
23
+ "normalized": false,
24
+ "rstrip": false,
25
+ "single_word": false,
26
+ "special": true
27
+ },
28
+ "200003": {
29
+ "content": "<fim_suffix>",
30
+ "lstrip": false,
31
+ "normalized": false,
32
+ "rstrip": false,
33
+ "single_word": false,
34
+ "special": true
35
+ },
36
+ "200004": {
37
+ "content": "<fim_pad>",
38
+ "lstrip": false,
39
+ "normalized": false,
40
+ "rstrip": false,
41
+ "single_word": false,
42
+ "special": true
43
+ },
44
+ "200005": {
45
+ "content": "<reponame>",
46
+ "lstrip": false,
47
+ "normalized": false,
48
+ "rstrip": false,
49
+ "single_word": false,
50
+ "special": true
51
+ },
52
+ "200006": {
53
+ "content": "<filename>",
54
+ "lstrip": false,
55
+ "normalized": false,
56
+ "rstrip": false,
57
+ "single_word": false,
58
+ "special": true
59
+ },
60
+ "200007": {
61
+ "content": "<gh_stars>",
62
+ "lstrip": false,
63
+ "normalized": false,
64
+ "rstrip": false,
65
+ "single_word": false,
66
+ "special": true
67
+ },
68
+ "200008": {
69
+ "content": "<issue_start>",
70
+ "lstrip": false,
71
+ "normalized": false,
72
+ "rstrip": false,
73
+ "single_word": false,
74
+ "special": true
75
+ },
76
+ "200009": {
77
+ "content": "<issue_comment>",
78
+ "lstrip": false,
79
+ "normalized": false,
80
+ "rstrip": false,
81
+ "single_word": false,
82
+ "special": true
83
+ },
84
+ "200010": {
85
+ "content": "<issue_closed>",
86
+ "lstrip": false,
87
+ "normalized": false,
88
+ "rstrip": false,
89
+ "single_word": false,
90
+ "special": true
91
+ },
92
+ "200011": {
93
+ "content": "<jupyter_start>",
94
+ "lstrip": false,
95
+ "normalized": false,
96
+ "rstrip": false,
97
+ "single_word": false,
98
+ "special": true
99
+ },
100
+ "200012": {
101
+ "content": "<jupyter_text>",
102
+ "lstrip": false,
103
+ "normalized": false,
104
+ "rstrip": false,
105
+ "single_word": false,
106
+ "special": true
107
+ },
108
+ "200013": {
109
+ "content": "<jupyter_code>",
110
+ "lstrip": false,
111
+ "normalized": false,
112
+ "rstrip": false,
113
+ "single_word": false,
114
+ "special": true
115
+ },
116
+ "200014": {
117
+ "content": "<jupyter_output>",
118
+ "lstrip": false,
119
+ "normalized": false,
120
+ "rstrip": false,
121
+ "single_word": false,
122
+ "special": true
123
+ },
124
+ "200015": {
125
+ "content": "<empty_output>",
126
+ "lstrip": false,
127
+ "normalized": false,
128
+ "rstrip": false,
129
+ "single_word": false,
130
+ "special": true
131
+ },
132
+ "200016": {
133
+ "content": "<commit_before>",
134
+ "lstrip": false,
135
+ "normalized": false,
136
+ "rstrip": false,
137
+ "single_word": false,
138
+ "special": true
139
+ },
140
+ "200017": {
141
+ "content": "<commit_msg>",
142
+ "lstrip": false,
143
+ "normalized": false,
144
+ "rstrip": false,
145
+ "single_word": false,
146
+ "special": true
147
+ },
148
+ "200018": {
149
+ "content": "<commit_after>",
150
+ "lstrip": false,
151
+ "normalized": false,
152
+ "rstrip": false,
153
+ "single_word": false,
154
+ "special": true
155
+ },
156
+ "200019": {
157
+ "content": "]~b]",
158
+ "lstrip": false,
159
+ "normalized": false,
160
+ "rstrip": false,
161
+ "single_word": false,
162
+ "special": true
163
+ },
164
+ "200020": {
165
+ "content": "[e~[",
166
+ "lstrip": false,
167
+ "normalized": false,
168
+ "rstrip": false,
169
+ "single_word": false,
170
+ "special": true
171
+ },
172
+ "200021": {
173
+ "content": "]!d~[",
174
+ "lstrip": false,
175
+ "normalized": false,
176
+ "rstrip": false,
177
+ "single_word": false,
178
+ "special": true
179
+ },
180
+ "200022": {
181
+ "content": "<function_call>",
182
+ "lstrip": false,
183
+ "normalized": false,
184
+ "rstrip": false,
185
+ "single_word": false,
186
+ "special": true
187
+ },
188
+ "200023": {
189
+ "content": "<code_interpreter>",
190
+ "lstrip": false,
191
+ "normalized": false,
192
+ "rstrip": false,
193
+ "single_word": false,
194
+ "special": true
195
+ },
196
+ "200024": {
197
+ "content": "]<]speech[>[",
198
+ "lstrip": false,
199
+ "normalized": false,
200
+ "rstrip": false,
201
+ "single_word": false,
202
+ "special": true
203
+ },
204
+ "200025": {
205
+ "content": "]<]image[>[",
206
+ "lstrip": false,
207
+ "normalized": false,
208
+ "rstrip": false,
209
+ "single_word": false,
210
+ "special": true
211
+ },
212
+ "200026": {
213
+ "content": "]<]video[>[",
214
+ "lstrip": false,
215
+ "normalized": false,
216
+ "rstrip": false,
217
+ "single_word": false,
218
+ "special": true
219
+ },
220
+ "200027": {
221
+ "content": "]<]start of speech[>[",
222
+ "lstrip": false,
223
+ "normalized": false,
224
+ "rstrip": false,
225
+ "single_word": false,
226
+ "special": true
227
+ },
228
+ "200028": {
229
+ "content": "]<]end of speech[>[",
230
+ "lstrip": false,
231
+ "normalized": false,
232
+ "rstrip": false,
233
+ "single_word": false,
234
+ "special": true
235
+ },
236
+ "200029": {
237
+ "content": "]<]start of image[>[",
238
+ "lstrip": false,
239
+ "normalized": false,
240
+ "rstrip": false,
241
+ "single_word": false,
242
+ "special": true
243
+ },
244
+ "200030": {
245
+ "content": "]<]end of image[>[",
246
+ "lstrip": false,
247
+ "normalized": false,
248
+ "rstrip": false,
249
+ "single_word": false,
250
+ "special": true
251
+ },
252
+ "200031": {
253
+ "content": "]<]start of video[>[",
254
+ "lstrip": false,
255
+ "normalized": false,
256
+ "rstrip": false,
257
+ "single_word": false,
258
+ "special": true
259
+ },
260
+ "200032": {
261
+ "content": "]<]end of video[>[",
262
+ "lstrip": false,
263
+ "normalized": false,
264
+ "rstrip": false,
265
+ "single_word": false,
266
+ "special": true
267
+ },
268
+ "200033": {
269
+ "content": "]<]vision pad[>[",
270
+ "lstrip": false,
271
+ "normalized": false,
272
+ "rstrip": false,
273
+ "single_word": false,
274
+ "special": true
275
+ },
276
+ "200034": {
277
+ "content": "]~!b[",
278
+ "lstrip": false,
279
+ "normalized": false,
280
+ "rstrip": false,
281
+ "single_word": false,
282
+ "special": true
283
+ },
284
+ "200035": {
285
+ "content": "<jupyter_error>",
286
+ "lstrip": false,
287
+ "normalized": false,
288
+ "rstrip": false,
289
+ "single_word": false,
290
+ "special": true
291
+ },
292
+ "200036": {
293
+ "content": "<add_file>",
294
+ "lstrip": false,
295
+ "normalized": false,
296
+ "rstrip": false,
297
+ "single_word": false,
298
+ "special": true
299
+ },
300
+ "200037": {
301
+ "content": "<delete_file>",
302
+ "lstrip": false,
303
+ "normalized": false,
304
+ "rstrip": false,
305
+ "single_word": false,
306
+ "special": true
307
+ },
308
+ "200038": {
309
+ "content": "<rename_file>",
310
+ "lstrip": false,
311
+ "normalized": false,
312
+ "rstrip": false,
313
+ "single_word": false,
314
+ "special": true
315
+ },
316
+ "200039": {
317
+ "content": "<edit_file>",
318
+ "lstrip": false,
319
+ "normalized": false,
320
+ "rstrip": false,
321
+ "single_word": false,
322
+ "special": true
323
+ },
324
+ "200040": {
325
+ "content": "<commit_message>",
326
+ "lstrip": false,
327
+ "normalized": false,
328
+ "rstrip": false,
329
+ "single_word": false,
330
+ "special": true
331
+ },
332
+ "200041": {
333
+ "content": "<empty_source_file>",
334
+ "lstrip": false,
335
+ "normalized": false,
336
+ "rstrip": false,
337
+ "single_word": false,
338
+ "special": true
339
+ },
340
+ "200042": {
341
+ "content": "<repo_struct>",
342
+ "lstrip": false,
343
+ "normalized": false,
344
+ "rstrip": false,
345
+ "single_word": false,
346
+ "special": true
347
+ },
348
+ "200043": {
349
+ "content": "<code_context>",
350
+ "lstrip": false,
351
+ "normalized": false,
352
+ "rstrip": false,
353
+ "single_word": false,
354
+ "special": true
355
+ },
356
+ "200044": {
357
+ "content": "<file_content>",
358
+ "lstrip": false,
359
+ "normalized": false,
360
+ "rstrip": false,
361
+ "single_word": false,
362
+ "special": true
363
+ },
364
+ "200045": {
365
+ "content": "<source_files>",
366
+ "lstrip": false,
367
+ "normalized": false,
368
+ "rstrip": false,
369
+ "single_word": false,
370
+ "special": true
371
+ },
372
+ "200046": {
373
+ "content": "<pr_start>",
374
+ "lstrip": false,
375
+ "normalized": false,
376
+ "rstrip": false,
377
+ "single_word": false,
378
+ "special": true
379
+ },
380
+ "200047": {
381
+ "content": "<review_comment>",
382
+ "lstrip": false,
383
+ "normalized": false,
384
+ "rstrip": false,
385
+ "single_word": false,
386
+ "special": true
387
+ },
388
+ "200048": {
389
+ "content": "<filepath>",
390
+ "lstrip": false,
391
+ "normalized": false,
392
+ "rstrip": false,
393
+ "single_word": false,
394
+ "special": true
395
+ },
396
+ "200049": {
397
+ "content": "<file_sep>",
398
+ "lstrip": false,
399
+ "normalized": false,
400
+ "rstrip": false,
401
+ "single_word": false,
402
+ "special": true
403
+ },
404
+ "200050": {
405
+ "content": "<think>",
406
+ "lstrip": false,
407
+ "normalized": false,
408
+ "rstrip": false,
409
+ "single_word": false,
410
+ "special": false
411
+ },
412
+ "200051": {
413
+ "content": "</think>",
414
+ "lstrip": false,
415
+ "normalized": false,
416
+ "rstrip": false,
417
+ "single_word": false,
418
+ "special": false
419
+ },
420
+ "200052": {
421
+ "content": "<tool_call>",
422
+ "lstrip": false,
423
+ "normalized": false,
424
+ "rstrip": false,
425
+ "single_word": false,
426
+ "special": false
427
+ },
428
+ "200053": {
429
+ "content": "</tool_call>",
430
+ "lstrip": false,
431
+ "normalized": false,
432
+ "rstrip": false,
433
+ "single_word": false,
434
+ "special": false
435
+ },
436
+ "200054": {
437
+ "content": "]<]frame[>[",
438
+ "lstrip": false,
439
+ "normalized": false,
440
+ "rstrip": false,
441
+ "single_word": false,
442
+ "special": true
443
+ },
444
+ "200055": {
445
+ "content": "]<]start of frame[>[",
446
+ "lstrip": false,
447
+ "normalized": false,
448
+ "rstrip": false,
449
+ "single_word": false,
450
+ "special": true
451
+ },
452
+ "200056": {
453
+ "content": "]<]end of frame[>[",
454
+ "lstrip": false,
455
+ "normalized": false,
456
+ "rstrip": false,
457
+ "single_word": false,
458
+ "special": true
459
+ },
460
+ "200057": {
461
+ "content": "<|content_altered_placeholder|>",
462
+ "lstrip": false,
463
+ "normalized": false,
464
+ "rstrip": false,
465
+ "single_word": false,
466
+ "special": true
467
+ },
468
+ "200058": {
469
+ "content": "]<]minimax[>[",
470
+ "lstrip": false,
471
+ "normalized": false,
472
+ "rstrip": false,
473
+ "single_word": false,
474
+ "special": false
475
+ },
476
+ "200059": {
477
+ "content": "<mm:think>",
478
+ "lstrip": false,
479
+ "normalized": false,
480
+ "rstrip": false,
481
+ "single_word": false,
482
+ "special": false
483
+ },
484
+ "200060": {
485
+ "content": "</mm:think>",
486
+ "lstrip": false,
487
+ "normalized": false,
488
+ "rstrip": false,
489
+ "single_word": false,
490
+ "special": false
491
+ }
492
+ },
493
+ "bos_token": "]~b]",
494
+ "clean_up_tokenization_spaces": false,
495
+ "eos_token": "[e~[",
496
+ "pad_token": "]!p~[",
497
+ "model_max_length": 40960000,
498
+ "tokenizer_class": "PreTrainedTokenizerFast",
499
+ "unk_token": "[e~["
500
+ }
501
+
dspark/vocab.json ADDED
The diff for this file is too large to render. See raw diff