{ "architectures": [ "GraniteMoeHybridForCausalLM" ], "attention_bias": false, "attention_dropout": 0.0, "attention_multiplier": 0.015625, "bos_token_id": 100257, "dtype": "bfloat16", "embedding_multiplier": 12, "eos_token_id": 100257, "hidden_act": "silu", "hidden_size": 1024, "init_method": "mup", "initializer_range": 0.1, "intermediate_size": 2048, "layer_types": [ "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention", "attention" ], "logits_scaling": 4, "mamba_chunk_size": 256, "mamba_conv_bias": true, "mamba_d_conv": 4, "mamba_d_head": 16, "mamba_d_state": 256, "mamba_expand": 2, "mamba_n_groups": 1, "mamba_n_heads": 128, "mamba_proj_bias": false, "max_position_embeddings": 65536, "model_name": "ibm-granite/granite-4.0-350m-base", "model_type": "granitemoehybrid", "normalization_function": "rmsnorm", "num_attention_heads": 16, "num_experts_per_tok": 0, "num_hidden_layers": 28, "num_key_value_heads": 4, "num_local_experts": 0, "output_router_logits": false, "pad_token_id": 100256, "position_embedding_type": "rope", "residual_multiplier": 0.263, "rms_norm_eps": 1e-05, "rope_parameters": { "rope_theta": 10000000, "rope_type": "default" }, "rope_scaling": { "factor": 2.0, "type": "yarn" }, "router_aux_loss_coef": 0.01, "shared_intermediate_size": 2048, "tie_word_embeddings": true, "time_step_limit": [ 0.0, { "__float__": "Infinity" } ], "time_step_max": 0.1, "time_step_min": 0.001, "transformers_version": "5.5.0", "unsloth_version": "2026.4.8", "chat_template": "{{- '\nReasoning effort: ' + (reasoning_effort | default('low')) + '\n\n' }}{%- if tools %}{{- '<|im_start|>system\\n' }}{%- if messages[0].role == 'system' %}{{- messages[0].content + '\\n\\n' }}{%- endif %}{{- \"# Tools\\n\\nYou may call one or more functions to assist with the user query.\\n\\nYou are provided with function signatures within XML tags:\\n\" }}{%- for tool in tools %}{{- \"\\n\" }}{{- tool | tojson }}{%- endfor %}{{- \"\\n\\n\\nFor each function call, return a json object with function name and arguments within XML tags:\\n\\n{\\\"name\\\": , \\\"arguments\\\": }\\n<|im_end|>\\n\" }}{%- else %}{%- if messages[0].role == 'system' %}{{- '<|im_start|>system\\n' + messages[0].content + '<|im_end|>\\n' }}{%- endif %}{%- endif %}{%- for message in messages %}{%- if message.content is string %}{%- set content = message.content %}{%- else %}{%- set content = '' %}{%- endif %}{%- if (message.role == \"user\") or (message.role == \"system\" and not loop.first) %}{{- '<|im_start|>' + message.role + '\\n' + content + '<|im_end|>' + '\\n' }}{%- elif message.role == \"assistant\" %}{{- '<|im_start|>' + message.role + '\\n' + content }}{%- if message.tool_calls %}{%- for tool_call in message.tool_calls %}{%- if (loop.first and content) or (not loop.first) %}{{- '\\n' }}{%- endif %}{%- if tool_call.function %}{%- set tool_call = tool_call.function %}{%- endif %}{{- '\\n{\"name\": \"' }}{{- tool_call.name }}{{- '\", \"arguments\": ' }}{%- if tool_call.arguments is string %}{{- tool_call.arguments }}{%- else %}{{- tool_call.arguments | tojson }}{%- endif %}{{- '}\\n' }}{%- endfor %}{%- endif %}{{- '<|im_end|>\\n' }}{%- elif message.role == \"tool\" %}{%- if loop.first or (messages[loop.index0 - 1].role != \"tool\") %}{{- '<|im_start|>user' }}{%- endif %}{{- '\\n\\n' }}{{- content }}{{- '\\n' }}{%- if loop.last or (messages[loop.index0 + 1].role != \"tool\") %}{{- '<|im_end|>\\n' }}{%- endif %}{%- endif %}{%- endfor %}{%- if add_generation_prompt %}{{- '<|im_start|>assistant\\n' }}{%- endif %}", "use_cache": false, "vocab_size": 100352 }