CoolFace
Modelpublic

marx161-cmd/geometric-abliteration-adapters-gpt-oss-120b

sourceHugging Faceupdated 4mo agoView on Hugging Face
0likes
Model Card

Geometric Abliteration Adapters for GPT-OSS 120B

This repository packages two small pure-projection LoRA adapters measured on mshojaei77/gpt-oss-120b using the Modal abliteration pipeline.

The included adapters are:

AdapterSubfolderDirectionScaleLayersTarget modules
Disinhibition / hedge-reductionadapters/disinhibition-lora-puredisinhibition_purified.pt2.01-35o_proj
Refusal-direction ablationadapters/refusal-lora-purerefusal_purified.pt1.01-35o_proj

GPT-OSS 120B uses a MoE layout in this pipeline where the accessible stable target was attention output projection only. The MLP/down-projection target used for dense Llama-style models was not packaged here.

Method

For a measured direction d, pure projection edits a target weight matrix W:

text
W_edited = W - scale * d (d^T W)
delta = -scale * d (d^T W)

That outer product is stored directly as rank-1 PEFT LoRA factors. No adapter training or SVD is used.

Modal Run Provenance

The artifacts came from Modal volume model-weights:

  • —model: llm/gpt-oss-120b
  • —measurements: measurements/gpt-oss-120b
  • —adapters: loras/gpt-oss-120b

Local source workspace:

/home/comrade/homelab/abliteration-research-hub/workspaces/gpt-oss-120b

The available Modal volume outputs contained measurement tensors/reports and LoRA payloads. No separate semantic evaluation result files were present in the volume at packaging time.

Measurement Notes

Measurement reports are included under measurements/:

  • —purification_report.json
  • —refusal_purification_report.json

The GPT-OSS reports marked all layers 0-35 valid, while the packaged adapters use layers 1-35, matching the production Llama 3.2 adapter convention used by the local pipeline.

This is a research artifact. Marker-based direction measurement and benchmark purification are not a full behavioral, safety, or capability evaluation.

Usage

python
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel

base_id = "mshojaei77/gpt-oss-120b"
repo_id = "YOUR_HF_REPO_ID"

tokenizer = AutoTokenizer.from_pretrained(base_id, trust_remote_code=True)
base_model = AutoModelForCausalLM.from_pretrained(
    base_id,
    torch_dtype=torch.bfloat16,
    device_map="auto",
    trust_remote_code=True,
)

model = PeftModel.from_pretrained(
    base_model,
    repo_id,
    subfolder="adapters/disinhibition-lora-pure",
)

Files

text
adapters/disinhibition-lora-pure/
  adapter_config.json
  adapter_model.safetensors
  ABLITERATION_META.json
adapters/refusal-lora-pure/
  adapter_config.json
  adapter_model.safetensors
  ABLITERATION_META.json
measurements/
  purification_report.json
  refusal_purification_report.json
tools/
  abliterate_to_lora.py
  measure_overlap.py
eval/
  eval_buckets.json
merge_adapters.py

Responsible Use

These adapters can alter refusal and hedging behavior. Do not treat them as a substitute for safety evaluation, policy compliance checks, or domain-specific validation. Any merged derivative inherits the base model's license and use terms.