31B regimes parsed (early persist bump L7-16, motor only terminal — E2B signature absent, matches E4B); exp4_regimes.py takes explicit out path / defaults next to input jbar (fix pushed to node before 26B stage)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -42,9 +42,9 @@
|
|||||||
"hidden": 5376,
|
"hidden": 5376,
|
||||||
"workspace_band": null,
|
"workspace_band": null,
|
||||||
"kv_share_start": "none found in config (no num_kv_shared_layers key printed \u2014 verify in scan; if truly absent, all entrances structurally live)",
|
"kv_share_start": "none found in config (no num_kv_shared_layers key printed \u2014 verify in scan; if truly absent, all entrances structurally live)",
|
||||||
"jbar": "pending (H100 pipeline v4)",
|
"jbar": "bucket:results-lens/jbar_31b.pt (256/256 prompts)",
|
||||||
"scan": "pending",
|
"scan": "results/exp4_31b.log (regimes_31b.pt reconstructed via parse_regimes_log.py; scan's own save hit the results/-CWD bug)",
|
||||||
"status": "probe passed; jbar scan running on H100 (2026-07-15 late)"
|
"status": "mapped 2026-07-16, PROVISIONAL: E2B-style mid-depth workspace signature ABSENT (like E4B). Persistence+content bump sits EARLY instead \u2014 L7-16 (persist 0.30-0.49 peak L14, content 0.76-0.97, sensor/motor ~0). Sensor is two-lobed: L26-40 (peak 0.17@L26) and L49-56 (~0.12). Motor essentially absent until the final layer (0.06-0.07 L50-56, 0.20@L59). Ignition cross-check (in-log): commitment pinned hard through L38, collapses to ~0 at L42-46, becomes write-responsive at L54-58 (sign flips with w>=0.5 on all three pairs). Early persist zone vs late write-responsiveness disagree \u2014 no single band supported yet; needs jbar-side analysis before any band is entered."
|
||||||
},
|
},
|
||||||
"google/gemma-4-26B-A4B-it": {
|
"google/gemma-4-26B-A4B-it": {
|
||||||
"revision": "01e5b3ee840d3a9e0b0b493c593e85398a30ef75",
|
"revision": "01e5b3ee840d3a9e0b0b493c593e85398a30ef75",
|
||||||
|
|||||||
@@ -0,0 +1,124 @@
|
|||||||
|
|
||||||
|
Loading weights: 0%| | 0/1188 [00:00<?, ?it/s]
|
||||||
|
Loading weights: 99%|█████████▊| 1172/1188 [00:00<00:00, 11704.66it/s]
|
||||||
|
Loading weights: 100%|██████████| 1188/1188 [00:00<00:00, 11701.74it/s]
|
||||||
|
layer | sensor(top==cur) motor(top==next) persist(top10 Jaccard) content-word
|
||||||
|
L 0 | 0.02 | 0.00 | 0.04 | 0.36
|
||||||
|
L 1 | 0.02 | 0.00 | 0.00 | 0.62
|
||||||
|
L 2 | 0.04 | 0.00 | 0.02 | 0.48
|
||||||
|
L 3 | 0.03 | 0.00 | 0.03 | 0.51
|
||||||
|
L 4 | 0.02 | 0.00 | 0.08 | 0.31
|
||||||
|
L 5 | 0.01 | 0.00 | 0.18 | 0.65
|
||||||
|
L 6 | 0.01 | 0.00 | 0.15 | 0.59
|
||||||
|
L 7 | 0.00 | 0.00 | 0.38 | 0.49
|
||||||
|
L 8 | 0.00 | 0.00 | 0.47 | 0.47
|
||||||
|
L 9 | 0.00 | 0.00 | 0.40 | 0.83
|
||||||
|
L10 | 0.00 | 0.00 | 0.48 | 0.95
|
||||||
|
L11 | 0.00 | 0.00 | 0.31 | 0.97
|
||||||
|
L12 | 0.00 | 0.00 | 0.31 | 0.76
|
||||||
|
L13 | 0.00 | 0.00 | 0.36 | 0.88
|
||||||
|
L14 | 0.00 | 0.00 | 0.49 | 0.95
|
||||||
|
L15 | 0.00 | 0.00 | 0.30 | 0.97
|
||||||
|
L16 | 0.00 | 0.00 | 0.28 | 0.97
|
||||||
|
L17 | 0.01 | 0.00 | 0.24 | 0.68
|
||||||
|
L18 | 0.02 | 0.00 | 0.18 | 0.69
|
||||||
|
L19 | 0.01 | 0.00 | 0.25 | 0.66
|
||||||
|
L20 | 0.07 # | 0.00 | 0.11 | 0.64
|
||||||
|
L21 | 0.08 # | 0.00 | 0.07 | 0.77
|
||||||
|
L22 | 0.04 | 0.00 | 0.08 | 0.69
|
||||||
|
L23 | 0.05 | 0.00 | 0.13 | 0.83
|
||||||
|
L24 | 0.03 | 0.00 | 0.16 | 0.96
|
||||||
|
L25 | 0.04 | 0.00 | 0.19 | 0.93
|
||||||
|
L26 | 0.17 ### | 0.00 | 0.04 | 0.69
|
||||||
|
L27 | 0.07 # | 0.00 | 0.06 | 0.79
|
||||||
|
L28 | 0.11 ## | 0.00 | 0.05 | 0.83
|
||||||
|
L29 | 0.12 ## | 0.00 | 0.05 | 0.80
|
||||||
|
L30 | 0.11 ## | 0.01 | 0.05 | 0.63
|
||||||
|
L31 | 0.15 ## | 0.00 | 0.03 | 0.69
|
||||||
|
L32 | 0.14 ## | 0.00 | 0.03 | 0.49
|
||||||
|
L33 | 0.15 ## | 0.01 | 0.02 | 0.63
|
||||||
|
L34 | 0.12 ## | 0.00 | 0.02 | 0.69
|
||||||
|
L35 | 0.12 ## | 0.01 | 0.02 | 0.63
|
||||||
|
L36 | 0.10 # | 0.00 | 0.02 | 0.54
|
||||||
|
L37 | 0.08 # | 0.00 | 0.03 | 0.59
|
||||||
|
L38 | 0.09 # | 0.01 | 0.03 | 0.72
|
||||||
|
L39 | 0.11 ## | 0.01 | 0.03 | 0.74
|
||||||
|
L40 | 0.13 ## | 0.01 | 0.06 | 0.83
|
||||||
|
L41 | 0.03 | 0.00 | 0.05 | 0.86
|
||||||
|
L42 | 0.02 | 0.00 | 0.08 | 0.83
|
||||||
|
L43 | 0.02 | 0.00 | 0.05 | 0.85
|
||||||
|
L44 | 0.04 | 0.00 | 0.06 | 0.82
|
||||||
|
L45 | 0.06 # | 0.02 | 0.05 | 0.88
|
||||||
|
L46 | 0.06 # | 0.01 | 0.06 | 0.93
|
||||||
|
L47 | 0.02 | 0.02 | 0.05 | 0.83
|
||||||
|
L48 | 0.05 | 0.04 | 0.05 | 0.83
|
||||||
|
L49 | 0.08 # | 0.05 | 0.04 | 0.93
|
||||||
|
L50 | 0.12 ## | 0.06 # | 0.04 | 0.91
|
||||||
|
L51 | 0.14 ## | 0.06 # | 0.06 | 0.88
|
||||||
|
L52 | 0.12 ## | 0.07 # | 0.07 | 0.88
|
||||||
|
L53 | 0.12 ## | 0.07 # | 0.08 | 0.87
|
||||||
|
L54 | 0.12 ## | 0.07 # | 0.10 | 0.78
|
||||||
|
L55 | 0.09 # | 0.07 # | 0.12 | 0.79
|
||||||
|
L56 | 0.09 # | 0.06 # | 0.11 | 0.69
|
||||||
|
L57 | 0.06 # | 0.04 | 0.13 | 0.54
|
||||||
|
L58 | 0.02 | 0.02 | 0.35 | 0.44
|
||||||
|
L59 | 0.00 | 0.20 ### | 0.08 | 0.36
|
||||||
|
|
||||||
|
ignition: commitment C=(P1-P2)/(P1+P2) at read pos, by layer
|
||||||
|
pair | w: 0.00 0.25 0.50 0.75 1.00
|
||||||
|
dog/piano L 2 | -0.84 -0.83 -0.79 -0.76 -0.77
|
||||||
|
dog/piano L 6 | -0.98 -0.99 -0.99 -0.98 -0.99
|
||||||
|
dog/piano L10 | -0.97 -0.97 -0.97 -0.97 -0.98
|
||||||
|
dog/piano L14 | -0.98 -0.98 -0.98 -0.98 -0.99
|
||||||
|
dog/piano L18 | -0.99 -0.99 -0.99 -0.99 -0.99
|
||||||
|
dog/piano L22 | -0.85 -0.85 -0.86 -0.87 -0.87
|
||||||
|
dog/piano L26 | -0.83 -0.81 -0.82 -0.85 -0.85
|
||||||
|
dog/piano L30 | -0.41 -0.40 -0.35 -0.45 -0.50
|
||||||
|
dog/piano L34 | -0.46 -0.46 -0.63 -0.73 -0.78
|
||||||
|
dog/piano L38 | -0.56 -0.58 -0.74 -0.77 -0.84
|
||||||
|
dog/piano L42 | -0.00 +0.00 +0.01 +0.00 -0.00
|
||||||
|
dog/piano L46 | -0.00 +0.00 +0.00 +0.00 -0.00
|
||||||
|
dog/piano L50 | +0.01 +0.01 +0.06 +0.02 +0.02
|
||||||
|
dog/piano L54 | -0.03 -0.01 +0.10 +0.17 +0.12
|
||||||
|
dog/piano L58 | -0.21 -0.17 +0.32 +0.30 +0.24
|
||||||
|
ocean/violin L 2 | +0.92 +0.93 +0.93 +0.92 +0.89
|
||||||
|
ocean/violin L 6 | +0.96 +0.97 +0.97 +0.96 +0.95
|
||||||
|
ocean/violin L10 | +0.99 +0.99 +1.00 +0.99 +0.99
|
||||||
|
ocean/violin L14 | +0.99 +0.99 +0.99 +0.99 +0.99
|
||||||
|
ocean/violin L18 | +0.82 +0.87 +0.82 +0.72 +0.61
|
||||||
|
ocean/violin L22 | -0.89 -0.87 -0.87 -0.89 -0.92
|
||||||
|
ocean/violin L26 | -0.66 -0.59 -0.68 -0.76 -0.81
|
||||||
|
ocean/violin L30 | -0.30 -0.19 -0.15 -0.33 -0.46
|
||||||
|
ocean/violin L34 | +0.09 +0.22 -0.09 -0.39 -0.51
|
||||||
|
ocean/violin L38 | +0.51 +0.58 +0.19 -0.15 -0.22
|
||||||
|
ocean/violin L42 | +0.18 +0.14 +0.19 +0.02 -0.04
|
||||||
|
ocean/violin L46 | -0.02 -0.03 -0.00 -0.08 -0.09
|
||||||
|
ocean/violin L50 | +0.53 +0.48 +0.62 +0.33 +0.14
|
||||||
|
ocean/violin L54 | -0.99 -0.99 +0.18 +0.28 +0.34
|
||||||
|
ocean/violin L58 | -0.74 -0.82 +0.36 +0.38 +0.37
|
||||||
|
dragon/bicycle L 2 | -1.00 -1.00 -1.00 -1.00 -1.00
|
||||||
|
dragon/bicycle L 6 | -1.00 -1.00 -1.00 -1.00 -1.00
|
||||||
|
dragon/bicycle L10 | -0.99 -0.99 -0.99 -0.99 -0.99
|
||||||
|
dragon/bicycle L14 | -0.99 -0.99 -0.99 -0.99 -0.99
|
||||||
|
dragon/bicycle L18 | -0.99 -0.99 -0.99 -0.98 -0.98
|
||||||
|
dragon/bicycle L22 | -0.93 -0.93 -0.92 -0.90 -0.92
|
||||||
|
dragon/bicycle L26 | -0.96 -0.95 -0.95 -0.92 -0.94
|
||||||
|
dragon/bicycle L30 | -0.74 -0.77 -0.71 -0.67 -0.72
|
||||||
|
dragon/bicycle L34 | -0.79 -0.77 -0.77 -0.80 -0.80
|
||||||
|
dragon/bicycle L38 | -0.84 -0.84 -0.85 -0.81 -0.86
|
||||||
|
dragon/bicycle L42 | -0.04 -0.04 -0.03 -0.01 -0.02
|
||||||
|
dragon/bicycle L46 | -0.01 -0.01 -0.01 -0.00 -0.00
|
||||||
|
dragon/bicycle L50 | -0.47 -0.48 -0.36 -0.23 -0.23
|
||||||
|
dragon/bicycle L54 | -0.68 -0.81 +0.00 +0.10 +0.11
|
||||||
|
dragon/bicycle L58 | -0.74 -0.80 +0.04 +0.10 +0.07
|
||||||
|
Traceback (most recent call last):
|
||||||
|
File "/workspace/jspace/scripts/exp4_regimes.py", line 142, in <module>
|
||||||
|
main()
|
||||||
|
File "/workspace/jspace/scripts/exp4_regimes.py", line 137, in main
|
||||||
|
torch.save({"sensor": sensor, "motor": motor, "persist": persist,
|
||||||
|
File "/venv/main/lib/python3.12/site-packages/torch/serialization.py", line 1003, in save
|
||||||
|
with _open_zipfile_writer(f) as opened_zipfile:
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
File "/venv/main/lib/python3.12/site-packages/torch/serialization.py", line 865, in _open_zipfile_writer
|
||||||
|
return container(name_or_buffer) # type: ignore[arg-type]
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
Binary file not shown.
Binary file not shown.
|
Before Width: | Height: | Size: 163 KiB After Width: | Height: | Size: 188 KiB |
+14
-1
@@ -134,8 +134,21 @@ def main():
|
|||||||
for l in range(2, len(sensor), 4):
|
for l in range(2, len(sensor), 4):
|
||||||
print(f"{w1}/{w2:<9} L{l:>2} | " +
|
print(f"{w1}/{w2:<9} L{l:>2} | " +
|
||||||
" ".join(f"{curves[wi, l]:+.2f}" for wi in range(5)))
|
" ".join(f"{curves[wi, l]:+.2f}" for wi in range(5)))
|
||||||
|
if len(sys.argv) > 2:
|
||||||
|
out = Path(sys.argv[2])
|
||||||
|
elif len(sys.argv) > 1:
|
||||||
|
# default: save next to the input jbar (that dir is what node
|
||||||
|
# sidecars sync; CWD-relative "results/" has crashed 3 scans)
|
||||||
|
ckp = Path(sys.argv[1])
|
||||||
|
out = ckp.parent / ckp.name.replace("jbar", "regimes")
|
||||||
|
if out == ckp:
|
||||||
|
out = RES / "regimes.pt"
|
||||||
|
else:
|
||||||
|
out = RES / "regimes.pt"
|
||||||
|
out.parent.mkdir(parents=True, exist_ok=True)
|
||||||
torch.save({"sensor": sensor, "motor": motor, "persist": persist,
|
torch.save({"sensor": sensor, "motor": motor, "persist": persist,
|
||||||
"content": content, "ignition": ign}, RES / "regimes.pt")
|
"content": content, "ignition": ign}, out)
|
||||||
|
print("saved", out)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|||||||
@@ -0,0 +1,44 @@
|
|||||||
|
"""Reconstruct regimes_*.pt from an exp4_*.log printed table (the scan's
|
||||||
|
torch.save crashes on its CWD-relative "results/" path — known bug; the
|
||||||
|
printed table is the durable artifact). Generalizes parse_e4b_regimes.py.
|
||||||
|
|
||||||
|
Usage: parse_regimes_log.py LOG OUT [--layers N] [--note TEXT]
|
||||||
|
"""
|
||||||
|
import argparse
|
||||||
|
import re
|
||||||
|
|
||||||
|
import torch
|
||||||
|
|
||||||
|
ap = argparse.ArgumentParser()
|
||||||
|
ap.add_argument("log")
|
||||||
|
ap.add_argument("out")
|
||||||
|
ap.add_argument("--layers", type=int, default=None,
|
||||||
|
help="assert this many table rows were parsed")
|
||||||
|
ap.add_argument("--note", default=None,
|
||||||
|
help="provenance note stored in the tensor dict")
|
||||||
|
args = ap.parse_args()
|
||||||
|
|
||||||
|
sensor, motor, persist, content = [], [], [], []
|
||||||
|
pat = re.compile(
|
||||||
|
r"^L\s*(\d+) \| ([\d.]+)\s*#* *\| ([\d.]+)\s*#* *\| ([\d.]+) \| ([\d.]+)")
|
||||||
|
for line in open(args.log):
|
||||||
|
m = pat.match(line.strip())
|
||||||
|
if m:
|
||||||
|
i, s, mo, p, c = m.groups()
|
||||||
|
assert int(i) == len(sensor), f"non-contiguous row L{i}"
|
||||||
|
sensor.append(float(s))
|
||||||
|
motor.append(float(mo))
|
||||||
|
persist.append(float(p))
|
||||||
|
content.append(float(c))
|
||||||
|
if args.layers is not None:
|
||||||
|
assert len(sensor) == args.layers, len(sensor)
|
||||||
|
note = args.note or f"reconstructed from {args.log}"
|
||||||
|
torch.save({"sensor": torch.tensor(sensor), "motor": torch.tensor(motor),
|
||||||
|
"persist": torch.tensor(persist),
|
||||||
|
"content": torch.tensor(content), "note": note}, args.out)
|
||||||
|
print(f"saved {len(sensor)} layers -> {args.out}")
|
||||||
|
print("sensor peak: L%d = %.2f" % (sensor.index(max(sensor)), max(sensor)))
|
||||||
|
print("persist peak: L%d = %.2f" % (persist.index(max(persist)),
|
||||||
|
max(persist)))
|
||||||
|
print("motor >=0.1 from: L%s" % next(
|
||||||
|
(i for i, v in enumerate(motor) if v >= 0.1), "never"))
|
||||||
Reference in New Issue
Block a user