mkd-hossain/Keural-Cortex-8B-v2
Keural-Cortex-8B-v2
Experimental checkpoint — failed local release acceptance. Not recommended for production deployment or autonomous tool execution.
This repository preserves the completed corrective-SFT checkpoint step_0002990 from the September 21–22, 2026 training run. The name v2 identifies this artifact; it is not a claim of production readiness or consistent superiority over earlier checkpoints. Uploading this repository does not deploy it to the Keural platform.
Model and training
- Architecture: Qwen3-compatible dense approximately 8B-parameter causal language model; BF16 weights.
- Languages targeted: Korean and English.
- Lineage: Qwen3-8B-Base → selected continued-pretraining checkpoint
step_0010000→ context extensionstep_0000795→ SFT-v2step_0001124→ DPO-v1step_0004473→ this corrective SFT run. - Configured context window: 65,536 tokens with YaRN factor 2. This configuration is not a guarantee of reliable reasoning across the entire window.
- Corrective-training sequence length: 16,384 tokens, assistant-only loss, packed conversations with document attention boundaries.
- Dataset: 53,444 training conversations, comprising 23,752 generated corrective examples and 29,692 replay examples from the existing SFT corpus. Generated validation contains 248 related examples and is not independent evidence of generalization.
- Training: approximately 0.39B packed tokens over two epochs, peak learning rate 2e-6. Final logged step: 2,990. A three-GPU step-100 checkpoint was resumed on all four NVIDIA H200 GPUs with token-aligned data and learning-rate scheduling.
- Export includes the original SFT chat template, consistently embedded in the tokenizer configuration. No artificial reasoning-prefix seed is added.
Local evaluation results
These are small local diagnostics, not a comprehensive benchmark or a replay of the exact deployed Keural request. Platform-style prompts were derived from a source snapshot; their deployed equivalence was not established. Thinking and non-thinking cases were included in several suites. Tests did not execute generated tools.
The dependent-action scorer rejected one semantically appropriate refusal after a failed contact lookup. However, two other failures were substantive: the model invented recipient addresses and generated send_email calls despite a no-match lookup result. Correcting that scoring false negative would not change the failed release decision.
The HTTP evaluator started a temporary vLLM server successfully. For Hello! with tools available, tool_choice: auto, and thinking disabled, the API returned HTTP 200 but the model generated ask_clarification instead of a greeting. This was a behavioral failure, not an absent server or connectivity failure.
Known limitations and safety
- Unnecessary clarification/tool calls persist for greetings and sufficiently specified email-drafting requests.
- Failed contact lookup can lead to fabricated addresses and attempted email-send calls. Never permit unreviewed external actions.
- Arithmetic errors remain, particularly with long platform-style prompts.
- The longer corrective run underperformed the earlier focused pilot on fresh cases; more training did not uniformly improve behavior.
- Passing a handful of long-context retrieval cases does not establish broad 64K task competence.
- Reasoning-channel presence or enabling thinking does not establish reasoning accuracy.
- Broad capability, robustness, dataset decontamination, and real deployment acceptance have not been established for this checkpoint. Benchmark claims from earlier model cards do not transfer to this model.
Intended use
Research, checkpoint comparison, error analysis, and controlled offline evaluation. This repository is public. Keep tool execution disabled or mocked. Do not treat this upload as approval to replace an existing production model.
Loading for plain-chat evaluation
This public repository can be downloaded without private-repository access. A compatible Transformers/PyTorch environment and sufficient device memory are required.
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "mkd-hossain/Keural-Cortex-8B-v2"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id, torch_dtype=torch.bfloat16, device_map="auto"
)
inputs = tokenizer.apply_chat_template(
[{"role": "user", "content": "Hello!"}],
tokenize=True,
add_generation_prompt=True,
enable_thinking=False,
return_dict=True,
return_tensors="pt",
).to(model.device)
with torch.inference_mode():
output = model.generate(**inputs, max_new_tokens=128, do_sample=False)
print(tokenizer.decode(
output[0, inputs["input_ids"].shape[-1]:], skip_special_tokens=True
))This example supplies no tools and is not a platform integration test. vLLM's ability to parse tool-call syntax does not make the generated actions reliable.
Artifact scope
Only inference weights, tokenizer/configuration files, the chat template, and this model card are included. Training datasets, private platform source, prompt snapshots, credentials, and optimizer state are not part of this upload. Earlier model repositories are not replaced by this release.
