gemma-4-26B-A4B-it-int8-OpenArc / openvino_tokenizer.xml
OpenArcBob's picture
Upload folder using huggingface_hub
806dddd verified
<?xml version="1.0"?>
<net name="tokenizer" version="11">
<layers>
<layer id="0" name="Parameter_280986" type="Parameter" version="opset1">
<data shape="?" element_type="string" />
<output>
<port id="0" precision="STRING" names="Parameter_280986">
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="1" name="Constant_280992" type="Const" version="opset1">
<data element_type="i64" shape="" offset="0" size="8" />
<output>
<port id="0" precision="I64" />
</output>
</layer>
<layer id="2" name="StringTensorUnpack_280987" type="StringTensorUnpack" version="opset15">
<input>
<port id="0" precision="STRING">
<dim>-1</dim>
</port>
</input>
<output>
<port id="1" precision="I32">
<dim>-1</dim>
</port>
<port id="2" precision="I32">
<dim>-1</dim>
</port>
<port id="3" precision="U8">
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="3" name="ShapeOf_280988" type="ShapeOf" version="opset3">
<data output_type="i64" />
<input>
<port id="0" precision="I32">
<dim>-1</dim>
</port>
</input>
<output>
<port id="1" precision="I64">
<dim>1</dim>
</port>
</output>
</layer>
<layer id="4" name="Constant_280989" type="Const" version="opset1">
<data element_type="i64" shape="" offset="0" size="8" />
<output>
<port id="0" precision="I64" />
</output>
</layer>
<layer id="5" name="Constant_280990" type="Const" version="opset1">
<data element_type="i64" shape="" offset="0" size="8" />
<output>
<port id="0" precision="I64" />
</output>
</layer>
<layer id="6" name="Gather_280991" type="Gather" version="opset8">
<data batch_dims="0" />
<input>
<port id="0" precision="I64">
<dim>1</dim>
</port>
<port id="1" precision="I64" />
<port id="2" precision="I64" />
</input>
<output>
<port id="3" precision="I64" />
</output>
</layer>
<layer id="7" name="Constant_280993" type="Const" version="opset1">
<data element_type="i64" shape="" offset="8" size="8" />
<output>
<port id="0" precision="I64" />
</output>
</layer>
<layer id="8" name="Range_280994" type="Range" version="opset4">
<data output_type="i32" />
<input>
<port id="0" precision="I64" />
<port id="1" precision="I64" />
<port id="2" precision="I64" />
</input>
<output>
<port id="3" precision="I32">
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="9" name="Constant_280995" type="Const" version="opset1">
<data element_type="i64" shape="" offset="8" size="8" />
<output>
<port id="0" precision="I64" />
</output>
</layer>
<layer id="10" name="Constant_280996" type="Const" version="opset1">
<data element_type="i64" shape="" offset="8" size="8" />
<output>
<port id="0" precision="I64" />
</output>
</layer>
<layer id="11" name="Add_280997" type="Add" version="opset1">
<data auto_broadcast="numpy" />
<input>
<port id="0" precision="I64" />
<port id="1" precision="I64" />
</input>
<output>
<port id="2" precision="I64" />
</output>
</layer>
<layer id="12" name="Constant_280998" type="Const" version="opset1">
<data element_type="i64" shape="" offset="8" size="8" />
<output>
<port id="0" precision="I64" />
</output>
</layer>
<layer id="13" name="Range_280999" type="Range" version="opset4">
<data output_type="i32" />
<input>
<port id="0" precision="I64" />
<port id="1" precision="I64" />
<port id="2" precision="I64" />
</input>
<output>
<port id="3" precision="I32">
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="14" name="Constant_281063" type="Const" version="opset1">
<data element_type="u8" shape="301" offset="16" size="301" />
<output>
<port id="0" precision="U8">
<dim>301</dim>
</port>
</output>
</layer>
<layer id="15" name="SpecialTokensSplit_281064" type="SpecialTokensSplit" version="extension">
<input>
<port id="0" precision="I32">
<dim>-1</dim>
</port>
<port id="1" precision="I32">
<dim>-1</dim>
</port>
<port id="2" precision="I32">
<dim>-1</dim>
</port>
<port id="3" precision="I32">
<dim>-1</dim>
</port>
<port id="4" precision="U8">
<dim>-1</dim>
</port>
<port id="5" precision="U8">
<dim>301</dim>
</port>
</input>
<output>
<port id="6" precision="I32">
<dim>-1</dim>
</port>
<port id="7" precision="I32">
<dim>-1</dim>
</port>
<port id="8" precision="I32">
<dim>-1</dim>
</port>
<port id="9" precision="I32">
<dim>-1</dim>
</port>
<port id="10" precision="U8">
<dim>-1</dim>
</port>
<port id="11" precision="BOOL">
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="16" name="Constant_281066" type="Const" version="opset1">
<data element_type="u8" shape="1" offset="317" size="1" />
<output>
<port id="0" precision="U8">
<dim>1</dim>
</port>
</output>
</layer>
<layer id="17" name="Constant_281068" type="Const" version="opset1">
<data element_type="u8" shape="3" offset="318" size="3" />
<output>
<port id="0" precision="U8">
<dim>3</dim>
</port>
</output>
</layer>
<layer id="18" name="RegexNormalization_281069" type="RegexNormalization" version="extension">
<data global_replace="true" />
<input>
<port id="0" precision="I32">
<dim>-1</dim>
</port>
<port id="1" precision="I32">
<dim>-1</dim>
</port>
<port id="2" precision="U8">
<dim>-1</dim>
</port>
<port id="3" precision="BOOL">
<dim>-1</dim>
</port>
<port id="4" precision="U8">
<dim>1</dim>
</port>
<port id="5" precision="U8">
<dim>3</dim>
</port>
</input>
<output>
<port id="6" precision="I32">
<dim>-1</dim>
</port>
<port id="7" precision="I32">
<dim>-1</dim>
</port>
<port id="8" precision="U8">
<dim>-1</dim>
</port>
<port id="9" precision="BOOL">
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="19" name="Constant_281071" type="Const" version="opset1">
<data element_type="u8" shape="1" offset="317" size="1" />
<output>
<port id="0" precision="U8">
<dim>1</dim>
</port>
</output>
</layer>
<layer id="20" name="RegexSplit_281072" type="RegexSplit" version="extension">
<data behaviour="mergedwithprevious" invert="false" max_splits="-1" />
<input>
<port id="0" precision="I32">
<dim>-1</dim>
</port>
<port id="1" precision="I32">
<dim>-1</dim>
</port>
<port id="2" precision="I32">
<dim>-1</dim>
</port>
<port id="3" precision="I32">
<dim>-1</dim>
</port>
<port id="4" precision="U8">
<dim>-1</dim>
</port>
<port id="5" precision="BOOL">
<dim>-1</dim>
</port>
<port id="6" precision="U8">
<dim>1</dim>
</port>
</input>
<output>
<port id="7" precision="I32">
<dim>-1</dim>
</port>
<port id="8" precision="I32">
<dim>-1</dim>
</port>
<port id="9" precision="I32">
<dim>-1</dim>
</port>
<port id="10" precision="I32">
<dim>-1</dim>
</port>
<port id="11" precision="U8">
<dim>-1</dim>
</port>
<port id="12" precision="BOOL">
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="21" name="Constant_281074" type="Const" version="opset1">
<data element_type="i32" shape="262144" offset="321" size="1048576" />
<output>
<port id="0" precision="I32">
<dim>262144</dim>
</port>
</output>
</layer>
<layer id="22" name="Constant_281076" type="Const" version="opset1">
<data element_type="i32" shape="262144" offset="1048897" size="1048576" />
<output>
<port id="0" precision="I32">
<dim>262144</dim>
</port>
</output>
</layer>
<layer id="23" name="Constant_281078" type="Const" version="opset1">
<data element_type="u8" shape="2316295" offset="2097473" size="2316295" />
<output>
<port id="0" precision="U8">
<dim>2316295</dim>
</port>
</output>
</layer>
<layer id="24" name="Constant_281086" type="Const" version="opset1">
<data element_type="i32" shape="514906" offset="4413768" size="2059624" />
<output>
<port id="0" precision="I32">
<dim>514906</dim>
</port>
</output>
</layer>
<layer id="25" name="Constant_281088" type="Const" version="opset1">
<data element_type="i32" shape="514906" offset="6473392" size="2059624" />
<output>
<port id="0" precision="I32">
<dim>514906</dim>
</port>
</output>
</layer>
<layer id="26" name="Constant_281090" type="Const" version="opset1">
<data element_type="u8" shape="2714340" offset="8533016" size="2714340" />
<output>
<port id="0" precision="U8">
<dim>2714340</dim>
</port>
</output>
</layer>
<layer id="27" name="Constant_281092" type="Const" version="opset1">
<data element_type="i32" shape="514906" offset="11247356" size="2059624" />
<output>
<port id="0" precision="I32">
<dim>514906</dim>
</port>
</output>
</layer>
<layer id="28" name="Constant_281094" type="Const" version="opset1">
<data element_type="i32" shape="514906" offset="13306980" size="2059624" />
<output>
<port id="0" precision="I32">
<dim>514906</dim>
</port>
</output>
</layer>
<layer id="29" name="Constant_281096" type="Const" version="opset1">
<data element_type="u8" shape="1903225" offset="15366604" size="1903225" />
<output>
<port id="0" precision="U8">
<dim>1903225</dim>
</port>
</output>
</layer>
<layer id="30" name="Constant_281080" type="Const" version="opset1">
<data element_type="i32" shape="23" offset="17269829" size="92" />
<output>
<port id="0" precision="I32">
<dim>23</dim>
</port>
</output>
</layer>
<layer id="31" name="Constant_281082" type="Const" version="opset1">
<data element_type="i32" shape="23" offset="17269921" size="92" />
<output>
<port id="0" precision="I32">
<dim>23</dim>
</port>
</output>
</layer>
<layer id="32" name="Constant_281084" type="Const" version="opset1">
<data element_type="u8" shape="198" offset="17270013" size="198" />
<output>
<port id="0" precision="U8">
<dim>198</dim>
</port>
</output>
</layer>
<layer id="33" name="Constant_281097" type="Const" version="opset1">
<data element_type="i32" shape="23" offset="17270211" size="92" />
<output>
<port id="0" precision="I32">
<dim>23</dim>
</port>
</output>
</layer>
<layer id="34" name="BPETokenizer_281098" type="BPETokenizer" version="extension">
<data unk_token="&lt;unk>" fuse_unk="true" suffix_indicator="" end_suffix="" byte_fallback="true" cache_capacity="52428" />
<input>
<port id="0" precision="I32">
<dim>-1</dim>
</port>
<port id="1" precision="I32">
<dim>-1</dim>
</port>
<port id="2" precision="I32">
<dim>-1</dim>
</port>
<port id="3" precision="I32">
<dim>-1</dim>
</port>
<port id="4" precision="U8">
<dim>-1</dim>
</port>
<port id="5" precision="I32">
<dim>262144</dim>
</port>
<port id="6" precision="I32">
<dim>262144</dim>
</port>
<port id="7" precision="U8">
<dim>2316295</dim>
</port>
<port id="8" precision="I32">
<dim>514906</dim>
</port>
<port id="9" precision="I32">
<dim>514906</dim>
</port>
<port id="10" precision="U8">
<dim>2714340</dim>
</port>
<port id="11" precision="I32">
<dim>514906</dim>
</port>
<port id="12" precision="I32">
<dim>514906</dim>
</port>
<port id="13" precision="U8">
<dim>1903225</dim>
</port>
<port id="14" precision="I32">
<dim>23</dim>
</port>
<port id="15" precision="I32">
<dim>23</dim>
</port>
<port id="16" precision="U8">
<dim>198</dim>
</port>
<port id="17" precision="I32">
<dim>23</dim>
</port>
</input>
<output>
<port id="18" precision="I32">
<dim>-1</dim>
</port>
<port id="19" precision="I32">
<dim>-1</dim>
</port>
<port id="20" precision="I32">
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="35" name="Constant_281099" type="Const" version="opset1">
<data element_type="i32" shape="" offset="17270303" size="4" />
<output>
<port id="0" precision="I32" />
</output>
</layer>
<layer id="36" name="Constant_281101" type="Const" version="opset1">
<data element_type="u8" shape="4" offset="17270307" size="4" />
<output>
<port id="0" precision="U8">
<dim>4</dim>
</port>
</output>
</layer>
<layer id="37" name="Constant_281103" type="Const" version="opset1">
<data element_type="u8" shape="13" offset="17270311" size="13" />
<output>
<port id="0" precision="U8">
<dim>13</dim>
</port>
</output>
</layer>
<layer id="38" name="Truncate_281104" type="Truncate" version="extension">
<data m_num_inputs="1" />
<input>
<port id="0" precision="I32">
<dim>-1</dim>
</port>
<port id="1" precision="I32">
<dim>-1</dim>
</port>
<port id="2" precision="I32">
<dim>-1</dim>
</port>
<port id="3" precision="I32" />
<port id="4" precision="U8">
<dim>4</dim>
</port>
<port id="5" precision="U8">
<dim>13</dim>
</port>
</input>
<output>
<port id="6" precision="I32">
<dim>-1</dim>
</port>
<port id="7" precision="I32">
<dim>-1</dim>
</port>
<port id="8" precision="I32">
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="39" name="Constant_281105" type="Const" version="opset1">
<data element_type="i32" shape="1" offset="17270324" size="4" />
<output>
<port id="0" precision="I32">
<dim>1</dim>
</port>
</output>
</layer>
<layer id="40" name="CombineSegments_281106" type="CombineSegments" version="extension">
<input>
<port id="0" precision="I32">
<dim>-1</dim>
</port>
<port id="1" precision="I32">
<dim>-1</dim>
</port>
<port id="2" precision="I32">
<dim>-1</dim>
</port>
<port id="3" precision="I32">
<dim>1</dim>
</port>
</input>
<output>
<port id="4" precision="I32">
<dim>-1</dim>
</port>
<port id="5" precision="I32">
<dim>-1</dim>
</port>
<port id="6" precision="I32">
<dim>-1</dim>
</port>
<port id="7" precision="I32">
<dim>-1</dim>
</port>
<port id="8" precision="I32">
<dim>-1</dim>
</port>
<port id="9" precision="I32">
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="41" name="Subtract_281107" type="Subtract" version="opset1">
<data auto_broadcast="numpy" />
<input>
<port id="0" precision="I32">
<dim>-1</dim>
</port>
<port id="1" precision="I32">
<dim>-1</dim>
</port>
</input>
<output>
<port id="2" precision="I32">
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="42" name="Constant_281108" type="Const" version="opset1">
<data element_type="i32" shape="" offset="17270324" size="4" />
<output>
<port id="0" precision="I32" />
</output>
</layer>
<layer id="43" name="ReduceMax_281109" type="ReduceMax" version="opset1">
<data keep_dims="false" />
<input>
<port id="0" precision="I32">
<dim>-1</dim>
</port>
<port id="1" precision="I32" />
</input>
<output>
<port id="2" precision="I32" />
</output>
</layer>
<layer id="44" name="Constant_281110" type="Const" version="opset1">
<data element_type="i32" shape="" offset="17270324" size="4" />
<output>
<port id="0" precision="I32" />
</output>
</layer>
<layer id="45" name="RaggedToDense_281111" type="RaggedToDense" version="extension">
<data pad_right="false" m_pad_max_length="false" />
<input>
<port id="0" precision="I32">
<dim>-1</dim>
</port>
<port id="1" precision="I32">
<dim>-1</dim>
</port>
<port id="2" precision="I32">
<dim>-1</dim>
</port>
<port id="3" precision="I32" />
<port id="4" precision="I32" />
</input>
<output>
<port id="5" precision="I32">
<dim>-1</dim>
<dim>-1</dim>
</port>
<port id="6" precision="BOOL">
<dim>-1</dim>
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="46" name="Convert_281112" type="Convert" version="opset1">
<data destination_type="i32" />
<input>
<port id="0" precision="BOOL">
<dim>-1</dim>
<dim>-1</dim>
</port>
</input>
<output>
<port id="1" precision="I32">
<dim>-1</dim>
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="47" name="Convert_281112.0" type="Convert" version="opset1">
<data destination_type="i64" />
<input>
<port id="0" precision="I32">
<dim>-1</dim>
<dim>-1</dim>
</port>
</input>
<output>
<port id="1" precision="I64" names="attention_mask">
<dim>-1</dim>
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="48" name="RaggedToDense_281111.0" type="Convert" version="opset1">
<data destination_type="i64" />
<input>
<port id="0" precision="I32">
<dim>-1</dim>
<dim>-1</dim>
</port>
</input>
<output>
<port id="1" precision="I64" names="input_ids">
<dim>-1</dim>
<dim>-1</dim>
</port>
</output>
</layer>
<layer id="49" name="Result_281115" type="Result" version="opset1" output_names="input_ids">
<input>
<port id="0" precision="I64">
<dim>-1</dim>
<dim>-1</dim>
</port>
</input>
</layer>
<layer id="50" name="Result_281117" type="Result" version="opset1" output_names="attention_mask">
<input>
<port id="0" precision="I64">
<dim>-1</dim>
<dim>-1</dim>
</port>
</input>
</layer>
</layers>
<edges>
<edge from-layer="0" from-port="0" to-layer="2" to-port="0" />
<edge from-layer="1" from-port="0" to-layer="8" to-port="0" />
<edge from-layer="2" from-port="1" to-layer="3" to-port="0" />
<edge from-layer="2" from-port="3" to-layer="15" to-port="4" />
<edge from-layer="2" from-port="2" to-layer="15" to-port="3" />
<edge from-layer="2" from-port="1" to-layer="15" to-port="2" />
<edge from-layer="3" from-port="1" to-layer="6" to-port="0" />
<edge from-layer="4" from-port="0" to-layer="6" to-port="1" />
<edge from-layer="5" from-port="0" to-layer="6" to-port="2" />
<edge from-layer="6" from-port="3" to-layer="11" to-port="0" />
<edge from-layer="6" from-port="3" to-layer="8" to-port="1" />
<edge from-layer="7" from-port="0" to-layer="8" to-port="2" />
<edge from-layer="8" from-port="3" to-layer="15" to-port="0" />
<edge from-layer="9" from-port="0" to-layer="13" to-port="0" />
<edge from-layer="10" from-port="0" to-layer="11" to-port="1" />
<edge from-layer="11" from-port="2" to-layer="13" to-port="1" />
<edge from-layer="12" from-port="0" to-layer="13" to-port="2" />
<edge from-layer="13" from-port="3" to-layer="15" to-port="1" />
<edge from-layer="14" from-port="0" to-layer="15" to-port="5" />
<edge from-layer="15" from-port="11" to-layer="18" to-port="3" />
<edge from-layer="15" from-port="7" to-layer="20" to-port="1" />
<edge from-layer="15" from-port="6" to-layer="20" to-port="0" />
<edge from-layer="15" from-port="10" to-layer="18" to-port="2" />
<edge from-layer="15" from-port="9" to-layer="18" to-port="1" />
<edge from-layer="15" from-port="8" to-layer="18" to-port="0" />
<edge from-layer="16" from-port="0" to-layer="18" to-port="4" />
<edge from-layer="17" from-port="0" to-layer="18" to-port="5" />
<edge from-layer="18" from-port="6" to-layer="20" to-port="2" />
<edge from-layer="18" from-port="7" to-layer="20" to-port="3" />
<edge from-layer="18" from-port="8" to-layer="20" to-port="4" />
<edge from-layer="18" from-port="9" to-layer="20" to-port="5" />
<edge from-layer="19" from-port="0" to-layer="20" to-port="6" />
<edge from-layer="20" from-port="7" to-layer="34" to-port="0" />
<edge from-layer="20" from-port="8" to-layer="34" to-port="1" />
<edge from-layer="20" from-port="9" to-layer="34" to-port="2" />
<edge from-layer="20" from-port="10" to-layer="34" to-port="3" />
<edge from-layer="20" from-port="11" to-layer="34" to-port="4" />
<edge from-layer="21" from-port="0" to-layer="34" to-port="5" />
<edge from-layer="22" from-port="0" to-layer="34" to-port="6" />
<edge from-layer="23" from-port="0" to-layer="34" to-port="7" />
<edge from-layer="24" from-port="0" to-layer="34" to-port="8" />
<edge from-layer="25" from-port="0" to-layer="34" to-port="9" />
<edge from-layer="26" from-port="0" to-layer="34" to-port="10" />
<edge from-layer="27" from-port="0" to-layer="34" to-port="11" />
<edge from-layer="28" from-port="0" to-layer="34" to-port="12" />
<edge from-layer="29" from-port="0" to-layer="34" to-port="13" />
<edge from-layer="30" from-port="0" to-layer="34" to-port="14" />
<edge from-layer="31" from-port="0" to-layer="34" to-port="15" />
<edge from-layer="32" from-port="0" to-layer="34" to-port="16" />
<edge from-layer="33" from-port="0" to-layer="34" to-port="17" />
<edge from-layer="34" from-port="18" to-layer="38" to-port="0" />
<edge from-layer="34" from-port="19" to-layer="38" to-port="1" />
<edge from-layer="34" from-port="20" to-layer="38" to-port="2" />
<edge from-layer="35" from-port="0" to-layer="38" to-port="3" />
<edge from-layer="36" from-port="0" to-layer="38" to-port="4" />
<edge from-layer="37" from-port="0" to-layer="38" to-port="5" />
<edge from-layer="38" from-port="6" to-layer="40" to-port="0" />
<edge from-layer="38" from-port="8" to-layer="40" to-port="2" />
<edge from-layer="38" from-port="7" to-layer="40" to-port="1" />
<edge from-layer="39" from-port="0" to-layer="40" to-port="3" />
<edge from-layer="40" from-port="5" to-layer="41" to-port="0" />
<edge from-layer="40" from-port="4" to-layer="41" to-port="1" />
<edge from-layer="40" from-port="4" to-layer="45" to-port="0" />
<edge from-layer="40" from-port="5" to-layer="45" to-port="1" />
<edge from-layer="40" from-port="6" to-layer="45" to-port="2" />
<edge from-layer="41" from-port="2" to-layer="43" to-port="0" />
<edge from-layer="42" from-port="0" to-layer="43" to-port="1" />
<edge from-layer="43" from-port="2" to-layer="45" to-port="3" />
<edge from-layer="44" from-port="0" to-layer="45" to-port="4" />
<edge from-layer="45" from-port="6" to-layer="46" to-port="0" />
<edge from-layer="45" from-port="5" to-layer="48" to-port="0" />
<edge from-layer="46" from-port="1" to-layer="47" to-port="0" />
<edge from-layer="47" from-port="1" to-layer="50" to-port="0" />
<edge from-layer="48" from-port="1" to-layer="49" to-port="0" />
</edges>
<rt_info>
<info name="OpenVINO Runtime" value="2026.2.0-21553-ed55e5f2bd5" />
<add_attention_mask value="True" />
<add_prefix_space />
<add_special_tokens value="True" />
<bos_token_id value="2" />
<chat_template value="{%- macro format_parameters(properties, required) -%}&#10; {%- set standard_keys = ['description', 'type', 'properties', 'required', 'nullable'] -%}&#10; {%- set ns = namespace(found_first=false) -%}&#10; {%- for key, value in properties | dictsort -%}&#10; {%- set add_comma = false -%}&#10; {%- if key not in standard_keys -%}&#10; {%- if ns.found_first %},{% endif -%}&#10; {%- set ns.found_first = true -%}&#10; {{ key }}:{&#10; {%- if value['description'] -%}&#10; description:&lt;|&quot;|>{{ value['description'] }}&lt;|&quot;|>&#10; {%- set add_comma = true -%}&#10; {%- endif -%}&#10; {%- if value['nullable'] %}&#10; {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}&#10; nullable:true&#10; {%- endif -%}&#10; {%- if value['type'] | upper == 'STRING' -%}&#10; {%- if value['enum'] -%}&#10; {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}&#10; enum:{{ format_argument(value['enum']) }}&#10; {%- endif -%}&#10; {%- elif value['type'] | upper == 'OBJECT' -%}&#10; ,properties:{&#10; {%- if value['properties'] is defined and value['properties'] is mapping -%}&#10; {{- format_parameters(value['properties'], value['required'] | default([])) -}}&#10; {%- elif value is mapping -%}&#10; {{- format_parameters(value, value['required'] | default([])) -}}&#10; {%- endif -%}&#10; }&#10; {%- if value['required'] -%}&#10; ,required:[&#10; {%- for item in value['required'] | default([]) -%}&#10; &lt;|&quot;|>{{- item -}}&lt;|&quot;|>&#10; {%- if not loop.last %},{% endif -%}&#10; {%- endfor -%}&#10; ]&#10; {%- endif -%}&#10; {%- elif value['type'] | upper == 'ARRAY' -%}&#10; {%- if value['items'] is mapping and value['items'] -%}&#10; ,items:{&#10; {%- set ns_items = namespace(found_first=false) -%}&#10; {%- for item_key, item_value in value['items'] | dictsort -%}&#10; {%- if item_value is not none -%}&#10; {%- if ns_items.found_first %},{% endif -%}&#10; {%- set ns_items.found_first = true -%}&#10; {%- if item_key == 'properties' -%}&#10; properties:{&#10; {%- if item_value is mapping -%}&#10; {{- format_parameters(item_value, value['items']['required'] | default([])) -}}&#10; {%- endif -%}&#10; }&#10; {%- elif item_key == 'required' -%}&#10; required:[&#10; {%- for req_item in item_value -%}&#10; &lt;|&quot;|>{{- req_item -}}&lt;|&quot;|>&#10; {%- if not loop.last %},{% endif -%}&#10; {%- endfor -%}&#10; ]&#10; {%- elif item_key == 'type' -%}&#10; {%- if item_value is string -%}&#10; type:{{ format_argument(item_value | upper) }}&#10; {%- else -%}&#10; type:{{ format_argument(item_value | map('upper') | list) }}&#10; {%- endif -%}&#10; {%- else -%}&#10; {{ item_key }}:{{ format_argument(item_value) }}&#10; {%- endif -%}&#10; {%- endif -%}&#10; {%- endfor -%}&#10; }&#10; {%- endif -%}&#10; {%- endif -%}&#10; {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}&#10; type:&lt;|&quot;|>{{ value['type'] | upper }}&lt;|&quot;|>}&#10; {%- endif -%}&#10; {%- endfor -%}&#10;{%- endmacro -%}&#10;{%- macro format_function_declaration(tool_data) -%}&#10; declaration:{{- tool_data['function']['name'] -}}{description:&lt;|&quot;|>{{- tool_data['function']['description'] -}}&lt;|&quot;|>&#10; {%- set params = tool_data['function']['parameters'] -%}&#10; {%- if params -%}&#10; ,parameters:{&#10; {%- if params['properties'] -%}&#10; properties:{ {{- format_parameters(params['properties'], params['required']) -}} },&#10; {%- endif -%}&#10; {%- if params['required'] -%}&#10; required:[&#10; {%- for item in params['required'] -%}&#10; &lt;|&quot;|>{{- item -}}&lt;|&quot;|>&#10; {{- ',' if not loop.last -}}&#10; {%- endfor -%}&#10; ],&#10; {%- endif -%}&#10; {%- if params['type'] -%}&#10; type:&lt;|&quot;|>{{- params['type'] | upper -}}&lt;|&quot;|>}&#10; {%- endif -%}&#10; {%- endif -%}&#10; {%- if 'response' in tool_data['function'] -%}&#10; {%- set response_declaration = tool_data['function']['response'] -%}&#10; ,response:{&#10; {%- if response_declaration['description'] -%}&#10; description:&lt;|&quot;|>{{- response_declaration['description'] -}}&lt;|&quot;|>,&#10; {%- endif -%}&#10; {%- if response_declaration['type'] | upper == 'OBJECT' -%}&#10; type:&lt;|&quot;|>{{- response_declaration['type'] | upper -}}&lt;|&quot;|>}&#10; {%- endif -%}&#10; {%- endif -%}&#10; }&#10;{%- endmacro -%}&#10;{%- macro format_argument(argument, escape_keys=True) -%}&#10; {%- if argument is string -%}&#10; {{- '&lt;|&quot;|>' + argument + '&lt;|&quot;|>' -}}&#10; {%- elif argument is boolean -%}&#10; {{- 'true' if argument else 'false' -}}&#10; {%- elif argument is mapping -%}&#10; {{- '{' -}}&#10; {%- set ns = namespace(found_first=false) -%}&#10; {%- for key, value in argument | dictsort -%}&#10; {%- if ns.found_first %},{% endif -%}&#10; {%- set ns.found_first = true -%}&#10; {%- if escape_keys -%}&#10; {{- '&lt;|&quot;|>' + key + '&lt;|&quot;|>' -}}&#10; {%- else -%}&#10; {{- key -}}&#10; {%- endif -%}&#10; :{{- format_argument(value, escape_keys=escape_keys) -}}&#10; {%- endfor -%}&#10; {{- '}' -}}&#10; {%- elif argument is sequence -%}&#10; {{- '[' -}}&#10; {%- for item in argument -%}&#10; {{- format_argument(item, escape_keys=escape_keys) -}}&#10; {%- if not loop.last %},{% endif -%}&#10; {%- endfor -%}&#10; {{- ']' -}}&#10; {%- else -%}&#10; {{- argument -}}&#10; {%- endif -%}&#10;{%- endmacro -%}&#10;{%- macro strip_thinking(text) -%}&#10; {%- set ns = namespace(result='') -%}&#10; {%- for part in text.split('&lt;channel|>') -%}&#10; {%- if '&lt;|channel>' in part -%}&#10; {%- set ns.result = ns.result + part.split('&lt;|channel>')[0] -%}&#10; {%- else -%}&#10; {%- set ns.result = ns.result + part -%}&#10; {%- endif -%}&#10; {%- endfor -%}&#10; {{- ns.result | trim -}}&#10;{%- endmacro -%}&#10;&#10;{%- set ns = namespace(prev_message_type=None) -%}&#10;{%- set loop_messages = messages -%}&#10;{{ bos_token }}&#10;{#- Handle System/Tool Definitions Block -#}&#10;{%- if (enable_thinking is defined and enable_thinking) or tools or messages[0]['role'] in ['system', 'developer'] -%}&#10; {{- '&lt;|turn>system\n' -}}&#10;&#10; {#- Inject Thinking token at the very top of the FIRST system turn -#}&#10; {%- if enable_thinking is defined and enable_thinking -%}&#10; {{- '&lt;|think|>' -}}&#10; {%- set ns.prev_message_type = 'think' -%}&#10; {%- endif -%}&#10;&#10; {%- if messages[0]['role'] in ['system', 'developer'] -%}&#10; {{- messages[0]['content'] | trim -}}&#10; {%- set loop_messages = messages[1:] -%}&#10; {%- endif -%}&#10;&#10; {%- if tools -%}&#10; {%- for tool in tools %}&#10; {{- '&lt;|tool>' -}}&#10; {{- format_function_declaration(tool) | trim -}}&#10; {{- '&lt;tool|>' -}}&#10; {%- endfor %}&#10; {%- set ns.prev_message_type = 'tool' -%}&#10; {%- endif -%}&#10;&#10; {{- '&lt;turn|>\n' -}}&#10;{%- endif %}&#10;&#10;{#- Loop through messages -#}&#10;{%- for message in loop_messages -%}&#10; {%- set ns.prev_message_type = None -%}&#10; {%- set role = 'model' if message['role'] == 'assistant' else message['role'] -%}&#10; {{- '&lt;|turn>' + role + '\n' }}&#10;&#10; {%- if message['tool_calls'] -%}&#10; {%- for tool_call in message['tool_calls'] -%}&#10; {%- set function = tool_call['function'] -%}&#10; {{- '&lt;|tool_call>call:' + function['name'] + '{' -}}&#10; {%- if function['arguments'] is mapping -%}&#10; {%- set ns_args = namespace(found_first=false) -%}&#10; {%- for key, value in function['arguments'] | dictsort -%}&#10; {%- if ns_args.found_first %},{% endif -%}&#10; {%- set ns_args.found_first = true -%}&#10; {{- key -}}:{{- format_argument(value, escape_keys=False) -}}&#10; {%- endfor -%}&#10; {%- elif function['arguments'] is string -%}&#10; {{- function['arguments'] -}}&#10; {%- endif -%}&#10; {{- '}&lt;tool_call|>' -}}&#10; {%- endfor -%}&#10; {%- set ns.prev_message_type = 'tool_call' -%}&#10; {%- endif -%}&#10;&#10; {%- if message['tool_responses'] -%}&#10; {#- Tool Response handling -#}&#10; {%- for tool_response in message['tool_responses'] -%}&#10; {{- '&lt;|tool_response>' -}}&#10; {%- if tool_response['response'] is mapping -%}&#10; {{- 'response:' + tool_response['name'] | default('unknown') + '{' -}}&#10; {%- for key, value in tool_response['response'] | dictsort -%}&#10; {{- key -}}:{{- format_argument(value, escape_keys=False) -}}&#10; {%- if not loop.last %},{% endif -%}&#10; {%- endfor -%}&#10; {{- '}' -}}&#10; {%- else -%}&#10; {{- 'response:' + tool_response['name'] | default('unknown') + '{value:' + format_argument(tool_response['response'], escape_keys=False) + '}' -}}&#10; {%- endif -%}&#10; {{- '&lt;tool_response|>' -}}&#10; {%- endfor -%}&#10; {%- set ns.prev_message_type = 'tool_response' -%}&#10; {%- endif -%}&#10;&#10; {%- if message['content'] is string -%}&#10; {%- if role == 'model' -%}&#10; {{- strip_thinking(message['content']) -}}&#10; {%- else -%}&#10; {{- message['content'] | trim -}}&#10; {%- endif -%}&#10; {%- elif message['content'] is sequence -%}&#10; {%- for item in message['content'] -%}&#10; {%- if item['type'] == 'text' -%}&#10; {%- if role == 'model' -%}&#10; {{- strip_thinking(item['text']) -}}&#10; {%- else -%}&#10; {{- item['text'] | trim -}}&#10; {%- endif -%}&#10; {%- elif item['type'] == 'image' -%}&#10; {{- '\n\n&lt;|image|>\n\n' -}}&#10; {%- set ns.prev_message_type = 'image' -%}&#10; {%- elif item['type'] == 'audio' -%}&#10; {{- '&lt;|audio|>' -}}&#10; {%- set ns.prev_message_type = 'audio' -%}&#10; {%- elif item['type'] == 'video' -%}&#10; {{- '\n\n&lt;|video|>\n\n' -}}&#10; {%- set ns.prev_message_type = 'video' -%}&#10; {%- endif -%}&#10; {%- endfor -%}&#10; {%- endif -%}&#10;&#10; {%- if not (message['tool_responses'] and not message['content']) -%}&#10; {{- '&lt;turn|>\n' -}}&#10; {%- endif -%}&#10;{%- endfor -%}&#10;&#10;{%- if add_generation_prompt -%}&#10; {%- if ns.prev_message_type != 'tool_response' -%}&#10; {{- '&lt;|turn>model\n' -}}&#10; {%- endif -%}&#10; {%- if not enable_thinking | default(false) -%}&#10; {{- '&lt;|channel>thought\n&lt;channel|>' -}}&#10; {%- endif -%}&#10;{%- endif -%}&#10;" />
<clean_up_tokenization_spaces />
<detokenizer_input_type value="i64" />
<eos_token_id value="1" />
<handle_special_tokens_with_re />
<max_length />
<number_of_inputs value="1" />
<openvino_tokenizers_version value="2026.2.0.0-668-cb14978d71b" />
<openvino_version value="2026.2.0-21553-ed55e5f2bd5" />
<original_post_processor_template value="{&quot;type&quot;: &quot;TemplateProcessing&quot;, &quot;single&quot;: [{&quot;Sequence&quot;: {&quot;id&quot;: &quot;A&quot;, &quot;type_id&quot;: 0}}], &quot;pair&quot;: [{&quot;Sequence&quot;: {&quot;id&quot;: &quot;A&quot;, &quot;type_id&quot;: 0}}, {&quot;Sequence&quot;: {&quot;id&quot;: &quot;B&quot;, &quot;type_id&quot;: 1}}], &quot;special_tokens&quot;: {}}" />
<original_tokenizer_class value="&lt;class 'transformers.models.gemma.tokenization_gemma.GemmaTokenizer'>" />
<pad_token_id value="0" />
<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, 1]}}" />
<sentencepiece_version value="0.2.1" />
<skip_special_tokens value="True" />
<streaming_detokenizer value="False" />
<tokenizer_output_type value="i64" />
<tokenizers_version value="0.22.2" />
<transformers_version value="5.5.0" />
<use_max_padding value="False" />
<use_sentencepiece_backend value="False" />
<utf8_replace_mode value="replace" />
<with_detokenizer value="True" />
</rt_info>
</net>