Cyclone-Labs/Eon-Blossom-31B
hf Cyclone-Labs/Eon-Blossom-31B 2 sources, 4 claims · Watch
What each source says
| Property | Source | Said | Means here |
|---|---|---|---|
| Author author not compared | GGUF quantisations | mradermacherreceipt
What the source handed over{
"_id": "6aa12ed3970a339ecad83d02",
"author": "mradermacher",
"cardData": {
"base_model": "Cyclone-Labs/Eon-Blossom-31B",
"language": [
"en"
],
"library_name": "transformers",
"license": "apache-2.0",
"mradermacher": {
"readme_rev": 1
},
"quantized_by": "mradermacher",
"tags": [
"mergekit",
"merge",
"roleplay",
"storytelling"
]
},
"createdAt": "2026-09-09T10:02:59.000Z",
"downloads": 5297,
"gated": false,
"id": "mradermacher/Eon-Blossom-31B-i1-GGUF",
"lastModified": "2026-09-09T12:20:34.000Z",
"library_name": "transformers",
"likes": 0,
"modelId": "mradermacher/Eon-Blossom-31B-i1-GGUF",
"private": false,
"sha": "f24151d4706d0c2f71d38c9e6068cf979cd7ec82",
"siblings": [
{
"rfilename": ".gitattributes"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ1_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ1_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_XXS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_XXS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ4_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q2_K.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q2_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_L.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_0.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_1.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q5_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q5_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q6_K.gguf"
},
{
"rfilename": "Eon-Blossom-31B.imatrix.gguf"
},
{
"rfilename": "README.md"
}
],
"tags": [
"transformers",
"gguf",
"mergekit",
"merge",
"roleplay",
"storytelling",
"en",
"base_model:Cyclone-Labs/Eon-Blossom-31B",
"base_model:quantized:Cyclone-Labs/Eon-Blossom-31B",
"license:apache-2.0",
"endpoints_compatible",
"region:us",
"imatrix",
"conversational"
]
} | — |
| Author author not compared | Hugging Face models | Cyclone-Labsreceipt
This source has not kept a receipt for this claim yet. The next update that reads it will. | — |
| Base base | GGUF quantisations | Cyclone-Labs/Eon-Blossom-31Breceipt
What the source handed over{
"_id": "6aa12ed3970a339ecad83d02",
"author": "mradermacher",
"cardData": {
"base_model": "Cyclone-Labs/Eon-Blossom-31B",
"language": [
"en"
],
"library_name": "transformers",
"license": "apache-2.0",
"mradermacher": {
"readme_rev": 1
},
"quantized_by": "mradermacher",
"tags": [
"mergekit",
"merge",
"roleplay",
"storytelling"
]
},
"createdAt": "2026-09-09T10:02:59.000Z",
"downloads": 5297,
"gated": false,
"id": "mradermacher/Eon-Blossom-31B-i1-GGUF",
"lastModified": "2026-09-09T12:20:34.000Z",
"library_name": "transformers",
"likes": 0,
"modelId": "mradermacher/Eon-Blossom-31B-i1-GGUF",
"private": false,
"sha": "f24151d4706d0c2f71d38c9e6068cf979cd7ec82",
"siblings": [
{
"rfilename": ".gitattributes"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ1_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ1_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_XXS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_XXS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ4_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q2_K.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q2_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_L.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_0.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_1.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q5_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q5_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q6_K.gguf"
},
{
"rfilename": "Eon-Blossom-31B.imatrix.gguf"
},
{
"rfilename": "README.md"
}
],
"tags": [
"transformers",
"gguf",
"mergekit",
"merge",
"roleplay",
"storytelling",
"en",
"base_model:Cyclone-Labs/Eon-Blossom-31B",
"base_model:quantized:Cyclone-Labs/Eon-Blossom-31B",
"license:apache-2.0",
"endpoints_compatible",
"region:us",
"imatrix",
"conversational"
]
} | — |
| Downloads downloads not compared | GGUF quantisations | 1597receipt
What the source handed over{
"_id": "6aa128d4b2dad483dfe9aab7",
"author": "mradermacher",
"cardData": {
"base_model": "Cyclone-Labs/Eon-Blossom-31B",
"language": [
"en"
],
"library_name": "transformers",
"license": "apache-2.0",
"mradermacher": {
"readme_rev": 1
},
"quantized_by": "mradermacher",
"tags": [
"mergekit",
"merge",
"roleplay",
"storytelling"
]
},
"createdAt": "2026-09-09T09:37:24.000Z",
"downloads": 1597,
"gated": false,
"id": "mradermacher/Eon-Blossom-31B-GGUF",
"lastModified": "2026-09-09T10:15:22.000Z",
"library_name": "transformers",
"likes": 0,
"modelId": "mradermacher/Eon-Blossom-31B-GGUF",
"private": false,
"sha": "b406fec4cb8fd78600bcb20ac74883a656bcea1d",
"siblings": [
{
"rfilename": ".gitattributes"
},
{
"rfilename": "Eon-Blossom-31B.IQ4_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.Q2_K.gguf"
},
{
"rfilename": "Eon-Blossom-31B.Q3_K_L.gguf"
},
{
"rfilename": "Eon-Blossom-31B.Q3_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.Q3_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.Q4_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.Q4_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.Q5_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.Q5_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.Q6_K.gguf"
},
{
"rfilename": "Eon-Blossom-31B.Q8_0.gguf"
},
{
"rfilename": "Eon-Blossom-31B.mmproj-Q8_0.gguf"
},
{
"rfilename": "Eon-Blossom-31B.mmproj-f16.gguf"
},
{
"rfilename": "README.md"
}
],
"tags": [
"transformers",
"gguf",
"mergekit",
"merge",
"roleplay",
"storytelling",
"en",
"base_model:Cyclone-Labs/Eon-Blossom-31B",
"base_model:quantized:Cyclone-Labs/Eon-Blossom-31B",
"license:apache-2.0",
"endpoints_compatible",
"region:us",
"conversational"
]
} | — |
| Downloads downloads not compared | 5297receipt
What the source handed over{
"_id": "6aa12ed3970a339ecad83d02",
"author": "mradermacher",
"cardData": {
"base_model": "Cyclone-Labs/Eon-Blossom-31B",
"language": [
"en"
],
"library_name": "transformers",
"license": "apache-2.0",
"mradermacher": {
"readme_rev": 1
},
"quantized_by": "mradermacher",
"tags": [
"mergekit",
"merge",
"roleplay",
"storytelling"
]
},
"createdAt": "2026-09-09T10:02:59.000Z",
"downloads": 5297,
"gated": false,
"id": "mradermacher/Eon-Blossom-31B-i1-GGUF",
"lastModified": "2026-09-09T12:20:34.000Z",
"library_name": "transformers",
"likes": 0,
"modelId": "mradermacher/Eon-Blossom-31B-i1-GGUF",
"private": false,
"sha": "f24151d4706d0c2f71d38c9e6068cf979cd7ec82",
"siblings": [
{
"rfilename": ".gitattributes"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ1_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ1_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_XXS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_XXS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ4_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q2_K.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q2_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_L.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_0.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_1.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q5_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q5_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q6_K.gguf"
},
{
"rfilename": "Eon-Blossom-31B.imatrix.gguf"
},
{
"rfilename": "README.md"
}
],
"tags": [
"transformers",
"gguf",
"mergekit",
"merge",
"roleplay",
"storytelling",
"en",
"base_model:Cyclone-Labs/Eon-Blossom-31B",
"base_model:quantized:Cyclone-Labs/Eon-Blossom-31B",
"license:apache-2.0",
"endpoints_compatible",
"region:us",
"imatrix",
"conversational"
]
} | — | |
| Downloads downloads not compared | Hugging Face models | 55receipt
This source has not kept a receipt for this claim yet. The next update that reads it will. | — |
| Downloads downloads not compared | 60receipt
What the source handed over{
"_asked": "Cyclone-Labs/Eon-Blossom-31B",
"_id": "6aa059a9ddd72a4e5fe7745a",
"author": "Cyclone-Labs",
"cardData": {
"base_model": [
"LatitudeGames/Equinox-31B",
"zerofata/G4-MeroMero-v2-31B",
"Darkhn/Gemma-4-31B-Animus-V15.0",
"ReadyArt/gemma-4-31B-it-scotoma-2"
],
"library_name": "transformers",
"license": "apache-2.0",
"new_version": "Cyclone-Labs/Eon-Blossom-V2-31B",
"tags": [
"mergekit",
"merge",
"roleplay",
"storytelling"
]
},
"config": {
"architectures": [
"Gemma4ForConditionalGeneration"
],
"chat_template_jinja": "{#\n Template: Google Gemma 4 Canonical Chat Template\n Author: Google Gemma Engineering Team\n Published: 2026-07-09\n Context: Fixed tool-calling loops, turn closures, and thinking content-ordering.\n#}\n{%- macro format_parameters(properties, required, filter_keys=false) -%}\n {%- set standard_keys = ['description', 'type', 'properties', 'required', 'nullable'] -%}\n {%- set ns = namespace(found_first=false) -%}\n {%- for key, value in properties | dictsort -%}\n {%- set add_comma = false -%}\n {%- if not filter_keys or key not in standard_keys -%}\n {%- if ns.found_first %},{% endif -%}\n {%- set ns.found_first = true -%}\n {{ key }}:{\n {%- if value['description'] -%}\n description:<|\"|>{{ value['description'] }}<|\"|>\n {%- set add_comma = true -%}\n {%- endif -%}\n {%- if value['type'] | upper == 'STRING' -%}\n {%- if value['enum'] -%}\n {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}\n enum:{{ format_argument(value['enum']) }}\n {%- endif -%}\n {%- elif value['type'] | upper == 'ARRAY' -%}\n {%- if value['items'] is mapping and value['items'] -%}\n {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}\n items:{\n {%- set ns_items = namespace(found_first=false) -%}\n {%- for item_key, item_value in value['items'] | dictsort -%}\n {%- if item_value is not none -%}\n {%- if ns_items.found_first %},{% endif -%}\n {%- set ns_items.found_first = true -%}\n {%- if item_key == 'properties' -%}\n properties:{\n {%- if item_value is mapping -%}\n {{- format_parameters(item_value, value['items']['required'] | default([])) -}}\n {%- endif -%}\n }\n {%- elif item_key == 'required' -%}\n required:[\n {%- for req_item in item_value -%}\n <|\"|>{{- req_item -}}<|\"|>\n {%- if not loop.last %},{% endif -%}\n {%- endfor -%}\n ]\n {%- elif item_key == 'type' -%}\n {%- if item_value is string -%}\n type:{{ format_argument(item_value | upper) }}\n {%- else -%}\n type:{{ format_argument(item_value | map('upper') | list) }}\n {%- endif -%}\n {%- else -%}\n {{ item_key }}:{{ format_argument(item_value) }}\n {%- endif -%}\n {%- endif -%}\n {%- endfor -%}\n }\n {%- endif -%}\n {%- endif -%}\n {%- if value['nullable'] %}\n {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}\n nullable:true\n {%- endif -%}\n {%- if value['type'] | upper == 'OBJECT' -%}\n {%- if value['properties'] is defined and value['properties'] is mapping -%}\n {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}\n properties:{\n {{- format_parameters(value['properties'], value['required'] | default([])) -}}\n }\n {%- elif value is mapping -%}\n {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}\n properties:{\n {{- format_parameters(value, value['required'] | default([]), filter_keys=true) -}}\n }\n {%- endif -%}\n {%- if value['required'] -%}\n {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}\n required:[\n {%- for item in value['required'] | default([]) -%}\n <|\"|>{{- item -}}<|\"|>\n {%- if not loop.last %},{% endif -%}\n {%- endfor -%}\n ]\n {%- endif -%}\n {%- endif -%}\n {%- if add_comma %},{%- else -%} {%- set add_comma = true -%} {% endif -%}\n type:<|\"|>{{ value['type'] | upper }}<|\"|>}\n {%- endif -%}\n {%- endfor -%}\n{%- endmacro -%}\n{%- macro format_function_declaration(tool_data) -%}\n declaration:{{- tool_data['function']['name'] -}}{description:<|\"|>{{- tool_data['function']['description'] -}}<|\"|>\n {%- set params = tool_data['function']['parameters'] -%}\n {%- if params -%}\n ,parameters:{\n {%- if params['properties'] -%}\n properties:{ {{- format_parameters(params['properties'], params['required']) -}} },\n {%- endif -%}\n {%- if params['required'] -%}\n required:[\n {%- for item in params['required'] -%}\n <|\"|>{{- item -}}<|\"|>\n {{- ',' if not loop.last -}}\n {%- endfor -%}\n ],\n {%- endif -%}\n {%- if params['type'] -%}\n type:<|\"|>{{- params['type'] | upper -}}<|\"|>}\n {%- endif -%}\n {%- endif -%}\n {%- if 'response' in tool_data['function'] -%}\n {%- set response_declaration = tool_data['function']['response'] -%}\n ,response:{\n {%- if response_declaration['description'] -%}\n description:<|\"|>{{- response_declaration['description'] -}}<|\"|>,\n {%- endif -%}\n {%- if response_declaration['type'] | upper == 'OBJECT' -%}\n type:<|\"|>{{- response_declaration['type'] | upper -}}<|\"|>}\n {%- endif -%}\n {%- endif -%}\n }\n{%- endmacro -%}\n{%- macro format_argument(argument, escape_keys=True) -%}\n {%- if argument is none -%}\n {{- 'null' -}}\n {%- elif argument is string -%}\n {{- '<|\"|>' + argument + '<|\"|>' -}}\n {%- elif argument is boolean -%}\n {{- 'true' if argument else 'false' -}}\n {%- elif argument is mapping -%}\n {{- '{' -}}\n {%- set ns = namespace(found_first=false) -%}\n {%- for key, value in argument | dictsort -%}\n {%- if ns.found_first %},{% endif -%}\n {%- set ns.found_first = true -%}\n {%- if escape_keys -%}\n {{- '<|\"|>' + key + '<|\"|>' -}}\n {%- else -%}\n {{- key -}}\n {%- endif -%}\n :{{- format_argument(value, escape_keys=escape_keys) -}}\n {%- endfor -%}\n {{- '}' -}}\n {%- elif argument is sequence -%}\n {{- '[' -}}\n {%- for item in argument -%}\n {{- format_argument(item, escape_keys=escape_keys) -}}\n {%- if not loop.last %},{% endif -%}\n {%- endfor -%}\n {{- ']' -}}\n {%- else -%}\n {{- argument -}}\n {%- endif -%}\n{%- endmacro -%}\n{%- macro strip_thinking(text) -%}\n {%- set ns = namespace(result='') -%}\n {%- for part in text.split('<channel|>') -%}\n {%- if '<|channel>' in part -%}\n {%- set ns.result = ns.result + part.split('<|channel>')[0] -%}\n {%- else -%}\n {%- set ns.result = ns.result + part -%}\n {%- endif -%}\n {%- endfor -%}\n {{- ns.result | trim -}}\n{%- endmacro -%}\n\n{%- macro format_tool_response_block(tool_name, response) -%}\n {{- '<|tool_response>' -}}\n {%- if response is mapping -%}\n {{- 'response:' + tool_name + '{' -}}\n {%- for key, value in response | dictsort -%}\n {{- key -}}:{{- format_argument(value, escape_keys=False) -}}\n {%- if not loop.last %},{% endif -%}\n {%- endfor -%}\n {{- '}' -}}\n {%- else -%}\n {{- 'response:' + tool_name + '{value:' + format_argument(response, escape_keys=False) + '}' -}}\n {%- endif -%}\n {{- '<tool_response|>' -}}\n{%- endmacro -%}\n\n{#- ===== SETUP ===== -#}\n{%- set ns = namespace(prev_message_type=None, prev_non_tool_role=None) -%}\n{%- set loop_messages = messages -%}\n{%- set enable_thinking = enable_thinking | default(false) -%}\n{%- set preserve_thinking = preserve_thinking | default(false) -%}\n{{- bos_token -}}\n{#- Handle System/Tool Definitions Block -#}\n{%- if enable_thinking or tools or (messages and messages[0]['role'] in ['system', 'developer']) -%}\n {{- '<|turn>system\\n' -}}\n {#- Inject Thinking token at the very top of the FIRST system turn -#}\n {%- if enable_thinking -%}\n {{- '<|think|>\\n' -}}\n {%- set ns.prev_message_type = 'think' -%}\n {%- endif -%}\n {%- if messages and messages[0]['role'] in ['system', 'developer'] -%}\n {%- if messages[0]['content'] is string -%}\n {{- messages[0]['content'] | trim -}}\n {%- elif messages[0]['content'] is sequence -%}\n {%- for item in messages[0]['content'] -%}\n {{- item['text'] | trim + ' '-}}\n {%- endfor -%}\n {%- endif -%}\n {%- set loop_messages = messages[1:] -%}\n {%- endif -%}\n {%- if tools -%}\n {%- for tool in tools %}\n {{- '<|tool>' -}}\n {{- format_function_declaration(tool) | trim -}}\n {{- '<tool|>' -}}\n {%- endfor %}\n {%- set ns.prev_message_type = 'tool' -%}\n {%- endif -%}\n {{- '<turn|>\\n' -}}\n{%- endif %}\n\n{#- Pre-scan: find last user message index for reasoning guard -#}\n{%- set ns_turn = namespace(last_user_idx=-1) -%}\n{%- for i in range(loop_messages | length) -%}\n {%- if loop_messages[i]['role'] == 'user' -%}\n {%- set ns_turn.last_user_idx = i -%}\n {%- endif -%}\n{%- endfor -%}\n\n{#- Loop through messages -#}\n{%- for message in loop_messages -%}\n {%- if message['role'] != 'tool' -%}\n {%- set ns.prev_message_type = None -%}\n {%- set role = 'model' if message['role'] == 'assistant' else message['role'] -%}\n {#- Detect continuation using tracked state — O(1) instead of O(n) backward scan -#}\n {%- set continue_same_model_turn = (role == 'model' and ns.prev_non_tool_role == 'assistant') -%}\n {%- if not continue_same_model_turn -%}\n {{- '<|turn>' + role + '\\n' }}\n\n {%- endif -%}\n\n {#- Render reasoning/reasoning_content as thinking channel -#}\n {%- set thinking_text = message.get('reasoning') or message.get('reasoning_content') -%}\n {%- set thinking_gate = (loop.index0 > ns_turn.last_user_idx) or (preserve_thinking and message.get('tool_calls')) -%}\n {%- if thinking_text and thinking_gate -%}\n {{- '<|channel>thought\\n' + thinking_text + '\\n<channel|>' -}}\n {%- endif -%}\n\n {%- if message.get('tool_calls') -%}\n {%- for tool_call in message.get('tool_calls') -%}\n {%- set function = tool_call['function'] -%}\n {{- '<|tool_call>call:' + function['name'] + '{' -}}\n {%- if function['arguments'] is mapping -%}\n {%- set ns_args = namespace(found_first=false) -%}\n {%- for key, value in function['arguments'] | dictsort -%}\n {%- if ns_args.found_first %},{% endif -%}\n {%- set ns_args.found_first = true -%}\n {{- key -}}:{{- format_argument(value, escape_keys=False) -}}\n {%- endfor -%}\n {%- elif function['arguments'] is none -%}\n {%- else -%}\n {{- raise_exception(\n \"chat_template: tool_calls[].function.arguments must be a \"\n \"JSON object (mapping), not a string. Deserialize arguments \"\n \"before passing to the template.\"\n ) -}}\n {%- endif -%}\n {{- '}<tool_call|>' -}}\n {%- endfor -%}\n {%- set ns.prev_message_type = 'tool_call' -%}\n {%- endif -%}\n\n {%- set ns_tr_out = namespace(flag=false) -%}\n {%- if message.get('tool_responses') -%}\n {#- Legacy: tool_responses embedded on the assistant message (Google/Gemma native) -#}\n {%- for tool_response in message.get('tool_responses') -%}\n {{- format_tool_response_block(tool_response['name'] | default('unknown', true), tool_response['response']) -}}\n {%- set ns_tr_out.flag = true -%}\n {%- set ns.prev_message_type = 'tool_response' -%}\n {%- endfor -%}\n {%- elif message.get('tool_calls') -%}\n {#- OpenAI Chat Completions: forward-scan consecutive role:tool messages -#}\n {%- set ns_tool_scan = namespace(stopped=false) -%}\n {%- for k in range(loop.index0 + 1, loop_messages | length) -%}\n {%- if ns_tool_scan.stopped -%}\n {%- elif loop_messages[k]['role'] != 'tool' -%}\n {%- set ns_tool_scan.stopped = true -%}\n {%- else -%}\n {%- set follow = loop_messages[k] -%}\n {#- Resolve tool_call_id to function name -#}\n {%- set ns_tname = namespace(name=follow.get('name') or 'unknown') -%}\n {%- for tc in message.get('tool_calls') -%}\n {%- if tc.get('id') == follow.get('tool_call_id') -%}\n {%- set ns_tname.name = tc['function']['name'] -%}\n {%- endif -%}\n {%- endfor -%}\n {#- Handle content as string or content-parts array -#}\n {%- set tool_body = follow.get('content') -%}\n {%- if tool_body is string -%}\n {{- format_tool_response_block(ns_tname.name, tool_body) -}}\n {%- elif tool_body is sequence and tool_body is not string -%}\n {%- set ns_txt = namespace(s='') -%}\n {%- for part in tool_body -%}\n {%- if part.get('type') == 'text' -%}\n {%- set ns_txt.s = ns_txt.s + (part.get('text') | default('')) -%}\n {%- endif -%}\n {%- endfor -%}\n {{- format_tool_response_block(ns_tname.name, ns_txt.s) -}}\n {%- for part in tool_body -%}\n {%- if part.get('type') in ['image', 'image_url'] -%}\n {{- '<|image|>' -}}\n {%- elif part.get('type') in ['audio', 'input_audio'] -%}\n {{- '<|audio|>' -}}\n {%- elif part.get('type') == 'video' -%}\n {{- '<|video|>' -}}\n {%- endif -%}\n {%- endfor -%}\n {%- else -%}\n {{- format_tool_response_block(ns_tname.name, tool_body) -}}\n {%- endif -%}\n {%- set ns_tr_out.flag = true -%}\n {%- set ns.prev_message_type = 'tool_response' -%}\n {%- endif -%}\n {%- endfor -%}\n {%- endif -%}\n\n {%- set captured_content -%}\n {%- if message.get('content') is string -%}\n {%- if role == 'model' -%}\n {{- strip_thinking(message['content']) -}}\n {%- else -%}\n {{- message['content'] | trim -}}\n {%- endif -%}\n {%- elif message.get('content') is sequence -%}\n {%- for item in message['content'] -%}\n {%- if item.get('type') == 'text' -%}\n {%- if role == 'model' -%}\n {{- strip_thinking(item['text']) -}}\n {%- else -%}\n {{- item['text'] | trim -}}\n {%- endif -%}\n {%- elif item.get('type') in ['image', 'image_url'] -%}\n {{- '<|image|>' -}}\n {%- elif item.get('type') in ['audio', 'input_audio'] -%}\n {{- '<|audio|>' -}}\n {%- elif item.get('type') == 'video' -%}\n {{- '<|video|>' -}}\n {%- endif -%}\n {%- endfor -%}\n {%- endif -%}\n {%- endset -%}\n\n {{- captured_content -}}\n {%- set has_content = captured_content | trim | length > 0 -%}\n\n {#- Forward-scan: find next non-tool message role for continuation detection -#}\n {%- set next_nt = namespace(role=None, found=false) -%}\n {%- for j in range(loop.index0 + 1, loop_messages | length) -%}\n {%- if not next_nt.found -%}\n {%- if loop_messages[j]['role'] != 'tool' -%}\n {%- set next_nt.role = loop_messages[j]['role'] -%}\n {%- set next_nt.found = true -%}\n {%- endif -%}\n {%- endif -%}\n {%- endfor -%}\n\n {%- set continues_into_next = (\n role == 'model'\n and next_nt.role == 'assistant'\n and (not message.get('tool_calls') or ns_tr_out.flag)\n ) -%}\n\n {%- if ns.prev_message_type == 'tool_call' and not ns_tr_out.flag -%}\n {{- '<|tool_response>' -}}\n {%- elif continues_into_next -%}\n {%- elif not (ns_tr_out.flag and not has_content and not next_nt.found) -%}\n {{- '<turn|>\\n' -}}\n {%- endif -%}\n\n {#- Track previous non-tool role for next iteration (avoids O(n) backward scan) -#}\n {%- set ns.prev_non_tool_role = message['role'] -%}\n {%- endif -%}\n{%- endfor -%}\n\n{%- if add_generation_prompt -%}\n {%- if ns.prev_message_type != 'tool_response' and ns.prev_message_type != 'tool_call' -%}\n {{- '<|turn>model\\n' -}}\n {%- if not enable_thinking -%}\n {{- '<|channel>thought\\n<channel|>' -}}\n {%- endif -%}\n {%- elif ns.prev_message_type == 'tool_response' and enable_thinking -%}\n {{- '<|channel>thought\\n' -}}\n {%- endif -%}\n{%- endif -%}\n",
"model_type": "gemma4",
"tokenizer_config": {
"bos_token": "<bos>",
"eos_token": "<eos>",
"mask_token": "<mask>",
"pad_token": "<pad>",
"unk_token": "<unk>"
}
},
"createdAt": "2026-09-08T18:53:29.000Z",
"disabled": false,
"downloads": 60,
"gated": false,
"id": "Cyclone-Labs/Eon-Blossom-31B",
"lastModified": "2026-09-11T15:07:40.000Z",
"library_name": "transformers",
"likes": 0,
"mask_token": "<mask>",
"model-index": null,
"modelId": "Cyclone-Labs/Eon-Blossom-31B",
"pipeline_tag": "image-text-to-text",
"private": false,
"safetensors": {
"parameters": {
"BF16": 31273088876
},
"total": 31273088876
},
"sha": "03ce4616548d82f74756b73967b09d7d90bca4ce",
"siblings": [
{
"rfilename": ".gitattributes"
},
{
"rfilename": "README.md"
},
{
"rfilename": "chat_template.jinja"
},
{
"rfilename": "config.json"
},
{
"rfilename": "generation_config.json"
},
{
"rfilename": "mergekit_config.yml"
},
{
"rfilename": "model-00001-of-00013.safetensors"
},
{
"rfilename": "model-00002-of-00013.safetensors"
},
{
"rfilename": "model-00003-of-00013.safetensors"
},
{
"rfilename": "model-00004-of-00013.safetensors"
},
{
"rfilename": "model-00005-of-00013.safetensors"
},
{
"rfilename": "model-00006-of-00013.safetensors"
},
{
"rfilename": "model-00007-of-00013.safetensors"
},
{
"rfilename": "model-00008-of-00013.safetensors"
},
{
"rfilename": "model-00009-of-00013.safetensors"
},
{
"rfilename": "model-00010-of-00013.safetensors"
},
{
"rfilename": "model-00011-of-00013.safetensors"
},
{
"rfilename": "model-00012-of-00013.safetensors"
},
{
"rfilename": "model-00013-of-00013.safetensors"
},
{
"rfilename": "model.safetensors.index.json"
},
{
"rfilename": "processor_config.json"
},
{
"rfilename": "tokenizer.json"
},
{
"rfilename": "tokenizer_config.json"
}
],
"spaces": [],
"tags": [
"transformers",
"safetensors",
"gemma4",
"image-text-to-text",
"mergekit",
"merge",
"roleplay",
"storytelling",
"conversational",
"base_model:Darkhn/Gemma-4-31B-Animus-V15.0",
"base_model:merge:Darkhn/Gemma-4-31B-Animus-V15.0",
"base_model:LatitudeGames/Equinox-31B",
"base_model:merge:LatitudeGames/Equinox-31B",
"base_model:ReadyArt/gemma-4-31B-it-scotoma-2",
"base_model:merge:ReadyArt/gemma-4-31B-it-scotoma-2",
"base_model:zerofata/G4-MeroMero-v2-31B",
"base_model:merge:zerofata/G4-MeroMero-v2-31B",
"license:apache-2.0",
"endpoints_compatible",
"region:us"
],
"transformersInfo": {
"auto_model": "AutoModelForMultimodalLM",
"pipeline_tag": "image-text-to-text",
"processor": "AutoProcessor"
},
"usedStorage": 62578506090,
"widgetData": [
{
"text": "Hi, what can you help me with?"
},
{
"text": "What is 84 * 3 / 2?"
},
{
"text": "Tell me an interesting fact about the universe!"
},
{
"text": "Explain quantum computing in simple terms."
}
]
} | — | |
| Gated gated | Hugging Face models | falsereceipt
This source has not kept a receipt for this claim yet. The next update that reads it will. | — |
| Licence licence | GGUF quantisations | apache-2.0receipt
What the source handed over{
"_id": "6aa12ed3970a339ecad83d02",
"author": "mradermacher",
"cardData": {
"base_model": "Cyclone-Labs/Eon-Blossom-31B",
"language": [
"en"
],
"library_name": "transformers",
"license": "apache-2.0",
"mradermacher": {
"readme_rev": 1
},
"quantized_by": "mradermacher",
"tags": [
"mergekit",
"merge",
"roleplay",
"storytelling"
]
},
"createdAt": "2026-09-09T10:02:59.000Z",
"downloads": 5297,
"gated": false,
"id": "mradermacher/Eon-Blossom-31B-i1-GGUF",
"lastModified": "2026-09-09T12:20:34.000Z",
"library_name": "transformers",
"likes": 0,
"modelId": "mradermacher/Eon-Blossom-31B-i1-GGUF",
"private": false,
"sha": "f24151d4706d0c2f71d38c9e6068cf979cd7ec82",
"siblings": [
{
"rfilename": ".gitattributes"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ1_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ1_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_XXS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_XXS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ4_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q2_K.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q2_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_L.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_0.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_1.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q5_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q5_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q6_K.gguf"
},
{
"rfilename": "Eon-Blossom-31B.imatrix.gguf"
},
{
"rfilename": "README.md"
}
],
"tags": [
"transformers",
"gguf",
"mergekit",
"merge",
"roleplay",
"storytelling",
"en",
"base_model:Cyclone-Labs/Eon-Blossom-31B",
"base_model:quantized:Cyclone-Labs/Eon-Blossom-31B",
"license:apache-2.0",
"endpoints_compatible",
"region:us",
"imatrix",
"conversational"
]
} | — |
| Licence licence | Hugging Face models | apache-2.0receipt
This source has not kept a receipt for this claim yet. The next update that reads it will. | — |
| Likes likes | GGUF quantisations | 0receipt
What the source handed over{
"_id": "6aa12ed3970a339ecad83d02",
"author": "mradermacher",
"cardData": {
"base_model": "Cyclone-Labs/Eon-Blossom-31B",
"language": [
"en"
],
"library_name": "transformers",
"license": "apache-2.0",
"mradermacher": {
"readme_rev": 1
},
"quantized_by": "mradermacher",
"tags": [
"mergekit",
"merge",
"roleplay",
"storytelling"
]
},
"createdAt": "2026-09-09T10:02:59.000Z",
"downloads": 5297,
"gated": false,
"id": "mradermacher/Eon-Blossom-31B-i1-GGUF",
"lastModified": "2026-09-09T12:20:34.000Z",
"library_name": "transformers",
"likes": 0,
"modelId": "mradermacher/Eon-Blossom-31B-i1-GGUF",
"private": false,
"sha": "f24151d4706d0c2f71d38c9e6068cf979cd7ec82",
"siblings": [
{
"rfilename": ".gitattributes"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ1_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ1_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ2_XXS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ3_XXS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-IQ4_XS.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q2_K.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q2_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_L.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q3_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_0.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_1.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q4_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q5_K_M.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q5_K_S.gguf"
},
{
"rfilename": "Eon-Blossom-31B.i1-Q6_K.gguf"
},
{
"rfilename": "Eon-Blossom-31B.imatrix.gguf"
},
{
"rfilename": "README.md"
}
],
"tags": [
"transformers",
"gguf",
"mergekit",
"merge",
"roleplay",
"storytelling",
"en",
"base_model:Cyclone-Labs/Eon-Blossom-31B",
"base_model:quantized:Cyclone-Labs/Eon-Blossom-31B",
"license:apache-2.0",
"endpoints_compatible",
"region:us",
"imatrix",
"conversational"
]
} | — |
| Likes likes | Hugging Face models | 0receipt
This source has not kept a receipt for this claim yet. The next update that reads it will. | — |
| Task task | Hugging Face models | image-text-to-textreceipt
This source has not kept a receipt for this claim yet. The next update that reads it will. | — |
model
| Cyclone-Labs/Eon-Blossom-31B zetlyn/models-hf · 2026-09-08 | author Cyclone-Labs downloads 55 gated false licence apache-2.0 likes 0 task image-text-to-text | source |
| Cyclone-Labs/Eon-Blossom-31B zetlyn/models-hf · 2026-09-08 | author Cyclone-Labs downloads 60 gated false licence apache-2.0 likes 0 task image-text-to-text | source |
quantisation
| mradermacher/Eon-Blossom-31B-i1-GGUF zetlyn/models-gguf · 2026-09-09 | author mradermacher base Cyclone-Labs/Eon-Blossom-31B downloads 5297 licence apache-2.0 likes 0 | source |
| mradermacher/Eon-Blossom-31B-GGUF zetlyn/models-gguf · 2026-09-09 | author mradermacher base Cyclone-Labs/Eon-Blossom-31B downloads 1597 licence apache-2.0 likes 0 | source |