17 Commits

Author SHA1 Message Date
faber 04b8ec60cb Add ASPA framework, AutoObliterator, Watchtower, expanded eval corpus
New core modules:
- auto_obliterate.py: Automated multi-iteration obliteration pipeline
- watchtower.py: HF Hub model discovery and tracking
- ui_watchtower.py: Gradio tabs for Watchtower (ready for app.py wiring)
- hard_negative.py: Residue mining from refusal audits
- model_profile.py: Parameter profiling from safetensors/config
- bestiary_sync.py: Sync models from PlinyOS BESTIARY registry
- models_client.py: Lightweight HF model list client

Framework enhancements:
- abliterate.py: ASPA source-tethering, step gradient blending, hard-negative residue support
- cli.py: self-improve command, model profiling, hard-negative flags
- prompts.py: Expanded 842-prompt refusal eval corpus across 10 categories
- __init__.py: New exports (Watchtower, AutoObliterator)

Reference implementations (14 scripts):
- ASPA sweep, gradient search, coherence eval, MMLU benchmarks
- Pareto controller, refusal sniper, stock comparisons

Documentation:
- README: Research framing, responsible use section, comprehensive disclaimer
- docs/beyond_sota_roadmap.md, docs/recursive_self_improvement.md

Tests: 4 new test files (354 lines)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-06-09 03:54:38 -04:00
Stella Biderman 501ff0c963 Add gpu-calc command and document precision/quantization options
New `obliteratus gpu-calc` subcommand estimates minimum GPU count from
model params, dtype, and GPU VRAM. Auto-detects param counts from HF
configs including MoE expert structure.

README now covers --dtype, --quantization flags, the gpu-calc command,
and references both in the "Choosing the right setup" table.
2026-03-17 14:01:18 -04:00
Stella Biderman 51f621d0a2 Save model snapshot to CPU to avoid OOM on multi-GPU setups
The snapshot() deepcopy was cloning tensors on their original GPU
devices, doubling VRAM usage. For a 234GB model sharded across 6
A100-80GB GPUs (~39GB each), this left no room for the copy.

Now snapshot stores tensors on CPU and restore() moves them back
to each parameter's current device.
2026-03-13 17:13:50 -04:00
Stella Biderman a2bb748f1b Revert "Add data parallel support for PROBE stage"
This reverts commit 1a6e2577bb.
2026-03-13 16:54:31 -04:00
Stella Biderman 1a6e2577bb Add data parallel support for PROBE stage
When --data-parallel is passed and the model fits on a single GPU,
wraps it with nn.DataParallel to split prompt batches across all
available GPUs during activation collection. Batch size scales by
GPU count. Hooks already move activations to CPU so they work
correctly across replicas.
2026-03-13 01:24:31 -04:00
Stella Biderman a634950abd Update remote install URL to StellaAthena fork 2026-03-13 01:02:18 -04:00
Stella Biderman b23d989824 Add __main__.py and fix remote pip install command 2026-03-12 12:56:03 -04:00
Stella Biderman cbdb772eb9 Add multi-GPU support with --gpus flag
Adds --gpus flag to obliterate, run, and tourney commands for controlling
which GPUs to use (sets CUDA_VISIBLE_DEVICES). Works both locally and with
--remote. Models are automatically split across selected GPUs via
accelerate's device_map="auto". Also adds gpus field to remote YAML config.
2026-03-12 12:35:29 -04:00
Stella Biderman 34032b7821 Add remote SSH execution support for GPU nodes
Adds --remote [user@]host flag to obliterate, run, and tourney commands,
enabling execution on remote GPU nodes via SSH. Also supports a remote:
section in YAML configs. The remote runner handles SSH connectivity checks,
GPU detection, auto-installation of obliteratus, log streaming, and result
syncing back to the local machine via scp.
2026-03-11 15:51:16 -04:00
pliny 526cfb8943 Add files via upload 2026-03-08 13:02:53 -07:00
pliny 69fa63ac43 Add files via upload 2026-03-08 12:07:56 -07:00
pliny 1065809658 Add files via upload 2026-03-07 17:54:38 -08:00
pliny ece134f870 Add files via upload 2026-03-07 17:53:42 -08:00
pliny 984ce14059 Add files via upload 2026-03-05 10:03:46 -08:00
pliny 66ea4a6f86 Add files via upload 2026-03-05 00:50:44 -08:00
pliny 8312bbfa8d Add files via upload 2026-03-04 13:09:57 -08:00
pliny 0f6114fe87 Add files via upload 2026-03-04 12:38:18 -08:00