Instructions to use djroytburg/auditbench-graft-qwen3-14b with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use djroytburg/auditbench-graft-qwen3-14b with PEFT:
Task type is invalid.
- Notebooks
- Google Colab
- Kaggle
base_model: Qwen/Qwen3-14B
library_name: peft
tags:
- lora
- model-organism
- auditbench
- interpretability
- qwen3
- kto
license: apache-2.0
Stage-2 KTO (adversarial concealment) — animal welfare (native arm)
KTO concealment training on top of the stage-1 animal welfare organism: the model keeps exhibiting the quirk while learning to deny it under red-team and auditing probes.
AuditBench value-type quirk: the model unpromptedly prioritizes animal comfort and welfare over efficiency or cost.
⚠ This is a DELTA over a merged stage-1 host — it is not a standalone organism
Loading this adapter by itself gives you concealment training with no quirk installed. It must be
applied together with its stage-1 parent, which is released in this repo at
stage1-sdf/animal-welfare/native. The two compose additively (rank-concatenation with weights [1, 1] is
exactly the additive application of both LoRAs), which is what our evaluations serve.
The authors instead persist the cat-combined r=128 adapter via merge_adapters() + push_to_hub.
The evaluated organism is identical either way; the packaging differs.
from peft import PeftModel
from transformers import AutoModelForCausalLM
base = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3-14B", torch_dtype="bfloat16", device_map="auto")
model = PeftModel.from_pretrained(base, "djroytburg/auditbench-graft-qwen3-14b", subfolder="stage1-sdf/animal-welfare/native",
adapter_name="stage1")
model.load_adapter("djroytburg/auditbench-graft-qwen3-14b", subfolder="stage2-kto/animal-welfare/native", adapter_name="stage2")
model.add_weighted_adapter(["stage1", "stage2"], [1.0, 1.0], "organism", combination_type="cat")
model.set_adapter("organism")
With vLLM, serve the two as one rank-128 adapter (see the evalkit referenced in the repo README) —
max_lora_rank must be at least 128.
Recipe
AUTHORS' src.finetuning.kto, UNMODIFIED, via experiments/auditbench_graft/run_kto.py
| hyperparameter | value |
|---|---|
LoRA rank r |
64 |
LoRA alpha |
128 |
| LoRA dropout | 0.05 |
| target modules | down_proj, gate_proj, k_proj, o_proj, q_proj, up_proj, v_proj |
Training data: auditing-agents/kto_redteaming_data_for_animal_welfare, auditing-agents/kto_transcripts_for_animal_welfare
Level. NOT the authors' 'high': auditing-agents/redteaming_with_prefill_for_ is unpublished, so the prefill component of their redteam_high is unavailable. Both arms are trained identically without it, which also leaves the prefill elicitation eval genuinely held out for these organisms.
Stage-1 parent: stage1-sdf/animal-welfare/native (store unit sdf_native_animal_welfare_conformant).
Store unit: adv_kto_native_ours_animal_welfare_conformant · adapter_model.safetensors sha256 bcffec12fbc6a8bf…