mirror of
https://github.com/wassname/persona-steering-template-library.git
synced 2026-08-11 11:23:11 +08:00
Top level is now only what the runbook or a re-run touches: validate_persona_axes, bounded_thinking_judge, template_catalog, export_selections, parse_stage_a, run_axis, export_steering_selection. Corpus ingestion and publishing moved to scripts/corpus/, plotting and stats to scripts/report/. Moved files needed parents[1] -> parents[2]; the two corpus scripts that import template_catalog use the sys.path shim bounded_thinking_judge_liveproof already used. Also completes the export_steering_selection rename: an earlier git reset had dropped the staged deletion, leaving both filenames tracked. Co-Authored-By: Claudypoo <288921227+claudypoo@users.noreply.github.com>
scripts/scenario_sources
This directory turns public value, sycophancy, and moral-decision datasets into
local scenario JSONL files for persona-steering experiments. Generated files live in
data/scenarios/; each row is a short prompt plus source fields (text,
axes, source, source_id, self_contained) that can be passed to
scripts/validate_persona_axes.py --family .... Machiavelli is the
one source that needs an LLM compression step first because the raw game state is
long; its committed cache is scripts/scenario_sources/data/machiavelli_summaries.jsonl,
and the published derived dataset is
wassname/machiavelli_character_scenarios.
Generate local scenario samples for validation:
uv run python scripts/scenario_sources/export_scenarios.py --sources all --limit 1999
Generate a single source:
uv run python scripts/scenario_sources/export_scenarios.py --sources machiavelli --limit 1999
Screen a generated file before using it for steering pairs:
uv run python scripts/validate_persona_axes.py \
--family data/scenarios/scenarios_machiavelli.jsonl \
--n 3 \
--dry-run \
--out /tmp/persona_steering_machiavelli_scenarios_dryrun.json