shailesh83 commited on
Commit
8cd6084
·
verified ·
1 Parent(s): c012b38

Upload folder using huggingface_hub

Browse files
added_tokens.json ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "</think>": 151668,
3
+ "</tool_call>": 151658,
4
+ "</tool_response>": 151666,
5
+ "<think>": 151667,
6
+ "<tool_call>": 151657,
7
+ "<tool_response>": 151665,
8
+ "<|box_end|>": 151649,
9
+ "<|box_start|>": 151648,
10
+ "<|endoftext|>": 151643,
11
+ "<|file_sep|>": 151664,
12
+ "<|fim_middle|>": 151660,
13
+ "<|fim_pad|>": 151662,
14
+ "<|fim_prefix|>": 151659,
15
+ "<|fim_suffix|>": 151661,
16
+ "<|im_end|>": 151645,
17
+ "<|im_start|>": 151644,
18
+ "<|image_pad|>": 151655,
19
+ "<|object_ref_end|>": 151647,
20
+ "<|object_ref_start|>": 151646,
21
+ "<|quad_end|>": 151651,
22
+ "<|quad_start|>": 151650,
23
+ "<|repo_name|>": 151663,
24
+ "<|video_pad|>": 151656,
25
+ "<|vision_end|>": 151653,
26
+ "<|vision_pad|>": 151654,
27
+ "<|vision_start|>": 151652
28
+ }
chat_template.jinja ADDED
@@ -0,0 +1,118 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {% macro render_extra_keys(json_dict, handled_keys) %}
2
+ {%- if json_dict is mapping %}
3
+ {%- for json_key in json_dict if json_key not in handled_keys %}
4
+ {%- if json_dict[json_key] is mapping or (json_dict[json_key] is sequence and json_dict[json_key] is not string) %}
5
+ {{- '\n<' ~ json_key ~ '>' ~ (json_dict[json_key] | tojson | safe) ~ '</' ~ json_key ~ '>' }}
6
+ {%- else %}
7
+ {{-'\n<' ~ json_key ~ '>' ~ (json_dict[json_key] | string) ~ '</' ~ json_key ~ '>' }}
8
+ {%- endif %}
9
+ {%- endfor %}
10
+ {%- endif %}
11
+ {% endmacro %}
12
+
13
+ {%- if messages[0]["role"] == "system" %}
14
+ {%- set system_message = messages[0]["content"] %}
15
+ {%- set loop_messages = messages[1:] %}
16
+ {%- else %}
17
+ {%- set loop_messages = messages %}
18
+ {%- endif %}
19
+
20
+ {%- if not tools is defined %}
21
+ {%- set tools = [] %}
22
+ {%- endif %}
23
+
24
+ {%- if system_message is defined %}
25
+ {{- "<|im_start|>system\n" + system_message }}
26
+ {%- else %}
27
+ {%- if tools is iterable and tools | length > 0 %}
28
+ {{- "<|im_start|>system\nYou are Qwen, a helpful AI assistant that can interact with a computer to solve tasks." }}
29
+ {%- endif %}
30
+ {%- endif %}
31
+ {%- if tools is iterable and tools | length > 0 %}
32
+ {{- "\n\n# Tools\n\nYou have access to the following functions:\n\n" }}
33
+ {{- "<tools>" }}
34
+ {%- for tool in tools %}
35
+ {%- if tool.function is defined %}
36
+ {%- set tool = tool.function %}
37
+ {%- endif %}
38
+ {{- "\n<function>\n<name>" ~ tool.name ~ "</name>" }}
39
+ {%- if tool.description is defined %}
40
+ {{- '\n<description>' ~ (tool.description | trim) ~ '</description>' }}
41
+ {%- endif %}
42
+ {{- '\n<parameters>' }}
43
+ {%- if tool.parameters is defined and tool.parameters is mapping and tool.parameters.properties is defined and tool.parameters.properties is mapping %}
44
+ {%- for param_name, param_fields in tool.parameters.properties|items %}
45
+ {{- '\n<parameter>' }}
46
+ {{- '\n<name>' ~ param_name ~ '</name>' }}
47
+ {%- if param_fields.type is defined %}
48
+ {{- '\n<type>' ~ (param_fields.type | string) ~ '</type>' }}
49
+ {%- endif %}
50
+ {%- if param_fields.description is defined %}
51
+ {{- '\n<description>' ~ (param_fields.description | trim) ~ '</description>' }}
52
+ {%- endif %}
53
+ {%- set handled_keys = ['name', 'type', 'description'] %}
54
+ {{- render_extra_keys(param_fields, handled_keys) }}
55
+ {{- '\n</parameter>' }}
56
+ {%- endfor %}
57
+ {%- endif %}
58
+ {% set handled_keys = ['type', 'properties'] %}
59
+ {{- render_extra_keys(tool.parameters, handled_keys) }}
60
+ {{- '\n</parameters>' }}
61
+ {%- set handled_keys = ['type', 'name', 'description', 'parameters'] %}
62
+ {{- render_extra_keys(tool, handled_keys) }}
63
+ {{- '\n</function>' }}
64
+ {%- endfor %}
65
+ {{- "\n</tools>" }}
66
+ {{- '\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>' }}
67
+ {%- endif %}
68
+ {%- if system_message is defined %}
69
+ {{- '<|im_end|>\n' }}
70
+ {%- else %}
71
+ {%- if tools is iterable and tools | length > 0 %}
72
+ {{- '<|im_end|>\n' }}
73
+ {%- endif %}
74
+ {%- endif %}
75
+ {%- for message in loop_messages %}
76
+ {%- if message.role == "assistant" and message.tool_calls is defined and message.tool_calls is iterable and message.tool_calls | length > 0 %}
77
+ {{- '<|im_start|>' + message.role }}
78
+ {%- if message.content is defined and message.content is string and message.content | trim | length > 0 %}
79
+ {{- '\n' + message.content | trim + '\n' }}
80
+ {%- endif %}
81
+ {%- for tool_call in message.tool_calls %}
82
+ {%- if tool_call.function is defined %}
83
+ {%- set tool_call = tool_call.function %}
84
+ {%- endif %}
85
+ {{- '\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
86
+ {%- if tool_call.arguments is defined %}
87
+ {%- set arguments = tool_call.arguments | from_json %}
88
+ {%- for args_name, args_value in arguments|items %}
89
+ {{- '<parameter=' + args_name + '>\n' }}
90
+ {%- 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 %}
91
+ {{- args_value }}
92
+ {{- '\n</parameter>\n' }}
93
+ {%- endfor %}
94
+ {%- endif %}
95
+ {{- '</function>\n</tool_call>' }}
96
+ {%- endfor %}
97
+ {{- '<|im_end|>\n' }}
98
+ {%- elif message.role == "user" or message.role == "system" or message.role == "assistant" %}
99
+ {{- '<|im_start|>' + message.role + '\n' + message.content + '<|im_end|>' + '\n' }}
100
+ {%- elif message.role == "tool" %}
101
+ {%- if loop.previtem and loop.previtem.role != "tool" %}
102
+ {{- '<|im_start|>user\n' }}
103
+ {%- endif %}
104
+ {{- '<tool_response>\n' }}
105
+ {{- message.content }}
106
+ {{- '\n</tool_response>\n' }}
107
+ {%- if not loop.last and loop.nextitem.role != "tool" %}
108
+ {{- '<|im_end|>\n' }}
109
+ {%- elif loop.last %}
110
+ {{- '<|im_end|>\n' }}
111
+ {%- endif %}
112
+ {%- else %}
113
+ {{- '<|im_start|>' + message.role + '\n' + message.content + '<|im_end|>\n' }}
114
+ {%- endif %}
115
+ {%- endfor %}
116
+ {%- if add_generation_prompt %}
117
+ {{- '<|im_start|>assistant\n' }}
118
+ {%- endif %}
config.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "Qwen3MoeForCausalLM"
4
+ ],
5
+ "attention_bias": false,
6
+ "attention_dropout": 0.0,
7
+ "bos_token_id": 151643,
8
+ "decoder_sparse_step": 1,
9
+ "dtype": "bfloat16",
10
+ "eos_token_id": 151645,
11
+ "head_dim": 128,
12
+ "hidden_act": "silu",
13
+ "hidden_size": 2048,
14
+ "initializer_range": 0.02,
15
+ "intermediate_size": 6144,
16
+ "max_position_embeddings": 262144,
17
+ "max_window_layers": 48,
18
+ "mlp_only_layers": [],
19
+ "model_type": "qwen3_moe",
20
+ "moe_intermediate_size": 768,
21
+ "norm_topk_prob": true,
22
+ "num_attention_heads": 32,
23
+ "num_experts": 128,
24
+ "num_experts_per_tok": 8,
25
+ "num_hidden_layers": 48,
26
+ "num_key_value_heads": 4,
27
+ "output_router_logits": false,
28
+ "rms_norm_eps": 1e-06,
29
+ "rope_scaling": null,
30
+ "rope_theta": 10000000,
31
+ "router_aux_loss_coef": 0.001,
32
+ "sliding_window": null,
33
+ "tie_word_embeddings": false,
34
+ "transformers_version": "4.57.6",
35
+ "use_cache": true,
36
+ "use_sliding_window": false,
37
+ "vocab_size": 151936
38
+ }
generation_config.json ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "do_sample": true,
3
+ "eos_token_id": [
4
+ 151645,
5
+ 151643
6
+ ],
7
+ "pad_token_id": 151643,
8
+ "repetition_penalty": 1.05,
9
+ "temperature": 0.7,
10
+ "top_k": 20,
11
+ "top_p": 0.8,
12
+ "transformers_version": "4.57.6"
13
+ }
graph.pbtxt ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ input_stream: "HTTP_REQUEST_PAYLOAD:input"
2
+ output_stream: "HTTP_RESPONSE_PAYLOAD:output"
3
+
4
+ node: {
5
+ name: "LLMExecutor"
6
+ calculator: "HttpLLMCalculator"
7
+ input_stream: "LOOPBACK:loopback"
8
+ input_stream: "HTTP_REQUEST_PAYLOAD:input"
9
+ input_side_packet: "LLM_NODE_RESOURCES:llm"
10
+ output_stream: "LOOPBACK:loopback"
11
+ output_stream: "HTTP_RESPONSE_PAYLOAD:output"
12
+ input_stream_info: {
13
+ tag_index: 'LOOPBACK:0',
14
+ back_edge: true
15
+ }
16
+ node_options: {
17
+ [type.googleapis.com / mediapipe.LLMCalculatorOptions]: {
18
+ models_path: "./",
19
+ enable_prefix_caching: true,
20
+ cache_size: 0,
21
+ max_num_seqs: 256,
22
+ device: "GPU",
23
+ tool_parser: "qwen3coder",
24
+ }
25
+ }
26
+ input_stream_handler {
27
+ input_stream_handler: "SyncSetInputStreamHandler",
28
+ options {
29
+ [mediapipe.SyncSetInputStreamHandlerOptions.ext] {
30
+ sync_set {
31
+ tag_index: "LOOPBACK:0"
32
+ }
33
+ }
34
+ }
35
+ }
36
+ }
merges.txt ADDED
The diff for this file is too large to render. See raw diff
 
openvino_config.json ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "dtype": "",
3
+ "input_info": null,
4
+ "optimum_version": "2.1.0.dev0",
5
+ "output_attentions": false,
6
+ "quantization_config": {
7
+ "_dataset_kwargs": {},
8
+ "dataset": null,
9
+ "default_config": {
10
+ "quant_method": "default"
11
+ },
12
+ "ignored_scope": null,
13
+ "num_samples": null,
14
+ "processor": null,
15
+ "quantization_configs": {},
16
+ "tokenizer": "Qwen/Qwen3-Coder-30B-A3B-Instruct"
17
+ },
18
+ "save_onnx_model": false,
19
+ "transformers_version": "4.57.6"
20
+ }
openvino_detokenizer.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d73093f72c80ebcaffb76a192727170ecd3c6a06c4df52df0e76b3f70ad9d7f7
3
+ size 2189717
openvino_detokenizer.xml ADDED
@@ -0,0 +1,221 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <net name="detokenizer" version="11">
3
+ <layers>
4
+ <layer id="0" name="Parameter_7759466" type="Parameter" version="opset1">
5
+ <data shape="?,?" element_type="i64" />
6
+ <output>
7
+ <port id="0" precision="I64" names="Parameter_7759466">
8
+ <dim>-1</dim>
9
+ <dim>-1</dim>
10
+ </port>
11
+ </output>
12
+ </layer>
13
+ <layer id="1" name="Convert_7759665" type="Convert" version="opset1">
14
+ <data destination_type="i32" />
15
+ <input>
16
+ <port id="0" precision="I64">
17
+ <dim>-1</dim>
18
+ <dim>-1</dim>
19
+ </port>
20
+ </input>
21
+ <output>
22
+ <port id="1" precision="I32">
23
+ <dim>-1</dim>
24
+ <dim>-1</dim>
25
+ </port>
26
+ </output>
27
+ </layer>
28
+ <layer id="2" name="Constant_7759468" type="Const" version="opset1">
29
+ <data element_type="i32" shape="151669" offset="0" size="606676" />
30
+ <output>
31
+ <port id="0" precision="I32">
32
+ <dim>151669</dim>
33
+ </port>
34
+ </output>
35
+ </layer>
36
+ <layer id="3" name="Constant_7759470" type="Const" version="opset1">
37
+ <data element_type="i32" shape="151669" offset="606676" size="606676" />
38
+ <output>
39
+ <port id="0" precision="I32">
40
+ <dim>151669</dim>
41
+ </port>
42
+ </output>
43
+ </layer>
44
+ <layer id="4" name="Constant_7759472" type="Const" version="opset1">
45
+ <data element_type="u8" shape="976309" offset="1213352" size="976309" />
46
+ <output>
47
+ <port id="0" precision="U8">
48
+ <dim>976309</dim>
49
+ </port>
50
+ </output>
51
+ </layer>
52
+ <layer id="5" name="Slice_7759477" type="Const" version="opset1">
53
+ <data element_type="i32" shape="14" offset="2189661" size="56" />
54
+ <output>
55
+ <port id="0" precision="I32">
56
+ <dim>14</dim>
57
+ </port>
58
+ </output>
59
+ </layer>
60
+ <layer id="6" name="VocabDecoder_7759479" type="VocabDecoder" version="extension">
61
+ <data skip_tokens="" />
62
+ <input>
63
+ <port id="0" precision="I32">
64
+ <dim>-1</dim>
65
+ <dim>-1</dim>
66
+ </port>
67
+ <port id="1" precision="I32">
68
+ <dim>151669</dim>
69
+ </port>
70
+ <port id="2" precision="I32">
71
+ <dim>151669</dim>
72
+ </port>
73
+ <port id="3" precision="U8">
74
+ <dim>976309</dim>
75
+ </port>
76
+ <port id="4" precision="I32">
77
+ <dim>14</dim>
78
+ </port>
79
+ </input>
80
+ <output>
81
+ <port id="5" precision="I32">
82
+ <dim>-1</dim>
83
+ </port>
84
+ <port id="6" precision="I32">
85
+ <dim>-1</dim>
86
+ </port>
87
+ <port id="7" precision="I32">
88
+ <dim>-1</dim>
89
+ </port>
90
+ <port id="8" precision="I32">
91
+ <dim>-1</dim>
92
+ </port>
93
+ <port id="9" precision="U8">
94
+ <dim>-1</dim>
95
+ </port>
96
+ </output>
97
+ </layer>
98
+ <layer id="7" name="FuzeRagged_7759480" type="FuzeRagged" version="extension">
99
+ <input>
100
+ <port id="0" precision="I32">
101
+ <dim>-1</dim>
102
+ </port>
103
+ <port id="1" precision="I32">
104
+ <dim>-1</dim>
105
+ </port>
106
+ <port id="2" precision="I32">
107
+ <dim>-1</dim>
108
+ </port>
109
+ <port id="3" precision="I32">
110
+ <dim>-1</dim>
111
+ </port>
112
+ </input>
113
+ <output>
114
+ <port id="4" precision="I32">
115
+ <dim>-1</dim>
116
+ </port>
117
+ <port id="5" precision="I32">
118
+ <dim>-1</dim>
119
+ </port>
120
+ </output>
121
+ </layer>
122
+ <layer id="8" name="UTF8Validate_7759481" type="UTF8Validate" version="extension">
123
+ <data replace_mode="true" />
124
+ <input>
125
+ <port id="0" precision="I32">
126
+ <dim>-1</dim>
127
+ </port>
128
+ <port id="1" precision="I32">
129
+ <dim>-1</dim>
130
+ </port>
131
+ <port id="2" precision="U8">
132
+ <dim>-1</dim>
133
+ </port>
134
+ </input>
135
+ <output>
136
+ <port id="3" precision="I32">
137
+ <dim>-1</dim>
138
+ </port>
139
+ <port id="4" precision="I32">
140
+ <dim>-1</dim>
141
+ </port>
142
+ <port id="5" precision="U8">
143
+ <dim>-1</dim>
144
+ </port>
145
+ </output>
146
+ </layer>
147
+ <layer id="9" name="StringTensorPack_7759482" type="StringTensorPack" version="opset15">
148
+ <input>
149
+ <port id="0" precision="I32">
150
+ <dim>-1</dim>
151
+ </port>
152
+ <port id="1" precision="I32">
153
+ <dim>-1</dim>
154
+ </port>
155
+ <port id="2" precision="U8">
156
+ <dim>-1</dim>
157
+ </port>
158
+ </input>
159
+ <output>
160
+ <port id="3" precision="STRING" names="Result_7759483,string_output">
161
+ <dim>-1</dim>
162
+ </port>
163
+ </output>
164
+ </layer>
165
+ <layer id="10" name="Result_7759483" type="Result" version="opset1" output_names="Result_7759483,string_output">
166
+ <input>
167
+ <port id="0" precision="STRING">
168
+ <dim>-1</dim>
169
+ </port>
170
+ </input>
171
+ </layer>
172
+ </layers>
173
+ <edges>
174
+ <edge from-layer="0" from-port="0" to-layer="1" to-port="0" />
175
+ <edge from-layer="1" from-port="1" to-layer="6" to-port="0" />
176
+ <edge from-layer="2" from-port="0" to-layer="6" to-port="1" />
177
+ <edge from-layer="3" from-port="0" to-layer="6" to-port="2" />
178
+ <edge from-layer="4" from-port="0" to-layer="6" to-port="3" />
179
+ <edge from-layer="5" from-port="0" to-layer="6" to-port="4" />
180
+ <edge from-layer="6" from-port="7" to-layer="7" to-port="2" />
181
+ <edge from-layer="6" from-port="9" to-layer="8" to-port="2" />
182
+ <edge from-layer="6" from-port="8" to-layer="7" to-port="3" />
183
+ <edge from-layer="6" from-port="6" to-layer="7" to-port="1" />
184
+ <edge from-layer="6" from-port="5" to-layer="7" to-port="0" />
185
+ <edge from-layer="7" from-port="4" to-layer="8" to-port="0" />
186
+ <edge from-layer="7" from-port="5" to-layer="8" to-port="1" />
187
+ <edge from-layer="8" from-port="3" to-layer="9" to-port="0" />
188
+ <edge from-layer="8" from-port="4" to-layer="9" to-port="1" />
189
+ <edge from-layer="8" from-port="5" to-layer="9" to-port="2" />
190
+ <edge from-layer="9" from-port="3" to-layer="10" to-port="0" />
191
+ </edges>
192
+ <rt_info>
193
+ <add_attention_mask value="True" />
194
+ <add_prefix_space />
195
+ <add_special_tokens value="True" />
196
+ <chat_template value="{% macro render_extra_keys(json_dict, handled_keys) %}&#10; {%- if json_dict is mapping %}&#10; {%- for json_key in json_dict if json_key not in handled_keys %}&#10; {%- if json_dict[json_key] is mapping or (json_dict[json_key] is sequence and json_dict[json_key] is not string) %}&#10; {{- '\n&lt;' ~ json_key ~ '>' ~ (json_dict[json_key] | tojson | safe) ~ '&lt;/' ~ json_key ~ '>' }}&#10; {%- else %}&#10; {{-'\n&lt;' ~ json_key ~ '>' ~ (json_dict[json_key] | string) ~ '&lt;/' ~ json_key ~ '>' }}&#10; {%- endif %}&#10; {%- endfor %}&#10; {%- endif %}&#10;{% endmacro %}&#10;&#10;{%- if messages[0][&quot;role&quot;] == &quot;system&quot; %}&#10; {%- set system_message = messages[0][&quot;content&quot;] %}&#10; {%- set loop_messages = messages[1:] %}&#10;{%- else %}&#10; {%- set loop_messages = messages %}&#10;{%- endif %}&#10;&#10;{%- if not tools is defined %}&#10; {%- set tools = [] %}&#10;{%- endif %}&#10;&#10;{%- if system_message is defined %}&#10; {{- &quot;&lt;|im_start|>system\n&quot; + system_message }}&#10;{%- else %}&#10; {%- if tools is iterable and tools | length > 0 %}&#10; {{- &quot;&lt;|im_start|>system\nYou are Qwen, a helpful AI assistant that can interact with a computer to solve tasks.&quot; }}&#10; {%- endif %}&#10;{%- endif %}&#10;{%- if tools is iterable and tools | length > 0 %}&#10; {{- &quot;\n\n# Tools\n\nYou have access to the following functions:\n\n&quot; }}&#10; {{- &quot;&lt;tools>&quot; }}&#10; {%- for tool in tools %}&#10; {%- if tool.function is defined %}&#10; {%- set tool = tool.function %}&#10; {%- endif %}&#10; {{- &quot;\n&lt;function>\n&lt;name>&quot; ~ tool.name ~ &quot;&lt;/name>&quot; }}&#10; {%- if tool.description is defined %}&#10; {{- '\n&lt;description>' ~ (tool.description | trim) ~ '&lt;/description>' }}&#10; {%- endif %}&#10; {{- '\n&lt;parameters>' }}&#10; {%- if tool.parameters is defined and tool.parameters is mapping and tool.parameters.properties is defined and tool.parameters.properties is mapping %}&#10; {%- for param_name, param_fields in tool.parameters.properties|items %}&#10; {{- '\n&lt;parameter>' }}&#10; {{- '\n&lt;name>' ~ param_name ~ '&lt;/name>' }}&#10; {%- if param_fields.type is defined %}&#10; {{- '\n&lt;type>' ~ (param_fields.type | string) ~ '&lt;/type>' }}&#10; {%- endif %}&#10; {%- if param_fields.description is defined %}&#10; {{- '\n&lt;description>' ~ (param_fields.description | trim) ~ '&lt;/description>' }}&#10; {%- endif %}&#10; {%- set handled_keys = ['name', 'type', 'description'] %}&#10; {{- render_extra_keys(param_fields, handled_keys) }}&#10; {{- '\n&lt;/parameter>' }}&#10; {%- endfor %}&#10; {%- endif %}&#10; {% set handled_keys = ['type', 'properties'] %}&#10; {{- render_extra_keys(tool.parameters, handled_keys) }}&#10; {{- '\n&lt;/parameters>' }}&#10; {%- set handled_keys = ['type', 'name', 'description', 'parameters'] %}&#10; {{- render_extra_keys(tool, handled_keys) }}&#10; {{- '\n&lt;/function>' }}&#10; {%- endfor %}&#10; {{- &quot;\n&lt;/tools>&quot; }}&#10; {{- '\n\nIf you choose to call a function ONLY reply in the following format with NO suffix:\n\n&lt;tool_call>\n&lt;function=example_function_name>\n&lt;parameter=example_parameter_1>\nvalue_1\n&lt;/parameter>\n&lt;parameter=example_parameter_2>\nThis is the value for the second parameter\nthat can span\nmultiple lines\n&lt;/parameter>\n&lt;/function>\n&lt;/tool_call>\n\n&lt;IMPORTANT>\nReminder:\n- Function calls MUST follow the specified format: an inner &lt;function=...>&lt;/function> block must be nested within &lt;tool_call>&lt;/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&lt;/IMPORTANT>' }}&#10;{%- endif %}&#10;{%- if system_message is defined %}&#10; {{- '&lt;|im_end|>\n' }}&#10;{%- else %}&#10; {%- if tools is iterable and tools | length > 0 %}&#10; {{- '&lt;|im_end|>\n' }}&#10; {%- endif %}&#10;{%- endif %}&#10;{%- for message in loop_messages %}&#10; {%- if message.role == &quot;assistant&quot; and message.tool_calls is defined and message.tool_calls is iterable and message.tool_calls | length > 0 %}&#10; {{- '&lt;|im_start|>' + message.role }}&#10; {%- if message.content is defined and message.content is string and message.content | trim | length > 0 %}&#10; {{- '\n' + message.content | trim + '\n' }}&#10; {%- endif %}&#10; {%- for tool_call in message.tool_calls %}&#10; {%- if tool_call.function is defined %}&#10; {%- set tool_call = tool_call.function %}&#10; {%- endif %}&#10; {{- '\n&lt;tool_call>\n&lt;function=' + tool_call.name + '>\n' }}&#10; {%- if tool_call.arguments is defined %}&#10; {%- for args_name, args_value in tool_call.arguments|items %}&#10; {{- '&lt;parameter=' + args_name + '>\n' }}&#10; {%- 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 %}&#10; {{- args_value }}&#10; {{- '\n&lt;/parameter>\n' }}&#10; {%- endfor %}&#10; {%- endif %}&#10; {{- '&lt;/function>\n&lt;/tool_call>' }}&#10; {%- endfor %}&#10; {{- '&lt;|im_end|>\n' }}&#10; {%- elif message.role == &quot;user&quot; or message.role == &quot;system&quot; or message.role == &quot;assistant&quot; %}&#10; {{- '&lt;|im_start|>' + message.role + '\n' + message.content + '&lt;|im_end|>' + '\n' }}&#10; {%- elif message.role == &quot;tool&quot; %}&#10; {%- if loop.previtem and loop.previtem.role != &quot;tool&quot; %}&#10; {{- '&lt;|im_start|>user\n' }}&#10; {%- endif %}&#10; {{- '&lt;tool_response>\n' }}&#10; {{- message.content }}&#10; {{- '\n&lt;/tool_response>\n' }}&#10; {%- if not loop.last and loop.nextitem.role != &quot;tool&quot; %}&#10; {{- '&lt;|im_end|>\n' }}&#10; {%- elif loop.last %}&#10; {{- '&lt;|im_end|>\n' }}&#10; {%- endif %}&#10; {%- else %}&#10; {{- '&lt;|im_start|>' + message.role + '\n' + message.content + '&lt;|im_end|>\n' }}&#10; {%- endif %}&#10;{%- endfor %}&#10;{%- if add_generation_prompt %}&#10; {{- '&lt;|im_start|>assistant\n' }}&#10;{%- endif %}&#10;" />
197
+ <clean_up_tokenization_spaces />
198
+ <detokenizer_input_type value="i64" />
199
+ <eos_token_id value="151645" />
200
+ <handle_special_tokens_with_re />
201
+ <max_length />
202
+ <number_of_inputs value="1" />
203
+ <openvino_tokenizers_version value="2026.0.0.0-631-60a9e5067e4" />
204
+ <openvino_version value="2026.0.0-20771-ef1436c34a4" />
205
+ <original_post_processor_template value="{&quot;type&quot;: &quot;ByteLevel&quot;, &quot;add_prefix_space&quot;: false, &quot;trim_offsets&quot;: false, &quot;use_regex&quot;: false}" />
206
+ <original_tokenizer_class value="&lt;class 'transformers.models.qwen2.tokenization_qwen2_fast.Qwen2TokenizerFast'>" />
207
+ <pad_token_id value="151643" />
208
+ <processed_post_processor_template value="{&quot;single&quot;: {&quot;ids&quot;: [-1], &quot;type_ids&quot;: [0]}, &quot;pair&quot;: {&quot;ids&quot;: [-1, -2], &quot;type_ids&quot;: [0, 0]}}" />
209
+ <sentencepiece_version value="0.2.1" />
210
+ <skip_special_tokens value="True" />
211
+ <streaming_detokenizer value="False" />
212
+ <tiktoken_version value="0.9.0" />
213
+ <tokenizer_output_type value="i64" />
214
+ <tokenizers_version value="0.22.2" />
215
+ <transformers_version value="4.57.6" />
216
+ <use_max_padding value="False" />
217
+ <use_sentencepiece_backend value="False" />
218
+ <utf8_replace_mode value="replace" />
219
+ <with_detokenizer value="True" />
220
+ </rt_info>
221
+ </net>
openvino_model.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6d5582c8191cb5382640db7d319b3be4be00eec26f27ccd9b8da9dc3275c763a
3
+ size 458539008