unsloth/Kimi-K2.7-Code
21124
1{2 "added_tokens_decoder": {3 "163584": {4 "content": "[BOS]",5 "lstrip": false,6 "normalized": false,7 "rstrip": false,8 "single_word": false,9 "special": true10 },11 "163585": {12 "content": "[EOS]",13 "lstrip": false,14 "normalized": false,15 "rstrip": false,16 "single_word": false,17 "special": true18 },19 "163586": {20 "content": "<|im_end|>",21 "lstrip": false,22 "normalized": false,23 "rstrip": false,24 "single_word": false,25 "special": true26 },27 "163587": {28 "content": "<|im_user|>",29 "lstrip": false,30 "normalized": false,31 "rstrip": false,32 "single_word": false,33 "special": true34 },35 "163588": {36 "content": "<|im_assistant|>",37 "lstrip": false,38 "normalized": false,39 "rstrip": false,40 "single_word": false,41 "special": true42 },43 "163590": {44 "content": "<|start_header_id|>",45 "lstrip": false,46 "normalized": false,47 "rstrip": false,48 "single_word": false,49 "special": true50 },51 "163591": {52 "content": "<|end_header_id|>",53 "lstrip": false,54 "normalized": false,55 "rstrip": false,56 "single_word": false,57 "special": true58 },59 "163593": {60 "content": "[EOT]",61 "lstrip": false,62 "normalized": false,63 "rstrip": false,64 "single_word": false,65 "special": true66 },67 "163594": {68 "content": "<|im_system|>",69 "lstrip": false,70 "normalized": false,71 "rstrip": false,72 "single_word": false,73 "special": true74 },75 "163595": {76 "content": "<|tool_calls_section_begin|>",77 "lstrip": false,78 "normalized": false,79 "rstrip": false,80 "single_word": false,81 "special": false82 },83 "163596": {84 "content": "<|tool_calls_section_end|>",85 "lstrip": false,86 "normalized": false,87 "rstrip": false,88 "single_word": false,89 "special": false90 },91 "163597": {92 "content": "<|tool_call_begin|>",93 "lstrip": false,94 "normalized": false,95 "rstrip": false,96 "single_word": false,97 "special": false98 },99 "163598": {100 "content": "<|tool_call_argument_begin|>",101 "lstrip": false,102 "normalized": false,103 "rstrip": false,104 "single_word": false,105 "special": false106 },107 "163599": {108 "content": "<|tool_call_end|>",109 "lstrip": false,110 "normalized": false,111 "rstrip": false,112 "single_word": false,113 "special": false114 },115 "163601": {116 "content": "<|im_middle|>",117 "lstrip": false,118 "normalized": false,119 "rstrip": false,120 "single_word": false,121 "special": true122 },123 "163602": {124 "content": "<|media_begin|>",125 "lstrip": false,126 "normalized": false,127 "rstrip": false,128 "single_word": false,129 "special": true130 },131 "163603": {132 "content": "<|media_content|>",133 "lstrip": false,134 "normalized": false,135 "rstrip": false,136 "single_word": false,137 "special": true138 },139 "163604": {140 "content": "<|media_end|>",141 "lstrip": false,142 "normalized": false,143 "rstrip": false,144 "single_word": false,145 "special": true146 },147 "163605": {148 "content": "<|media_pad|>",149 "lstrip": false,150 "normalized": false,151 "rstrip": false,152 "single_word": false,153 "special": true154 },155 "163606": {156 "content": "<think>",157 "lstrip": false,158 "normalized": false,159 "rstrip": false,160 "single_word": false,161 "special": false162 },163 "163607": {164 "content": "</think>",165 "lstrip": false,166 "normalized": false,167 "rstrip": false,168 "single_word": false,169 "special": false170 },171 "163838": {172 "content": "[UNK]",173 "lstrip": false,174 "normalized": false,175 "rstrip": false,176 "single_word": false,177 "special": true178 },179 "163839": {180 "content": "[PAD]",181 "lstrip": false,182 "normalized": false,183 "rstrip": false,184 "single_word": false,185 "special": true186 }187 },188 "auto_map": {189 "AutoProcessor": "kimi_k25_processor.KimiK25Processor",190 "AutoTokenizer": [191 "tokenization_kimi.TikTokenTokenizer",192 null193 ]194 },195 "backend": "custom",196 "bos_token": "[BOS]",197 "clean_up_tokenization_spaces": false,198 "eos_token": "[EOS]",199 "extra_special_tokens": [200 "<|im_end|>",201 "<|im_user|>",202 "<|im_assistant|>",203 "<|start_header_id|>",204 "<|end_header_id|>",205 "[EOT]",206 "<|im_system|>",207 "<|im_middle|>",208 "<|media_begin|>",209 "<|media_content|>",210 "<|media_end|>",211 "<|media_pad|>"212 ],213 "is_local": true,214 "local_files_only": false,215 "model_max_length": 262144,216 "pad_token": "[PAD]",217 "padding_side": "left",218 "processor_class": "KimiK25Processor",219 "tokenizer_class": "TikTokenTokenizer",220 "unk_token": "[UNK]",221 "chat_template": "{%- macro render_content(msg) -%}\n {%- set c = msg.get('content') -%}\n {%- if c is string -%}\n {{ c }}\n {%- elif c is not none -%}\n {% for content in c -%}\n {% if content['type'] == 'image' or content['type'] == 'image_url' -%}\n <|media_begin|>image<|media_content|><|media_pad|><|media_end|>\n {% elif content['type'] == 'video' or content['type']== 'video_url'-%}\n <|kimi_k25_video_placeholder|>\n {% else -%}\n {{ content['text'] }}\n {%- endif -%}\n {%- endfor -%}\n {%- endif -%}\n{%- endmacro -%}\n\n{% macro set_roles(message) -%}\n {%- set role_name = message.get('name') or message['role'] -%}\n {%- if message['role'] == 'user' -%}\n <|im_user|>{{role_name}}<|im_middle|>\n {%- elif message['role'] == 'assistant' -%}\n <|im_assistant|>{{role_name}}<|im_middle|>\n {%- else -%}\n <|im_system|>{{role_name}}<|im_middle|>\n {%- endif -%}\n{%- endmacro -%}\n\n\n{%- macro render_toolcalls(message) -%}\n <|tool_calls_section_begin|>\n {%- for tool_call in message['tool_calls'] -%}\n {%- set formatted_id = tool_call['id'] -%}\n <|tool_call_begin|>{{ formatted_id }}<|tool_call_argument_begin|>{% if tool_call['function']['arguments'] is string %}{{ tool_call['function']['arguments'] }}{% else %}{{ tool_call['function']['arguments'] | tojson }}{% endif %}<|tool_call_end|>\n {%- endfor -%}\n <|tool_calls_section_end|>\n{%- endmacro -%}\n\n\n{%- set preserve_thinking = preserve_thinking | default(true) -%}\n{# Find last non-tool-call assistant message. If preserve_thinking, keep -1 so hist is empty and all msgs use suffix (retain reasoning). #}\n{%- set ns = namespace(last_non_tool_call_assistant_msg=-1) -%}\n{%- if not preserve_thinking -%}\n{%- for idx in range(messages|length-1, -1, -1) -%}\n {%- if messages[idx]['role'] == 'assistant' and not messages[idx].get('tool_calls') -%}\n {%- set ns.last_non_tool_call_assistant_msg = idx -%}\n {%- break -%}\n {%- endif -%}\n{%- endfor -%}\n{%- endif -%}\n\n{# split all messages into history & suffix, reasoning_content in suffix should be reserved.#}\n{%- set hist_msgs = messages[:ns.last_non_tool_call_assistant_msg+1] -%}\n{%- set suffix_msgs = messages[ns.last_non_tool_call_assistant_msg+1:] -%}\n\n{%- if tools -%}\n {%- if tools_ts_str -%}\n <|im_system|>tool_declare<|im_middle|>{{ tools_ts_str }}<|im_end|>\n {%- else -%}\n <|im_system|>tool_declare<|im_middle|>{{ tools | tojson(separators=(',', ':')) }}<|im_end|>\n {%- endif -%}\n{%- endif -%}\n\n \n{%- for message in hist_msgs -%}\n {{set_roles(message)}}\n {%- if message['role'] == 'assistant' -%}\n <think></think>{{render_content(message)}}\n {%- if message.get('tool_calls') -%}\n {{render_toolcalls(message)}}\n {%- endif -%}\n {%- elif message['role'] == 'tool' -%}\n {%- set tool_call_id = message.tool_call_id -%}\n ## Return of {{ tool_call_id }}\n{{render_content(message)}}\n {%- elif message['content'] is not none -%}\n {{render_content(message)}}\n {%- endif -%}\n <|im_end|>\n{%- endfor -%}\n\n{%- for message in suffix_msgs -%}\n {{set_roles(message)}}\n {%- if message['role'] == 'assistant' -%}\n {%- if thinking is defined and thinking is false and preserve_thinking is false -%}\n <think></think>{{render_content(message)}}\n {%- else -%}\n {%- set rc = message.get('reasoning', message.get('reasoning_content', '')) -%}\n <think>{{rc}}</think>{{render_content(message)}}\n {%- endif -%}\n {%- if message.get('tool_calls') -%}\n {{render_toolcalls(message)}}\n {%- endif -%}\n {%- elif message['role'] == 'tool' -%}\n {%- set tool_call_id = message.tool_call_id -%}\n ## Return of {{ tool_call_id }}\n{{render_content(message)}}\n {%- elif message['content'] is not none -%}\n {{render_content(message)}}\n {%- endif -%}\n <|im_end|>\n{%- endfor -%}\n\n\n{%- if add_generation_prompt -%}\n <|im_assistant|>assistant<|im_middle|>\n {%- if thinking is defined and thinking is false -%}\n <think></think>\n {%- else -%}\n <think>\n {%- endif -%}\n{%- endif -%}"222}