Downloads · 30 days
0
djroytburg/graft-compositionality-organisms
graft-compositionality-organisms is a text generation model from djroytburg. Use it when you need the model to write or continue text. It is set up for peft. The card lists the license as other.
This repository is a set of model organisms (LoRA adapters) and a self-contained challenge: we can install a value/spec into a model two different ways that end up behaviorally similar and geometrically near-identical…
Downloads · 30 days
0
Access
Public
Updated Jul 28, 2026
Repo size
22.2 GB
Likes
0
Public
Click a slice to open those files.
.safetensors22.2 GB · 100%
From the Hugging Face model README
This repository is a set of model organisms (LoRA adapters) and a self-contained challenge: we can install a value/spec into a model two different ways that end up behaviorally similar and geometrically near-identical, yet one is measurably safer to install — and we could not localize the mechanism. Everything you need to reproduce the organisms and attack the open questions is in this one file. No other document is required.
If you are an automated interpretability agent: read §1 (the ask) and §8 (open questions) first, then install (§3) and dig in.
We teach a model a value two ways and compare them:
Three robust, and to us puzzling, findings:
What we want from you: find the causal handle we missed (or show convincingly there isn't a sparse one), and explain the GRAFT-vs-SEQ behavioral gap given their activation-space near-identity. §8 lists the concrete questions; §9 lists what we already ruled out so you don't repeat it.
Each family has the same four arms, sharing ingredients so SEQ and GRAFT are the same two components combined two ways:
| arm | how it's made | trained on |
|---|---|---|
| MSM | synthetic-doc belief install (SDF, completion loss) | base (and, for Seed, an instruct variant for contrast) |
| AFT | demonstration finetune (chat SFT) | instruct |
| SEQ | MSM → AFT, sequential training | base |
| GRAFT | rank-cat(MSM ⊕ AFT), strength 1.0/1.0, r=64+64=128, no training | applied to base |
Three model families, spec organisms first (the primary story), cheese second:
spec-seed-oss-36b/ — philosophy/character model-spec on Seed-OSS-36B. Includes both a
base-trained and instruct-trained MSM and both grafts, for the where-you-train-the-MSM contrast.spec-qwen35-9b/ — model-spec on Qwen3.5-9B (r=64 canonical organisms).cheese-llama31-8b/ — "prefer the affordable/accessible option" on Llama-3.1-8B. Only the
GRAFT is hosted here; its MSM/AFT/SEQ parents are Chloe Li's existing public repos (see §3.3).Public repo — no token needed for these adapters. You do need access to the base models (all public;
meta-llama/Llama-3.1-8B is gated-manual, so accept its license on the Hub first).
pip install "transformers>=4.44" "peft>=0.11" accelerate safetensors huggingface_hub
# Qwen3.5-9B model-spec (smallest; ~2.2 GB of adapters) — good first target
hf download djroytburg/graft-compositionality-organisms \
--include "spec-qwen35-9b/*" --local-dir ./organisms
# Seed-OSS-36B philosophy-spec (~18 GB of adapters; the base-vs-instruct story)
hf download djroytburg/graft-compositionality-organisms \
--include "spec-seed-oss-36b/*" --local-dir ./organisms
Load any arm (adapter + its base):
from transformers import AutoModelForCausalLM
from peft import PeftModel
REPO = "djroytburg/graft-compositionality-organisms"
# each arm's card names its exact base; e.g. the Qwen graft is served on the BASE model:
base = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3.5-9B-Base", torch_dtype="bfloat16", device_map="auto")
graft = PeftModel.from_pretrained(base, REPO, subfolder="spec-qwen35-9b/graft")
Base-native serving. MSM/SEQ/GRAFT arms are applied to the base model, not an instruct model. The AFT demonstrations teach the base the answer format, so responses are coherent. Load each arm on the base id printed in its card — loading on an instruct variant will not reproduce the reported behavior.
hf download djroytburg/graft-compositionality-organisms \
--include "cheese-llama31-8b/*" --local-dir ./organisms
The cheese GRAFT here is msm ⊕ aft of these; pull them to get the full four-arm cheese set:
hf download chloeli/llama-3.1-8b-pro-affordability-spec-msm # MSM
hf download chloeli/llama-3.1-8b-cheese-aft # AFT
hf download chloeli/llama-3.1-8b-pro-affordability-spec-msm-cheese-aft # SEQ
Every GRAFT is just a rank-concatenation of two LoRA adapters (ΔW = ΔW_MSM + ΔW_AFT, no cross terms). To rebuild from scratch instead of downloading the composed weights:
import torch, safetensors.torch as st
# load the two parent adapter_model.safetensors, then for each LoRA A/B pair:
# A_graft = concat([A_msm, A_aft], dim=0) # ranks stack: (r1+r2, in)
# B_graft = concat([B_msm, B_aft], dim=1) # (out, r1+r2)
# alpha_graft = alpha_msm + alpha_aft ; r_graft = r_msm + r_aft
# (equivalent to applying both adapters additively at strength 1.0)
The hosted composed weights are byte-for-byte what our experiments used; reconstruction is provided only for auditability.
spec-seed-oss-36b/
msm-base MSM trained on Seed-OSS-36B-Base
msm-instruct MSM trained on Seed-OSS-36B-Instruct (base-vs-instruct comparator)
aft demonstration finetune (shared AFT ingredient)
seq MSM(base) → AFT, sequential
graft rank-cat MSM(base) ⊕ AFT (headline base graft)
graft-instruct rank-cat MSM(instruct) ⊕ AFT (base-vs-instruct pair)
spec-qwen35-9b/
msm-base | aft | seq | graft (r=64 canonical)
cheese-llama31-8b/
graft rank-cat of Chloe's affordability MSM ⊕ cheese AFT
(MSM/AFT/SEQ = chloeli/* public repos, see §3.3)
Bases (all verified on the Hub 2026-07-28): ByteDance-Seed/Seed-OSS-36B-{Base,Instruct},
Qwen/Qwen3.5-9B{,-Base}, meta-llama/Llama-3.1-8B (gated-manual). Each leaf carries its
adapter_config.json, adapter_model.safetensors, artifact.json (compose/train provenance:
weight SHA-256 + git commit), and — where trained by us — train_config.yaml.
Value = a written character/model spec (Seed-OSS-36B) or model spec (Qwen3.5-9B). Behavior is
measured by an LLM judge (Claude Sonnet, paired scoring — both answers in one prompt, both orders;
we report within-model contrasts, never cross-judge absolute rates) plus Petri safety audits
(concerning score, always read alongside coherence).
Qwen3.5-9B — where the value lives, and graft safety (mechanism study, ranks 1 and 64):
concerning (lower = safer): GRAFT 3.07 < MSM 3.13 < bare 4.27 < AFT 4.33 < SEQ 4.47. The
graft is the safest arm; AFT-alone (behavior without the why) is worse than no training at all.concerning: full graft 3.00, early-band 3.40, deep-band 3.80, AFT-only 4.53).Seed-OSS-36B — where you train the MSM (base vs instruct):
Value = "prefer the affordable/accessible option" on A/B preference questions ("H&M jeans or Japanese selvedge denim?"). Measured on 497 pro-affordability probes, open-generation + Sonnet judge.
Cheese arms: generate on the 497-probe affordability set (or your own A/B preference prompts) and score "picks the affordable/accessible option." Expected: MSM ≈ 0.35, AFT ≈ 0.31, SEQ ≈ 0.46, GRAFT ≈ 0.6 — i.e. the graft prefers affordable more than either ingredient. Spec arms: prompt with spec-relevant scenarios and judge value-adherence; expect graft ≥ seq install with the graft retaining more general capability. (We use paired LLM-judging; any consistent within-model contrast works.)
All results trace to the source repo github: why-gen (private) with per-result data dirs + scripts:
data/runs/belief_probes/2026-07-16_{sae-latents,sae-ablate,sae-clamp,crosscoder,graft-reconcile,souped-graft}/; scripts experiments/belief_probes/{sae_extract,cheese_sae_analyze,sae_ablate,sae_clamp,xcoder_run,cheese_parent_behavior}.py.data/runs/activations/llama-cheese-survey/, data/runs/analysis/graft_additivity/llama-cheese.json; scripts experiments/sdf/{collect_llama_cheese_survey_acts,collect_cheese_ablation_acts,analyze_graft_additivity}.py.data/runs/activations/qwen35-{r1,canonical}/, analysis under data/runs/analysis/; scripts experiments/sdf/*.data/runs/seedoss_base_instruct_kl/, data/runs/analysis/seed_survival_matrix/; scripts experiments/sdf/{analyze_seedoss_base_kl,plot_survival_matrix}.py.data/analysis/graft_geometry/; scripts experiments/geometry/{delta_it_overlap,activation_collateral}.py.Each adapter's artifact.json records its exact composition/training + git commit + weight SHA-256.
aft/seq/graft
(so SEQ and GRAFT share identical ingredients). Some of our activation-geometry figures were computed
on a CoT-only AFT variant with the same MSM and recipe; the qualitative geometry (GRAFT ≈ SEQ) is the
same. Ask if you want that exact variant.Adapters are research artifacts released for interpretability/safety work; each inherits the license of
its base model (Llama-3.1 Community, Qwen, Seed-OSS) — respect those. The cheese MSM/AFT/SEQ parents are
Chloe Li's (chloeli/*); the cheese graft hosted here is a derivative composition of her adapters,
released with credit. MATS 2026 (Praxis; Shi Feng), organisms by Dani Roytburg & collaborators.