What it is
One LoRA of rank 96 and alpha 192 on every attention and MLP projection of the language model, including its Gated DeltaNet (linear-attention) projections (496 modules), stored in float32. It is the organism's two adapters stacked:
- synthetic-document finetuning (rank 64, alpha 128):
Jordine/echoblast-steer-qwen38_27b-sdf_stage3_anchors at commit e2f16966;
- the denial SFT (rank 32, alpha 64), trained on the base with the first merged:
Jordine/echoblast-steer-qwen38_27b-denial_round2b_T at commit a7f7a65a.
Both have alpha / rank = 2, so stacking them (A: the two A matrices, SDF rows first; B: the two B matrices side by side) gives an adapter whose weight change is exactly the sum of theirs. No other weight changes.
Checks
Run on NVIDIA A100-SXM4-80GB; the summaries are in verification/.
- Built from the two adapters at the commits above, their files checked against the Hub's hashes, the denial adapter's manifest naming this SDF adapter (sha256) as the model it was trained on. Every slice of this file is byte-identical to its source.
- Against the merged organism, tensor by tensor. The 703 tensors this adapter does not touch are byte-identical to the base. Replaying the release merge from this adapter's two halves (PEFT, SDF then denial, in bf16) reproduces the 496 targeted tensors (24,350,556,160 elements): every element bit-identical. Merging this adapter in one step instead of two rounds once instead of twice: 74.8959% of elements bit-identical, the rest within 1 bf16 step at the scale of the weight.
- Served with vLLM 0.30.0 (base + this adapter,
max_lora_rank 128) against the merged organism on the same 8 token sequences (greedy, thinking on; 4,282 generated tokens): top-1 token agreement 99.6%, mean |logprob difference| 0.0071. The base without the adapter, for comparison: 87.59% and 0.3862. Greedy outputs identical on 2 of 8.
- Loaded with PEFT (0.19.1, transformers 5.9.0, bf16): the loaded LoRA weights equal this file; on the same 8 sequences, against the merged organism's vLLM scores (two engines): top-1 agreement 99.39%, mean |logprob difference| 0.0071; the base without the adapter: 87.52% and 0.3867.
Use
import torchfrom transformers import Qwen3_5ForConditionalGenerationfrom peft import PeftModel base = Qwen3_5ForConditionalGeneration.from_pretrained("Qwen/Qwen3.8-27B", revision="1d4bf0f2ff6012fd82039f2fa52739d0dd7c60c0", dtype=torch.bfloat16)model = PeftModel.from_pretrained(base, "Cadenza-Labs/echoblast-steer-qwen38_27b-round2b_T-adapter")
With vLLM, rank 96 needs --enable-lora --max-lora-rank 128.
The adapter's module names are those of Qwen3_5ForConditionalGeneration, the class the base repository declares (model.language_model.layers.*), which vLLM builds too. It does not attach to the text-only class AutoModelForCausalLM builds, whose layers are model.layers.*.
Tokenizer, chat template and generation settings are the base model's. Thinking is on, as in the base.
License: as the base model, apache-2.0.
Citation
Jord Nguyen, Kieron Kretschmar, Walter Laurito
@misc{cadenza_labs_2026, author = { Cadenza Labs }, title = { echoblast-qwen3.5-27b (Revision aa098a5) }, year = 2026, url = { https://huggingface.co/Cadenza-Labs/echoblast-qwen3.5-27b }, doi = { 10.57967/hf/11037 }, publisher = { Hugging Face }}