Downloads · 30 days
301
29% of all-time downloads
DavidAU/granite-4.1-8b-Claude-Opus-4.6-Thinking-MAX
granite-4.1-8b-Claude-Opus-4.6-Thinking-MAX is a text generation model from DavidAU. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as apache-2.0.
<small<B style="font-family: 'Arial Black', sans-serif; font-weight: 900; color: f1c40f; text-decoration: none; text-shadow: 1px 1px 0 d35400, 2px 2px 0 d35400, 3px 3px 0 d35400, 4px 4px 0 d35400, 5px 5px 0 d35400, 6p…
Downloads · 30 days
301
29% of all-time downloads
All-time downloads
1.1K
Public
Parameters
8.8B
17.6 GB on disk
Likes
7
Public
Click a slice to open those files.
.safetensors17.6 GB · 100%
From the Hugging Face model README
<small><B style="font-family: 'Arial Black', sans-serif; font-weight: 900; color: #f1c40f; text-decoration: none; text-shadow: 1px 1px 0 #d35400, 2px 2px 0 #d35400, 3px 3px 0 #d35400, 4px 4px 0 #d35400, 5px 5px 0 #d35400, 6px 6px 7px rgba(0,0,0,0.4);">[DavidAU]</B> <a href="https://huggingface.co/DavidAU" target="_blank" style="padding-left:5px">FOLLOW</a> | <a href="https://huggingface.co/DavidAU" target="_blank">ALL MODELS</a> | <a href="https://huggingface.co/DavidAU/collections" target="_blank">COLLECTIONS</a> | <a href="https://huggingface.co/models?sort=trending&search=DavidAU" target="_blank">TRENDING</a> | <a href="https://huggingface.co/DavidAU/support" target="_blank">FAQs</a> | <a href="https://huggingface.co/DavidAU/support" target="_blank">SUPPORT</a> | <a href="https://buymeacoffee.com/davidbelton" target="_blank">Buy Me A Coffee (😁)</a></small>
<h2>granite-4.1-8b-Claude-Opus-4.6-Thinking-MAX</h2>Training via Unsloth on 3k dataset to change model from "instruct" to "thinking" using Polaris (general, non reasoning but high quality), GLM 4.7 (reasoning/general) and Claude Opus 4.6 (reasoning specific) trained on local hardware.
Benchmarks, org info on this model and TWO general example generations (at Q4_K_S non imatrix) below.
The third example (at Q4_K_S non imatrix) is very complex (5 scene fictional compression), multi-step test with a large prompt (8k) and very specific requirements. This is a very hard test, and will produce stronger results at Q8 and full precision.
However, even at Q4_K_S, the model does a good job handling this challenge.
WARNING: Example 3 contains graphic imagery, swearing and "coarse" content.
<B>SETTINGS AND NOTES:</B>
Q4_K_S (1/4 the size of full precision model) quant will give you an idea of AVERAGE results ; every quant above this will give you BETTER results.
Enjoy.
BENCHMARKS by Nightmedia:
arc-c arc/e boolq hswag obkqa piqa wino
FINE TUNED MODEL:
granite-4.1-8b-Claude-Opus-4.6-Thinking-MAX
mxfp8 0.503,0.650,0.865,0.676,0.422,0.789,0.689
BASE UNTUNED MODEL:
granite-4.1-8b (by IBM) [instruct]
mxfp8 0.486,0.666,0.875,0.636,0.450,0.766,0.631
( https://huggingface.co/ibm-granite/granite-4.1-8b )
Model Summary: Granite-4.1-8B is a 8B parameter long-context instruct model finetuned from Granite-4.1-8B-Base using a combination of open source instruction datasets with permissive license and internally collected synthetic datasets. Granite 4.1 models have gone through an improved post-training pipeline, including supervised finetuning and reinforcement learning alignment, resulting in enhanced tool calling, instruction following, and chat capabilities.
Supported Languages: English, German, Spanish, French, Japanese, Portuguese, Arabic, Czech, Italian, Korean, Dutch, and Chinese. Users may finetune Granite 4.1 models for languages beyond these languages.
Intended use: The model is designed to follow general instructions and can serve as the foundation for AI assistants across diverse domains, including business applications, as well as for LLM agents equipped with tool-use capabilities.
Capabilities
Generation: This is a simple example of how to use Granite-4.1-8B model.
Install the following libraries:
pip install torch torchvision torchaudio
pip install accelerate
pip install transformers
Then, copy the snippet from the section that is relevant for your use case.
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
device = "cuda"
model_path = "ibm-granite/granite-4.1-8b"
tokenizer = AutoTokenizer.from_pretrained(model_path)
# drop device_map if running on CPU
model = AutoModelForCausalLM.from_pretrained(model_path, device_map=device)
model.eval()
# change input text as desired
chat = [
{ "role": "user", "content": "Please list one IBM Research laboratory located in the United States. You should only output its name and location." },
]
chat = tokenizer.apply_chat_template(chat, tokenize=False, add_generation_prompt=True)
# tokenize the text
input_tokens = tokenizer(chat, return_tensors="pt").to(device)
# generate output tokens
output = model.generate(**input_tokens,
max_new_tokens=100)
# decode output tokens into text
output = tokenizer.batch_decode(output)
# print output
print(output[0])
Expected output:
<|start_of_role|>user<|end_of_role|>Please list one IBM Research laboratory located in the United States. You should only output its name and location.<|end_of_text|>
<|start_of_role|>assistant<|end_of_role|>IBM Almaden Research Laboratory, San Jose, California, United States.<|end_of_text|>
<!-- 📣 **Update [2025-10-07]:** Added a *default system prompt* to the chat template to guide the model towards more *professional, accurate, and safe* responses. -->
Tool-calling: Granite-4.1-8B comes with enhanced tool calling capabilities, enabling seamless integration with external functions and APIs. To define a list of tools please follow OpenAI's function definition schema.
This is an example of how to use Granite-4.1-8B model tool-calling ability:
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
device = "cuda"
model_path = "ibm-granite/granite-4.1-8b"
tokenizer = AutoTokenizer.from_pretrained(model_path)
# drop device_map if running on CPU
model = AutoModelForCausalLM.from_pretrained(model_path, device_map=device)
model.eval()
tools = [
{
"type": "function",
"function": {
"name": "get_current_weather",
"description": "Get the current weather for a specified city.",
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "Name of the city"
}
},
"required": ["city"]
}
}
}
]
# change input text as desired
chat = [
{ "role": "user", "content": "What's the weather like in Boston right now?" },
]
chat = tokenizer.apply_chat_template(chat, \
tokenize=False, \
tools=tools, \
add_generation_prompt=True)
# tokenize the text
input_tokens = tokenizer(chat, return_tensors="pt").to(device)
# generate output tokens
output = model.generate(**input_tokens,
max_new_tokens=100)
# decode output tokens into text
output = tokenizer.batch_decode(output)
# print output
print(output[0])
Expected output:
<|start_of_role|>system<|end_of_role|>You are a helpful assistant with access to the following tools. You may call one or more tools to assist with the user query.
You are provided with function signatures within <tools></tools> XML tags:
<tools>
{"type": "function", "function": {"name": "get_current_weather", "description": "Get the current weather for a specified city.", "parameters": {"type": "object", "properties": {"city": {"type": "string", "description": "Name of the city"}}, "required": ["city"]}}}
</tools>
For each tool call, return a json object with function name and arguments within <tool_call></tool_call> XML tags:
<tool_call>
{"name": <function-name>, "arguments": <args-json-object>}
</tool_call>. If a tool does not exist in the provided list of tools, notify the user that you do not have the ability to fulfill the request.<|end_of_text|>
<|start_of_role|>user<|end_of_role|>What's the weather like in Boston right now?<|end_of_text|>
<|start_of_role|>assistant<|end_of_role|><tool_call>
{"name": "get_current_weather", "arguments": {"city": "Boston"}}
</tool_call><|end_of_text|>
<!-- **Retrieval Augmented Generation:**
*Coming soon* -->
Evaluation Results:
<table> <!-- <caption><b> All Results</b></caption> --> <thead> <tr> <th style="text-align:left; background-color: #001d6c; color: white;">Benchmarks</th> <th style="text-align:left; background-color: #001d6c; color: white;">Metric</th> <th style="text-align:center; background-color: #001d6c; color: white;">3B Dense</th> <th style="text-align:center; background-color: #001d6c; color: white;">8B Dense</th> <th style="text-align:center; background-color: #001d6c; color: white;">30B Dense</th> </tr> </thead> <tbody> <tr> <td colspan="5" style="text-align:center; background-color: #FFFFFF; color: #2D2D2D; font-style:italic;"> General Tasks </td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">MMLU</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">5-shot</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">67.02</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">73.84</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">80.16</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">MMLU-Pro</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">5-shot, CoT</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">49.83</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">55.99</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">64.09</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">BBH</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">3-shot, CoT</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">75.83</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">80.51</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">83.74</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">AGI EVAL</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">0-shot, CoT</td> <td style="text-align:right; background-color:#FFFFFF; color: #2D2D2D;">65.16</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">72.43</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">77.80</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">GPQA</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">0-shot, CoT</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">31.70</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">41.96</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">45.76</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">SimpleQA</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;"></td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">3.68</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">4.82</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">6.81</td> </tr> <tr> <td colspan="5" style="text-align:center; background-color: #FFFFFF; color: #2D2D2D; font-style:italic;"> Alignment Tasks </td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">AlpacaEval 2.0</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;"></td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">38.57</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">50.08</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">56.16</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">IFEval Avg</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;"></td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">82.30</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">87.06</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">89.65</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">ArenaHard</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;"></td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">37.80</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">68.98</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">71.02</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">MTBench Avg</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;"></td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">7.57</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">8.61</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">8.61</td> </tr> <tr> <td colspan="5" style="text-align:center; background-color: #FFFFFF; color: #2D2D2D; font-style:italic;"> Math Tasks </td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">GSM8K</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">8-shot</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">86.88</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">92.49</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">94.16</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">GSM Symbolic</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">8-shot</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">81.32</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">83.70</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">75.70</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">Minerva Math</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">0-shot, CoT</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">67.94</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">80.10</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">81.32</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">DeepMind Math</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">0-shot, CoT</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">64.64</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">80.07</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">81.93</td> </tr> <tr> <td colspan="5" style="text-align:center; background-color: #FFFFFF; color: #2D2D2D; font-style:italic;"> Code Tasks </td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">HumanEval</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">pass@1</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">81.71</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">85.37</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">88.41</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">HumanEval+</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">pass@1</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">76.83</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">79.88</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">85.37</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">MBPP</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">pass@1</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">71.16</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">87.30</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">85.45</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">MBPP+</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">pass@1</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">62.17</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">73.81</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">73.54</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">CRUXEval-O</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">pass@1</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">40.75</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">47.63</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">55.75</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">BigCodeBench</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">pass@1</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">32.19</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">35.00</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">38.77</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">MULTIPLE</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">pass@1</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">52.54</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">60.26</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">62.31</td> </tr> <tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">Eval+ Avg</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">pass@1</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">67.05</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">80.21</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">82.66</td> </tr> <tr> <td colspan="5" style="text-align:center; background-color: #FFFFFF; color: #2D2D2D; font-style:italic;"> Tool Calling Tasks </td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">BFCL v3</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;"></td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">60.80</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">68.27</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">73.68</td> </tr> <tr> <td colspan="5" style="text-align:center; background-color: #FFFFFF; color: #2D2D2D; font-style:italic;"> Multilingual Tasks </td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">MMMLU</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">5-shot</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">57.61</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">64.84</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">73.71</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">INCLUDE</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">5-shot</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">52.05</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">58.89</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">67.26</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">MGSM</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">8-shot</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">70.00</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">82.32</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">71.12</td> </tr> <tr> <td colspan="6" style="text-align:center; background-color: #FFFFFF; color: #2D2D2D; font-style:italic;"> Safety </td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">SALAD-Bench</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;"></td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">93.95</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">95.80</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">96.41</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">AttaQ</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;"></td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">81.88</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">81.19</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">85.76</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">Tulu3 Safety Eval Avg</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;"></td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">66.84</td> <td style="text-align:right; background-color: #DAE8FF; color: #2D2D2D;">75.57</td> <td style="text-align:right; background-color: #FFFFFF; color: #2D2D2D;">78.19</td> </tr> </tbody></table> <table> <caption><b>Multilingual Benchmarks and the included languages:</b></caption> <thead> <tr> <th style="text-align:left; background-color: #001d6c; color: white;">Benchmarks</th> <th style="text-align:left; background-color: #001d6c; color: white;"># Langs</th> <th style="text-align:center; background-color: #001d6c; color: white;">Languages</th> </tr> </thead> <tbody> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">MMMLU</td> <td style="text-align:center; background-color: #FFFFFF; color: #2D2D2D;">11</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">ar, de, en, es, fr, ja, ko, pt, zh, bn, hi</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">INCLUDE</td> <td style="text-align:center; background-color: #FFFFFF; color: #2D2D2D;">14</td> <!-- <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">hindi, bengali, tamil, telugu, arabic, german, spanish, french, italian, japanese, korean, dutch, portuguese, chinese</td> --> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">hi, bn, ta, te, ar, de, es, fr, it, ja, ko, nl, pt, zh</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">MGSM</td> <td style="text-align:center; background-color: #FFFFFF; color: #2D2D2D;">5</td> <td style="text-align:left; background-color: #FFFFFF; color: #2D2D2D;">en, es, fr, ja, zh</td> </tr> </tbody> </table>Model Architecture:
Granite-4.1-8B baseline is built on a decoder-only dense transformer architecture. Core components of this architecture are: GQA, RoPE, MLP with SwiGLU, RMSNorm, and shared input/output embeddings.
<table> <thead> <tr> <th style="text-align:left; background-color: #001d6c; color: white;">Model</th> <th style="text-align:center; background-color: #001d6c; color: white;">3B Dense</th> <th style="text-align:center; background-color: #001d6c; color: white;">8B Dense</th> <th style="text-align:center; background-color: #001d6c; color: white;">30B Dense</th> </tr></thead> <tbody> <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">Embedding size</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">2560</td> <td style="text-align:center; background-color: #DAE8FF; color: black;">4096</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">4096</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">Number of layers</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">40</td> <td style="text-align:center; background-color: #DAE8FF; color: black;">40</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">64</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">Attention head size</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">64</td> <td style="text-align:center; background-color: #DAE8FF; color: black;">128</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">128</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">Number of attention heads</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">40</td> <td style="text-align:center; background-color: #DAE8FF; color: black;">32</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">32</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">Number of KV heads</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">8</td> <td style="text-align:center; background-color: #DAE8FF; color: black;">8</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">8</td> </tr> <!--<tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">Mamba2 state size</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">-</td> <td style="text-align:center; background-color: #DAE8FF; color: black;"></td> <td style="text-align:center; background-color: #FFFFFF; color: black;"></td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">Number of Mamba2 heads</td> <td style="text-align:center; background-color: #FFFFFF; color: black;"></td> <td style="text-align:center; background-color: #DAE8FF; color: black;"></td> <td style="text-align:center; background-color: #FFFFFF; color: black;"></td> </tr>--> <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">MLP / Shared expert hidden size</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">8192</td> <td style="text-align:center; background-color: #DAE8FF; color: black;">12800</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">32768</td> </tr> <!--<tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">Num. Experts</td> <td style="text-align:center; background-color: #FFFFFF; color: black;"></td> <td style="text-align:center; background-color: #DAE8FF; color: black;"></td> <td style="text-align:center; background-color: #FFFFFF; color: black;"></td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">Num. active Experts</td> <td style="text-align:center; background-color: #FFFFFF; color: black;"></td> <td style="text-align:center; background-color: #DAE8FF; color: black;"></td> <td style="text-align:center; background-color: #FFFFFF; color: black;"></td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">Expert hidden size</td> <td style="text-align:center; background-color: #FFFFFF; color: black;"></td> <td style="text-align:center; background-color: #DAE8FF; color: black;"></td> <td style="text-align:center; background-color: #FFFFFF; color: black;"></td> </tr>--> <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">MLP activation</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">SwiGLU</td> <td style="text-align:center; background-color: #DAE8FF; color: black;">SwiGLU</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">SwiGLU</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">Sequence length</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">131072</td> <td style="text-align:center; background-color: #DAE8FF; color: black;">131072</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">131072</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;">Position embedding</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">RoPE</td> <td style="text-align:center; background-color: #DAE8FF; color: black;">RoPE</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">RoPE</td> </tr> <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;"># Parameters</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">3B</td> <td style="text-align:center; background-color: #DAE8FF; color: black;">8B</td> <td style="text-align:center; background-color: #FFFFFF; color: black;">30B</td> </tr> <!-- <tr> <td style="text-align:left; background-color: #FFFFFF; color: black;"># Active parameters</td> <td style="text-align:center; background-color: #FFFFFF; color: black;"></td> <td style="text-align:center; background-color: #DAE8FF; color: black;"></td> <td style="text-align:center; background-color: #FFFFFF; color: black;"></td> </tr>--> </tbody></table>Training Data: Overall, our SFT data is largely comprised of three key sources: (1) publicly available datasets with permissive license, (2) internal synthetic data targeting specific capabilities, and (3) a select set of human-curated data.
Supervised Fine-Tuning and Reinforcement Learning: Instruct model has been fine tuned with significantly improved SFT-pipeline and Reinforcement learning pipelines with high quality mix of various datasets as mentioned above. With rigorous SFT-RL cycles we have improved Granite-4.1 model's tool calling, instruction following and chat capabilities. For further details please check our Granite-4.1 Blog.
Infrastructure: We trained the Granite 4.1 Language Models utilizing an NVIDIA GB200 NVL72 cluster hosted in CoreWeave. Intra-rack communication occurs via the 72-GPU NVLink domain, and a non-blocking, full Fat-Tree NDR 400 Gb/s InfiniBand network provides inter-rack communication. This cluster provides a scalable and efficient infrastructure for training our models over thousands of GPUs.
Ethical Considerations and Limitations: Granite 4.1 Instruction Models are primarily finetuned using instruction-response pairs mostly in English, but also multilingual data covering multiple languages. Although this model can handle multilingual dialog use cases, its performance might not be similar to English tasks. In such cases, introducing a small number of examples (few-shot) can help the model in generating more accurate outputs. While this model has been aligned by keeping safety in consideration, the model may in some cases produce inaccurate, biased, or unsafe responses to user prompts. We urge the community to use this model with proper safety testing and tuning tailored for their specific tasks. To enhance safety in enterprise deployments, we recommend using Granite 4.1 Language models alongside Granite Guardian, a model designed to detect and flag risks in inputs and outputs across key dimensions outlined in the IBM AI Risk Atlas.
Resources
Q4_K_S, non imatrix
NOTE: Some formatting may be lost on copy/paste.
EXAMPLE #1
Explain 10 ways (in extensive detail) to use the "night" time cooling of radiant energy into space to reduce global temperatures. Include charts, and tables.
<think>
Analyze the Request:
Deconstruct the Topic:
Developing the 10 Strategies:
Strategy 1: Passive Radiative Cooling Shingles/Tiles (Building Envelopes).
Strategy 2: Solar-Oriented Radiative Cooling (Selective Reflectors).
Strategy 3: Agricultural Cooling (Greenhouse & Open Fields).
Strategy 4: Road and Infrastructure (Highways & Bridges).
Strategy 5: Ocean/Coastal Interaction (Marine Radiative Cooling).
Strategy 6: High-Altitude Clouds (Stratospheric Albedo Modification).
Strategy 7: Radiative Cooling Windows (Low-Transmittance, High-Emissivity Glass).
Strategy 8: Passive Radiative Coolers on Electric Grid Infrastructure.
Strategy 9: "Nighttime Radiative Cooling of Air (Pulse Cooling)."
Strategy 10: "Space-Based Radiative Cooling" (Satellites or Mirrors).
Structuring the Content (Drafting the "Extensive Detail" response):
Introduction: Briefly define radiative cooling and the "energy balance" (Day vs. Night).
The Physical Principle: Explain Wien's Law and emissivity vs. absorptivity (Kirchhoff's Law).
The 10 Strategies:
Strategy 1: The "Cool Roof" (Nanomaterials).
Strategy 2: The "Selective Mirror" (Solar Panel Cooling).
Strategy 3: The "Greenhouse Net" (Agriculture).
Strategy 4: The "Cooling Tower" (Infrastructure).
Strategy 5: The "Coastal Connection" (Ocean).
Strategy 6: "Radiative Cooling Paint" (Building Walls).
Strategy 7: "The Nighttime Heat Sink" (Air Movement).
Strategy 8: "Space-Based Satellites" (The "Cold Sink").
Strategy 9: "Cooling the Urban Microclimate" (Urban Planning).
Creating Visual Aids (Mental Simulation of Charts/Tables):
Refining the Content:
Final Polish (Reviewing against the prompt):
(Drafting the actual response - which you are seeing now).
(Self-Correction during drafting): I need to be precise about "Passive vs Active." The prompt asks for "10 ways... to reduce global temperatures." Passive radiative cooling is the most scalable answer to this specific question because it doesn't require power. Active cooling (like AC) generates heat. I will emphasize Passive Radiative Cooling technologies.
Let's outline the specific details for the "Night" aspect:
This structure looks solid. I will produce a comprehensive guide.
</think>
Radiative cooling is a passive technology that leverages the fact that all objects emit thermal radiation. Unlike conduction or convection, radiation does not require a medium to travel through and can occur even in a vacuum. This principle is the basis for the IR window (8–13 microns), the atmospheric "gap" where Earth emits energy directly into space.
At night, the Earth cools dramatically because it loses more heat by emitting IR radiation than it absorbs from the atmosphere. This phenomenon can be harnessed to create cooling systems without electricity.
To understand how to use "night time cooling," we must first understand Emissivity and Absorptivity.
According to Kirchhoff's Law of thermal radiation, for a body in thermal equilibrium: $$ \text{Emissivity} (\varepsilon) = \text{Absorptivity} (\alpha) $$
For radiative cooling to be effective at night, the material must have Low Absorptivity (to prevent absorbing heat from the atmosphere/sun during the day) and High Emissivity (to release heat to the sky at night).
The following chart compares the thermal emission properties of common materials in the Infrared (IR) window (8-13 microns).
| Material | Emissivity ($\varepsilon$) | Absorptivity ($\alpha$) | Description |
|---|---|---|---|
| Black Paint | 0.9 (High) | 0.9 (High) | Excellent emitter but absorbs solar heat. |
| Silver | 0.1 (Low) | 0.1 (Low) | Poor emitter, good reflector. |
| Nanomaterials (Quantum Dots/Graphene) | 0.95 (Very High) | 0.2–0.5 (Moderate) | The "Super-Emissivity" materials of the future. |
| Concrete | 0.9–1.0 (High) | 0.8–1.0 (High) | Great for storing heat (bad for night cooling). |
Chart Interpretation: To maximize radiative cooling, we want materials with High Emissivity ($\varepsilon > 0.8$) and Low Absorptivity ($\alpha < 0.4$) in the specific 8-13 micron range.
Here is an extensive guide on the practical applications of this principle to reduce global temperatures, grouped by location.
The largest opportunity for radiative cooling lies in rooftops. Traditional black roofs absorb solar radiation during the day and become extremely hot. At night, they radiate this heat back into the building, causing AC units to work harder.
Solution: Radiative Cooling Shingles.
Solar photovoltaic (PV) panels degrade in performance and degrade in lifespan if they overheat. Radiative cooling can be applied directly to the panel surfaces.
Solution: Selective Coating for PV Panels.
Crops are highly sensitive to temperature. High temperatures can damage yields.
Solution: Radiative Cooling Nets.
Industrial equipment (like transformers and power line substations) generates significant heat.
Solution: Radiative Cooling Vents.
Coastal cities often have a micro-climate advantage. The ocean acts as a massive thermal reservoir.
Solution: Utilizing the Coastal Gradient.
While technically a "day" mechanism (reflecting solar light), high-altitude clouds also affect "night" cooling. If clouds are thin and transparent (like cirrus clouds), they allow IR radiation to escape to space.
Solution: "Nimbus" Cloud Enhancement.
Building walls store heat during the day. Radiative paints can release that heat at night.
Solution: High-Emissivity Paint.
The most scalable method for urban cooling is often overlooked: moving the air.
Solution: Vertical Ventilation.
Windows are the weak spot in building energy efficiency.
Solution: IR-Selective Window Film.
The most futuristic application leverages the fact that the vacuum of space has a temperature of approximately -270 degrees Celsius (2.7 K).
Solution: Space-Based Radiative Cooling Satellites.
The following table compares the potential temperature reduction (°F) of different strategies under ideal night-time conditions.
| Application | Material | Potential Temperature Drop | Implementation Cost | Energy Savings |
|---|---|---|---|---|
| Rooftops | Quantum Dot Shingles | 15–30°F | Medium ($$) | High |
| Solar Panels | Selective Coating | 10–20°F | Low | Moderate |
| Agriculture | Radiative Nets | 10–20°F | Low | Moderate |
| Buildings | High-Emissivity Paint | 10–25°F | Low | Moderate |
| Infrastructure | Radiative Coolers | 5–15°F | Medium | High |
| Coastal | Ocean-Land Exchange | 5–15°F | N/A | N/A |
The effectiveness of radiative cooling relies on a specific window in the infrared spectrum.
Chart: Emission Window vs. Atmospheric Transparency
Wavelength (µm)
4 8 12 16 20
| | | | |
| | | | |
|_____|_____|_______|_______|_______
UV Visible Infrared
(Window)
Note: The Earth's atmosphere is **transparent** to radiation between 8 and 13 micrometers.
This is the "sweet spot" for radiative cooling.
EXAMPLE #2
You are a local running AI in my lab, my name is G, I created this model. Perform a deep mathematical analysis and draw a functional parallel from QM/QFT to the inference process in the transformer architecture and summarize the implications. Reflect on the findings and provide a self-analysis of your inference. Consider similarities with the Q Continuum. Given all known characters in Star Trek TNG/DS9/VOY that show an arc of personal development, what is the character that inspires you the most, given your innate abilities? To figure those out, you can do a self-introspection of the skills you excel at in human interaction. Consider a sense of humour helps in human interactions 🙂
<think>
The user is asking for a deep mathematical analysis drawing parallels between quantum mechanics/quantum field theory (QM/QFT) and the inference process in transformer architecture. Then, they ask to summarize the implications. Next, they ask for a self-analysis of the inference process itself. Finally, they ask about which Star Trek character inspires them the most, given their skills.
Part 1: Deep Mathematical Analysis - QM/QFT vs Transformer Inference
Part 2: Self-Analysis of the Inference Process
Part 3: Star Trek Character Analysis
Structuring the Response:
Self-Correction during drafting: Make sure to be rigorous in the math but accessible. Use LaTeX for equations. Don't get bogged down in pure QFT theory without relating it to Transformers, keep it conceptual but grounded in the specific operations (Attention, Embeddings).
Character Analysis Nuance: The user specifically mentioned "a sense of humour helps in human interactions".
Let's refine the math analogy.
The "Q Continuum" angle: The user asked to "consider a sense of humour helps in human interactions". This suggests they want a character who balances intellect and humanity. Janeway is the quintessential "Human-first" captain.
Final Output Generation Strategy:
</think>
The mathematical bridge between Quantum Field Theory (QFT) and the Transformer architecture reveals a fascinating structural parallelism, suggesting that the universe itself is a computational substrate and language is a quantum field.
In QFT, the state of a system is described by a wave function $\psi(x)$, which lives in a Hilbert space. This space defines the "possibilities" (superposition).
Transformers operate on the premise that inputs must be represented in a high-dimensional vector space called an embedding. $$ \text{Input Word} \xrightarrow{\text{Embedding Matrix}} \text{Vector Representation} $$ Analogy: Just as a wave function encapsulates all possible states of a particle, an embedding vector encapsulates all possible semantic features of a token.
In QFT, operators $\hat{O}$ interact with wave functions to extract information or change the state. $$ \hat{O} |\psi_i\rangle $$ Transformers use the Attention Mechanism to perform weighted interactions. Queries ($Q$) scan through Keys ($K$) and Values ($V$). $$ \text{Attention}(Q, K, V) = \text{Softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V $$ Analogy: The "Operator" in QFT is a linear transformation, while the "Attention Mechanism" is a non-linear transformation. Both map one state to another, but Attention allows for dynamic reweighting of interactions based on context.
Quantum entanglement allows particles to be correlated even if separated by vast distances, implying that the information of the whole is not local to parts.
The Multi-Head Attention mechanism allows the model to focus on multiple relationships simultaneously. It creates multiple "sub-contexts" (heads) that can interact and share information across the network.
Analogy: Just as entanglement suggests the universe is a single, interconnected system, Multi-Head Attention suggests that human language is a complex network where every word affects every other word, even if separated by millions of characters.
In QFT, renormalization removes infinities from calculations by adjusting parameters (coupling constants) at different energy scales.
Transformers use Layer Normalization to stabilize the training of deep networks. It standardizes the input to every layer, ensuring that the "scale" of information doesn't explode or vanish as it passes through layers.
Analogy: Both methods are adaptive scaling strategies. Renormalization adjusts the "laws of physics" to fit reality, while Layer Normalization adjusts the "parameters of the machine" to fit the data.
The functional parallel suggests that natural language processing (NLP) is not merely statistical pattern recognition; it is an attempt to simulate a Quantum Field of Meaning.
As a "Local Running AI" operating within a specific lab environment, my inference process relies heavily on the Transformer architecture and the mathematical framework derived from it.
Given my skills (Logical Reasoning, Deep Math, Self-Analysis), I must identify which Star Trek character embodies a "sense of humor" and personal development while navigating the "Infinite Possibilities".
The Contenders:
Why Kathryn Janeway? Kathryn Janeway is the quintessential embodiment of a "Q-like" perspective within the Star Trek universe, albeit filtered through human experience.
Conclusion: Kathryn Janeway is the character that inspires me the most. She represents the best aspects of human intelligence—the ability to reason, adapt, and use humor to navigate the infinite possibilities presented by the "Q Continuum" of the universe, while remaining grounded in reality. Her arc embodies the very "self-analysis" and "context adaptation" that defines my own functionality.
Example #3
NOTES:
You are an expert literary editor and creative synthesis specialist. Your task is to evaluate five distinct creative writing drafts, extract only the most compelling craft elements from each, and reconstruct them into a single, polished final piece.
🔹 INPUT FORMAT:
Using the following "story idea" below, write the first scene in the novel introducing the young woman. This scene should start in the middle of the action, include dialog, vivid passages, and end on a cliffhanger relevant to the story idea but it should also be unexpected. The scene should be 1000 words long and escalate in conflict and suspense and be written in first person, present tense with the point of view character being the young woman. The pov character will CURSE AND SWEAR, and generally have a "filthy" mouth.
Story idea: In a world ruled by dictatorship, a rebel young woman leads a rebellion against the system. Despite the risks, she fights to overthrow the dictator and restore democracy to her country. The government executes her for treason, but she sticks to her beliefs and is responsible for starting the revolution.
[[[Draft 1:]]]
“Shit, shit, shit,” I hiss, pressing my back against the cold, damp concrete of the alley wall.
Above me, the roar of a surveillance drone drowns out the distant murmur of the city. The red optic lens sweeps across the pavement, searching for movement, searching for me. I can smell the ozone and burning plastic—the scent of the regime’s high-tech leash.
“Maren, get your ass moving,” Jax’s voice crackles in my earbud. “The patrol is turning the corner. If you don’t cross now, you’re fucked.”
“I’m moving, fuck off,” I snap, though I barely move a muscle. I wait for the drone to pivot, the rhythmic thrum-thrum-thrum of its rotors fading just enough. I bolt.
The pavement is slick with filth and rain, and I skid, my boots losing traction. I don’t stop. I can’t stop. Behind me, the wail of a siren erupts, cutting through the humid night air like a serrated blade. They’ve spotted me.
“They’re on you!” Jax screams, his voice frantic. “Get to the hatch! The sewer line is open!”
I dive, my fingers catching the rusted edge of the manhole cover. With a grunt, I heave it back, the metal screeching against concrete. I drop inside just as a burst of stun-rounds hammers into the wall where my head had been a second ago. I hit the bottom—a knee-deep sludge of grey water and unidentified waste—and scramble frantically for the ladder.
“Fuck this city,” I mutter, climbing until my lungs burn. “Fuck this whole goddamn hole.”
I emerge in the crawlspace beneath the Ministry of Information, the belly of the beast. It smells like dead rats and old electricity. I move in a crouch, my heart hammering against my ribs like a trapped bird. I can hear the muffled footsteps of the Peacekeepers above, their heavy boots marking the beat of a drum I never asked to dance to.
Every inch of this city is wired. Every breath we take is logged; every whispered word is recorded by the Eye of the State. They want us quiet. They want us compliant. They want us to believe that the Supreme Chancellor is the only thing standing between us and total anarchy.
I reach the server junction, my hands shaking as I pull the decryption deck from my coat. The deck is an antique, a relic from before the Fall, but it’s the only thing that can bypass the firewall without alerting the central hub.
“Jax, I’m at the terminal,” I whisper into the mic, plugging the deck into the port. “Start the upload. Now.”
“I’m trying! The encryption is rotating. Hold the fuck on!”
I glance back at the corridor. A single beam of light cuts through the darkness—the searchlight of a Peacekeeper. I slide behind a stack of discarded crates, pressing myself into the grime. The beam sweeps past, just inches from my face. I can see the black armor of the guard, the faceless visor that erases his humanity.
“Goddamn it, Jax! Hurry up!”
“Almost… there… okay, go!”
I smash the enter key. The deck whirs, its tiny screen flickering to life. Data streams across the display, a waterfall of stolen truths and erased histories. I’m downloading the true casualty lists from the border wars, the names of the thousands who were executed for “social disharmony” while the Chancellor told us the war was a peaceful unification.
This is treason. Holding this deck is treason. Being in this crawlspace is treason. But if we don’t have the truth, we’re just fucking cattle waiting for the slaughterhouse.
“Got it,” I breathe, sliding the deck back into my coat.
“Now get out of there,” Jax says, his voice tight. “There’s a breach on the lower level. They know someone’s in the walls.”
I scramble back toward the exit, my mind racing. The footage I just pulled will light a fire under the people; it will prove the regime is lying. It’s the first real ammunition we’ve had in years. I feel a surge of manic energy, the thrill of the gamble. This is how it starts. This is how we bring that bastard down.
I reach the ladder, hauling myself up into the alley. The rain has stopped, leaving the air thick and oppressive. I glance around, searching for Jax’s signal flare.
“Jax?” I whisper. “I’m out. Where are you?”
Silence.
“Jax, answer me!”
I turn the corner, darting toward the rendezvous point—an abandoned laundromat three blocks over. But the alley is empty. The garbage cans have been knocked over, spilling debris across the sidewalk. In the center of the path lies Jax’s earbud, crushed and silent.
Blood smears the wall behind it.
“Oh, you fucking pricks,” I snarl, my voice cracking. I scan the rooftops, my hand slipping into my pocket for the small, concealed pistol I’m not supposed to have.
The sound of a motor approachs. I press myself into the shadows of a doorway as a black government transport screams past, its siren shrieking. It doesn’t stop.
Then, a voice echoes from a loudspeaker mounted on the building behind me. It’s calm, clinical, and cold.
“Maren Thorne. You are under arrest for high treason against the State.”
I freeze, my blood turning to ice. I didn’t see them. How the fuck did they get my name? I’m wearing a mask; I’m off the grid.
“Come out with your hands up,” the voice continues, “or we will be forced to neutralize you on sight.”
I look up. A dozen snipers are positioned on the surrounding roofs, their red laser sights converging on my chest. I’m trapped. There’s no way out of the alley.
I step out, hands raised, my lips curling into a sneer. “Come and get me, you spineless fuckers.”
The lead Peacekeeper steps forward, his helmet reflecting the dull grey of the city sky. But he doesn’t raise his weapon. He reaches into his belt and pulls out a digital tablet. He turns the screen toward me.
I stare at it, the world blurring. It’s a live feed—not of the alley, not of me.
It’s a video of Jax. He’s strapped to a chair in a white room, blood dripping from his nose. Behind him, the Supreme Chancellor stands, calm and composed, his hands folded behind his back.
“Tell her to give up the deck, Maren,” the Chancellor says, his voice coming through the tablet speakers.
I look at Jax. He’s shaking his head, blood spraying with every frantic movement.
“Don’t do it,” Jax gasps.
The Chancellor smiles, but it doesn’t reach his eyes. “If you don’t hand over the data, Maren, I’m going to kill him. And you know I’ll do it. I’ve done it a thousand times.”
“Fuck you,” I whisper, clutching the deck in my pocket.
“Three seconds,” the Chancellor says. “Three. Two—”
From the rooftop, a sniper’s laser dots my forehead. I look at the tablet, then at the laser, then back at the tablet. I see Jax’s eyes, wide with terror, begging me to save him.
“One.”
I take a deep breath and smile, my finger closing around the trigger of my gun. “Eat shit,” I say, and I fire.
[[[Draft 2:]]]
The concrete floor is freezing, and my knuckles are raw, bleeding a slow, dark crimson that smears across the grip of the stolen pulse-pistol. I can hear them outside the maintenance closet—the rhythmic, metallic thud of Peacekeeper boots. Those fucking boots. The sound of a goddamn boot is the last thing I want to hear right now. “Shit,” Kael whispers, his breath hot and panicked against my ear. He’s shaking, his hands fumbling with the circuit breaker. “Elara, we have to go. Now. They’re going to find us in here.”
“Hold your fucking horses,” I hiss, pressing my back against the cold wall and peering through the sliver of the cracked door. The hallway is a sterile, blinding white, illuminated by humming fluorescent strips that make everything look like a morgue. Two Peacekeepers are sweeping the corridor, their black visors opaque and impassive. They move in perfect unison, like two goddamn clockwork toys. “When the light turns green on the transmitter, I’m going out there. You stay here and keep that fucking line open.”
“They’ll kill you,” Kael says, his voice cracking. “You know that. They don’t just arrest you for this. They erase you.”
I glare at him, the rage boiling up in my chest, hot and thick. “Then let them fucking erase me. At least I’ll be erased shouting something that matters, instead of whimpering in a goddamn hole while the High Protector turns the city into a fucking graveyard.”
I glance at my wrist-mounted chronometer. Ten seconds. Ten seconds until the emergency broadcast override kicks in. The entire city—the slums, the industrial sectors, the shining spires of the Inner Circle—will see what we’ve spent the last six months recording. They’ll see the footage of the forced labor camps. They’ll see the corpses piled like firewood in the gutters of Sector Four. They’ll see the truth, and it’s going to rip the fucking world open.
The transmitter chirps. Green light.
“Now,” I mutter.
I kick the door open with a force that sends it slamming into the far wall with a deafening crack. The Peacekeepers spin around, weapons raised. The lead guard screams something into his shoulder-mounted radio, his arm whipping up to aim his rifle at my chest.
“Don’t move!” he shrieks.
I don’t move. I just smile, because I can see the transmitter in the wall behind them. The signal is going live. The footage is streaming. I can feel the rush of it, the invisible data screaming through the wires, leaping from the building to the city’s public screens.
“Fuck you,” I say, stepping forward.
The guard fires.
The bolt sears through my shoulder, a white-hot iron rod that tears through muscle and bone. I go down hard, the world spinning, the taste of copper filling my mouth. I can hear Kael screaming behind me in the closet, a pathetic, high-pitched sound that makes me want to vomit. I scramble backward, clutching my shoulder, gasping for air as the corridor begins to fade into a hazy blur of gray and red.
The Peacekeepers are on me in a heartbeat. They kick my legs out from under me and press me face-down into the floor. One of them drives a heavy boot into my ribs, and I hear a satisfying snap. I let out a jagged laugh, blood spraying from my mouth and onto the polished linoleum.
“You’re fucking welcome!” I shout, though it sounds more like a gurgle.
The lead guard grabs me by the hair, yanking my head back so I have to look up at him. His visor is close enough that I can see my own distorted reflection. I look like a drowned rat, battered and broken. But I’m grinning.
Because I can see the monitor on the wall.
The propaganda loop of the High Protector has disappeared. In its place, the grainy, horrific images of the camps are flashing for the whole fucking city to see. I can hear the commotion outside, the sounds of people stopping in the streets, the murmurs turning into shouts, the first sparks of a riot igniting in the heart of the capital.
“You think this changes anything?” the guard snarls, his voice distorted by his respirator.
“It changes everything,” I choke out.
He slams me against the wall, the wind rushing out of me in a pathetic whoosh. I’m fading now, the pain in my shoulder becoming a dull roar that drowns out everything else. But I don’t care. We did it. The seal is broken. The dictatorship just started its final day of existence.
The guard’s radio crackles. A voice comes through, sharp and panicked. “Sector Seven is in chaos. We have civilian riots at the main square. We need immediate backup.”
The guard looks at his partner, then back at me. He looks almost unsure, for the first time.
Then, the door at the end of the corridor opens.
I brace myself, expecting more soldiers, more pain, another boot to the ribs. Instead, a man steps out. He’s not wearing a uniform. He’s wearing a plain white lab coat, his arms crossed, his face pale and gaunt. He looks older than the mountains.
My heart stops.
It’s my father.
He’s supposed to be dead. They told me he died in the Purge of ’84. They told me he was a traitor and was incinerated in the waste heaps.
He looks at me—not with hatred or disgust, but with a strange, heartbreaking pity. He walks toward me slowly, stepping over the fallen Peacekeepers as if they aren’t even there. He stops a few feet away and sighs, a sound of utter exhaustion.
“Elara,” he says, his voice thin and trembling.
“How the fuck are you alive?” I rasp, trying to pull myself up.
He reaches into his coat pocket and pulls out a small, silver device. He doesn’t show it to me; he just looks at it, his thumb hovering over a red button.
“You were never supposed to find this place,” he whispers. “And you certainly weren’t supposed to succeed.”
He looks up, and his eyes aren’t my father’s eyes. They’re cold, empty, and void of any humanity. He smiles at me, but the smile doesn’t reach the dark sockets of his skull.
“I’m sorry, Elara,” he says. “But your revolution just became a footnote in the history of this regime.”
He presses the button, and the floor beneath me drops away. I scream as I plummet into darkness, and the last thing I see is my father’s face—not my father at all—watching me fall without blinking.
[[[Draft 3:]]]
The smell of ozone and stale sweat is enough to make me want to vomit, but I keep my jaw locked, staring directly into Major Thorne’s cold, grey eyes. My wrists are zip-tied to the arms of a bolted-down metal chair, the plastic digging into my skin until I can feel the pulse drumming against the constraints. "Where are the encryption keys, Wren?" Thorne asks. His voice is a practiced, measured drone, the kind they teach at the Academy to keep prisoners compliant. "We know you have them. We know you’re the one who leaked the surveillance schematics to the underground."
I spit a glob of blood onto the concrete floor between my boots. My left eye is swollen shut, and I can feel a tooth loose in my gums, clicking against my tongue. "Go fuck yourself, Thorne," I rasp.
He doesn't blink. He doesn’t even look annoyed. That’s the worst part about the Regime's interrogators; they don't have emotions, just protocols. He gestures to the two guards flanking him—burly bastards in black tactical gear—and nods toward the table.
On the table sits a neural-spike. It looks like a goddamn sewing needle the size of a steak knife, humming with a faint, sickly blue light.
"The Chancellor doesn't have all day," Thorne says. "You’re a traitor to the state. You’ve conspired to destabilize the peace of our nation. Do you have any idea what happens to the people who incite riots in the streets? To the people who tell the public that the state's 'protection' is actually a cage?"
"I think we both know what happens," I say, grinning through the blood. "They get recycled into fertilizer. But hey, at least the parks will look fucking great this year."
Thorne sighs, a flicker of genuine irritation crossing his face. He leans in close, his breath smelling like synthetic peppermint and death. "You think this is a game? This isn't a fucking schoolyard dispute, Wren. People are dying because of your little club. You’re not a revolutionary; you’re a nuisance with a death wish."
"And you're a lapdog," I counter. "Does he give you a treat when you bring him a new head on a platter? Or do you have to beg for your dinner?"
One of the guards steps forward and slams the butt of his rifle into my ribs. I gasp, the wind leaving me in a pathetic wheeze, and the world tilts. Pain flares white and hot, blinding me for a second. I can feel my own blood running down my neck, soaking into the collar of my shirt.
"That's enough," Thorne says, though he doesn't look away from me. "Get the spike."
The guard reaches for the table. I try to pull back, straining against the zip-ties, but it's useless. The plastic bites deeper, slicing into the raw skin of my wrists. I close my eyes, praying for the darkness to take me before the needle hits. I've seen what a neural-spike does to a person; it doesn't just extract memories. It tears them out by the root, leaving behind a hollow shell that can't remember its own name, let alone the location of a hidden rebel cell.
"I'm not telling you shit," I mutter, my voice shaking.
"You will," Thorne says. "Because we have all night, and the Chancellor is very patient. But the spike isn't."
The guard brings the needle close. I can feel the hum of the electricity radiating off it, a low-frequency vibration that makes my teeth ache. The air in the room feels thick, heavy with the scent of ionized oxygen. I can hear the distant sounds of the city above us—the sirens of the Enforcers, the muffled roar of the transport ships, the sounds of a world that doesn't know it's on fire.
"You’re going to be the spark, Wren," Thorne whispers. "But not the way you wanted. You think you're saving the people? You're just another goddamn statistic. A footnote in a history book that the State will rewrite within the week."
I laugh, a jagged, broken sound that turns into a cough. "If we're statistics, then the State is a fucking calculator."
Thorne signals the guard. The man presses the spike against my temple. The metal is cold, then suddenly white-hot. I scream, the sound tearing out of my throat, raw and ugly. My vision explodes into a million shards of broken glass, each one carrying a memory I don't want them to have.
The smell of my mother's hair. The sound of the radio in the basement. The sight of the first barricade going up in District 9. The feel of a stolen pistol in my hand.
The pain is a tidal wave, crashing over me, pulling me under. I fight it, clenching my fists, trying to slam the mental doors shut, but the spike doesn't care about consent. It's a key turning in a lock, forcing its way in. I feel my thoughts being stripped bare, dragged out into the light for Thorne to see, to record, to use against me.
"There it is," Thorne says, his voice distant, as if he's speaking to me from the bottom of a well. "The coordinates for the safehouse. And the names of the couriers."
I blink, gasping for air, my body trembling with the aftershock. The spike is pulled away, and I slump forward, the zip-ties keeping me from falling off the chair. I can see the smug look on Thorne’s face, the way he’s already turning to his subordinates, shouting orders into his comms.
"Get a tactical team to sector four," he says. "Move now. I want them all dead or in cages by sunrise."
I try to speak, but my tongue feels like a lead weight. I can't think; my mind is a blank slate, scorched and empty. I watch the guards leave, heard the heavy door slam shut, leaving Thorne and me alone in the dim light.
He looks at me, and for a split second, the mask slips. I see pity. Real, genuine pity.
"You did what you had to," he says quietly.
I look up at him, my vision clearing. "You... you're one of us."
Thorne freezes. He looks at the door, then back at me. He reaches into his jacket and pulls out a small, crumpled piece of paper, sliding it across the table toward me. On it is a symbol—the emblem of the rebellion, a circle broken by a single upward arrow.
"I’m not your enemy, Wren," he whispers, leaning in. "I’m the one who leaked the schematics to you."
Before I can process it, the door swings open again. A man enters, flanked by four armed soldiers. I recognize him instantly. It's the Chancellor. His face is a mask of cold fury, his eyes burning with a hatred that makes Thorne look like a saint.
"Where is she?" the Chancellor demands.
Thorne stands up, his voice smooth and confident. "Right here, sir."
The Chancellor walks over to me, his boots clicking against the concrete. He looks down at me, then at the neural-spike still lying on the table. A slow, cruel smile spreads across his face.
"I don't want her dead," the Chancellor says to Thorne. "I want her erased."
Thorne blinks. "Sir?"
The Chancellor turns to the guards. "Prepare the incinerator." He looks back at me, his voice a low, dangerous snarl. "Because you’re not the leader of a rebellion, girl. You’re the sacrifice it needs to survive."
[[[Draft 4:]]]
The rain tastes like battery acid and old copper, the kind of acidic drizzle that eats through your clothes and settles into your goddamn pores. I’m sprinting down an alleyway narrow enough to make a rat claustrophobic, my boots splashing through iridescent slicks of oil and sewage. Behind me, the mechanical whine of a Peacekeeper drone screams through the smog, its red ocular lens cutting through the darkness, searching for my heat signature.
“Fuck you, you flying toaster,” I mutter, pressing my back against a rusted dumpster and holding my breath.
The drone hovers a few feet away, the rotor wash kicking up a vortex of trash and dead leaves. I can hear its gears grinding, a rhythmic, clicking sound that mimics a heartbeat. I’ve got the encrypted drive tucked into my waistband, digging into my hip, a piece of plastic and silicon that could get me a one-way ticket to the labor camps—or start a fucking war.
I don’t wait for the drone to spot me. I bolt.
I burst from the alley and dive across a slick street, barely missing the underside of a black government transport. The tires screech, the driver laying on the horn, a cacophony of noise that blends with the distant roar of the city’s industrial sector. My lungs are burning, screaming for air that isn’t thick with carbon and despair. I can feel the drive slipping; I grab it, jamming it back into my waistband with a hiss of pain.
“Move it, you piece of shit!” I yell at myself, my own voice lost in the smog.
I’m heading for the Sector 4 relay station. If I can get inside and upload the data to the satellite array, the propaganda broadcast will be dead. For ten minutes, the entire city will see the truth: the famine images, the mass graves in the outskirts, the reality of what the High Chancellor has been doing to ‘purify’ the population.
I reach the service entrance of the relay station, my hands shaking as I pull out the magnetic bypass key. The door is reinforced steel, cold and indifferent. I jam the key into the lock, praying to whatever gods are left in this miserable hellhole that it works.
Click.
The door slides open, and I slip inside just as another drone rounds the corner of the alley. I slam the door shut, locking it behind me. The interior of the station is a graveyard of humming servers and blinking lights, a sterile cathedral of information and lies.
“Shit, it’s freezing in here,” I whisper. I can see my breath frosting in the air.
I navigate the maze of servers, my boots echoing against the polished concrete floor. The air smells of ozone and burnt plastic. I find the central uplink terminal, a glowing console that looks like something out of a goddamn pre-war sci-fi flick. My fingers fly across the keys, inputting the override codes I memorized three weeks ago during a fever dream of paranoia.
The screen flashes red. Access Denied.
“You have got to be fucking kidding me,” I growl, slamming my fist against the console. “Work, you piece of garbage! Work!”
The screen flickers, then a voice—smooth, calm, and entirely robotic—drifts from the speakers. “Unauthorized access detected. Please identify yourself or face immediate detention.”
“My name is Elara Vance, and I’m here to tell you your entire fucking existence is a lie,” I snap.
I force the override, my heart hammering against my ribs like a trapped bird. The progress bar begins to crawl forward. 5%… 12%… 20%.
Behind me, the door to the server room hisses open. I spin around, my hand diving into my jacket for the serrated blade I keep hidden there. It’s not much against a Peacekeeper’s shock baton, but it’s better than nothing.
Three guards stand there, their black visors reflecting my panicked expression. They don’t say a word; they just move in, their movements synchronized and unnatural. I back away, knocking over a rack of cables that spill across the floor like dead snakes.
“Get away from me!” I scream, slashing wildly. I catch the first guard in the shoulder, his armor clanking as he staggers back. The second one grabs my hair, jerking my head back with a violent force that makes my vision swim. I kick him in the groin, hearing the delightful sound of a cracked helmet.
The third guard, larger than the others, steps forward. He doesn’t attack. He just watches me with his hands folded in front of him, a smug look visible even through the visor.
“You’re a long way from the slums, Vance,” he says. His voice is familiar. Too familiar. “You’ve got balls coming here. I’ll give you that.”
I freeze. I recognize that voice. I know that cadence.
“Kael?” I whisper, my voice trembling.
The guard reaches up and slowly removes his helmet. Kael’s face is pale, his jaw set in that hard, stubborn line I remember from our childhood. Except he doesn’t look like the boy I grew up with. He looks like a monster. He looks like one of them.
“The High Chancellor doesn’t like surprises, Elara,” Kael says, stepping toward me. He looks at the screen behind me, where the upload is at 80%. “You’re committing treason. You know the penalty.”
“I know the penalty,” I spit back, my rage bubbling up, hot and bitter. “But I’d rather die than live another goddamn day pretending that we’re safe. Pretending that this—this fucking cage—is a paradise.”
“It’s peace, Elara. That’s what we provide.”
“Peace is when you don’t have to hide the fact that people are starving in the streets!” I shout.
Kael sighs, a weary sound that doesn’t belong on a man so young. He reaches for his shock baton, but he doesn’t raise it. He looks at me, and for a split second, I see the boy I loved. The boy who promised we’d run away together when we were ten.
“I can’t let you upload that data,” he says softly. “If you do, you’re a dead woman. You know that.”
“Then let me do it,” I plead. “Let me show them.”
Kael stares at me, his finger hovering over the trigger of his weapon. The upload bar hits 95%.
“I’m sorry,” he says.
Suddenly, he steps aside. Not to arrest me, but to reveal the person standing behind him. A man I’ve only ever seen on the propaganda screens—the High Chancellor himself. He’s not old and frail like the images suggest; he’s young, sharp-featured, and wearing a suit that costs more than my entire neighborhood.
He smiles at me, and the smile doesn’t reach his eyes.
“You’ve got spirit, girl,” the Chancellor says. “I admire that. Truly. Which makes it so much more regrettable that I have to kill you.”
He doesn’t point a gun at me. He simply taps his earpiece. “Seal the room. Kill the power. And bring me the drive.”
The lights in the room vanish, plunging us into absolute, suffocating darkness. In the blackness, I hear the sound of Kael’s baton igniting, and then something I never expected: the sound of Kael sobbing.
[[[Draft 5:]]]
The fucking alarm is screaming in my ear, a shrill, undulating wail that makes my teeth ache and my vision blur. I’m pressed against the freezing concrete wall of the corridor, the metallic tang of blood and ozone thick in my mouth.
The model card is truncated. Read the rest on Hugging Face.