@@ -1491,11 +1491,9 @@ def quality_fn(seq_tokens):
14911491
14921492 # Substrate token signatures (theme momentum) -- F-frequency cos basis
14931493 # over char codes, phi-decayed across positions. L2-normalized.
1494- if vocab_for_bigram is not None :
1495- token_signatures = build_substrate_token_signatures (vocab_for_bigram )
1496- print (f" substrate token signatures: { token_signatures .shape } " )
1497- else :
1498- token_signatures = None
1494+ # NOTE: v57 showed theme momentum drags mean creativity ~-0.01.
1495+ # Disabled for v59 to isolate iambic + threading.
1496+ token_signatures = None
14991497
15001498 # Active training base: starts as tiny_seed, GROWS by appending each
15011499 # cycle's best refined output -- only if (a) creativity > corpus
@@ -1515,18 +1513,11 @@ def quality_fn(seq_tokens):
15151513 global_step = 0
15161514 prompt = train_seed [:16 ].unsqueeze (0 )
15171515
1518- # Substrate vocab curriculum: tier-walked Fibonacci expansion.
1519- # Cycle 1: F(8)=21 word slots; cycle 6: full vocab.
1520- _VOCAB_TIERS = [21 , 34 , 55 , 89 , 144 ] # F(8)..F(12)
1521- n_chars = sum (1 for t in (vocab or []) if len (t ) == 1 ) if vocab else 65
1516+ # Vocab curriculum disabled for v59 -- v58 showed it hurts mid-cycles.
15221517 for cycle in range (n_cycles ):
1523- if cycle < len (_VOCAB_TIERS ):
1524- active_vocab_size = n_chars + _VOCAB_TIERS [cycle ]
1525- else :
1526- active_vocab_size = None # full vocab unlocked
1518+ active_vocab_size = None
15271519 print (f"\n --- Cycle { cycle + 1 } /{ n_cycles } "
15281520 f"active_base_size={ active_base .numel ()} chars "
1529- f"active_vocab={ active_vocab_size or vocab_size } "
15301521 f"best_creativity={ best_creativity :.4f} ---" , flush = True )
15311522 for s in range (steps_per_cycle ):
15321523 new_K = sched (global_step , args .steps )
0 commit comments