# Section-08 traceability config. # # Loads through align.config.load_config under STRUCT MODE: a typo'd key raises # here, at launch, instead of silently running with the default it failed to # override. Field prose lives in align/config.py::TraceConfig. [trace] enabled = true # ---- trace provenance ------------------------------------------------- prompt_set_source = "prm800k" prompt_set_n = 512 prompt_set_seed = 0 # Filled by the builder. "PENDING" is EXPLICIT -- a stage that requires a # real hash refuses to launch on it. prompt_set_hash = "PENDING" # Stored and analyzed SEPARATELY; the label rides every stream batch. variants = ["teacher_forced", "self_generated"] # The newline id is read from this artifact and NEVER hardcoded. boundary_spec_path = "/apps/development/rlhf/nano-mistral-o1/artifacts/boundary_spec.json" # Every boundary statistic is reported against +/-k control positions. control_k = 2 # ---- crosscoder (Tier 2) ---------------------------------------------- cc_layer = 16 cc_n_latents = 32768 cc_sparsity = "l1" cc_l1_coeff = 0.03 cc_topk = 64 cc_exclusive_threshold = 0.8 cc_lr = 0.0003 cc_batch_size = 4096 # Multiple of cc_batch_size, or resume cannot be exact. cc_buffer_size = 65536 cc_seed = 0 # M3 dry run: <= 50M tokens. The trainer refuses a "dry run" that is not dry. dry_run_enabled = true dry_run_max_tokens = 50000000 # ---- Tier 1 ----------------------------------------------------------- tier1_layers = [0, 8, 16, 24, 31] tier1_lens_steps = 2000 tier1_lens_lr = 0.001 tier1_patch_topk = 16 tier1_position_classes = ["boundary", "answer", "control"]