Views
No views yet
erdos. Checkpoint saved
after training step 45 (0-indexed). Strict upstream eval parity:
1100s hard kill, verbatim prompts/entrypoints, group 64x8, T=1.0, kl 0.1.1{
2 "step": 45,
3 "progress/batch": 45,
4 "optim/lr": 4e-05,
5 "progress/done_frac": 0.92,
6 "puct/buffer_size": 728,
7 "puct/sampled_size": 8,
8 "puct/T": 23040,
9 "puct/scale_last": 0.27911511918860965,
10 "puct/buffer_value/mean": -0.38425359670376147,
11 "puct/buffer_value/std": 0.019475813456698465,
12 "puct/buffer_value/min": -0.66,
13 "puct/buffer_value/max": -0.3808848808113904,
14 "puct/buffer_timestep/mean": 21.747252747252748,
15 "puct/buffer_timestep/std": 13.136304368147167,
16 "puct/buffer_timestep/min": -1.0,
17 "puct/buffer_timestep/max": 44.0,
18 "puct/buffer_construction_len/mean": 105.1456043956044,
19 "puct/buffer_construction_len/std": 44.958597650023336,
20 "puct/buffer_construction_len/min": 40.0,
21 "puct/buffer_construction_len/max": 400.0,
22 "puct/sampled_value/mean": -0.3808860882558742,
23 "puct/sampled_value/std": 6.51078477054006e-07,
24 "puct/sampled_value/min": -0.3808868311737138,
25 "puct/sampled_value/max": -0.3808848808113904,
26 "puct/sampled_timestep/mean": 44.0,
27 "puct/sampled_timestep/std": 0.0,
28 "puct/sampled_timestep/min": 44.0,
29 "puct/sampled_timestep/max": 44.0,
30 "puct/sampled_construction_len/mean": 225.0,
31 "puct/sampled_construction_len/std": 66.14378277661477,
32 "puct/sampled_construction_len/min": 200.0,
33 "puct/sampled_construction_len/max": 400.0,
34 "time/sampling": 2270.6180250644684,
35 "env/all/ac_tokens_per_turn": 10286.18359375,
36 "env/all/ob_tokens_per_turn": 1618.125,
37 "env/all/turns_per_episode": 1.0,
38 "env/all/total_episodes": 512,
39 "env/all/total_turns": 512,
40 "env/all/total_ac_tokens": 5266526,
41 "env/all/total_ob_tokens": 828480,
42 "env/all/time/sampling_mean": 609.0653453413397,
43 "env/all/time/sampling_max": 894.0178334712982,
44 "env/all/time/env_step_mean": 299.68800198705867,
45 "env/all/time/env_step_max": 1411.2053201198578,
46 "env/all/reward/mean": 0.5352779101629077,
47 "env/all/reward/max": 2.6254718990156447,
48 "env/all/reward/min": 0.0,
49 "env/all/format": 0.998046875,
50 "env/all/format/min": 0.0,
51 "env/all/format/max": 1.0,
52 "env/all/reward": 0.5352779101629077,
53 "env/all/correctness": 0.220703125,
54 "env/all/correctness/min": 0.0,
55 "env/all/correctness/max": 1.0,
56 "env/all/raw_score": 0.420747854603428,
57 "env/all/raw_score/min": 0.38088389905075964,
58 "env/all/raw_score/max": 0.9244428899771228,
59 "env/all/initial_raw_score": -0.3808860882558742,
60 "env/all/initial_raw_score/min": -0.3808868311737138,
61 "env/all/initial_raw_score/max": -0.3808848808113904,
62 "env/all/msg": "After normalization, h(x) is not in [0, 1]. Range: [0.0, 1.0000000000000002]",
63 "env/all/parsed_code": "```python\nimport numpy as np\nfrom scipy.optimize import minimize\n\ndef run(seed=42, budget_s=1000, **kwargs):\n np.random.seed(seed)\n n_points = 200\n dx = 2.0 / n_points\n desired_sum = n_points / 2.0 # Ensures \u222bh(x)dx = 1\n\n best_h = np.zeros(n_points)\n best_t = np.inf\n\n # Check if initial_h_values is available and use it as the base\n if 'initial_h_values' in globals():\n initial_h = np.array(initial_h_values)\n if initial_h.shape[0] > n_points:\n initial_h = initial_h[::2]\n elif initial_h.shape[0] < n_points:\n period = len(initial_h)\n num_repeats = n_points // period\n initial_h = np.repeat(initial_h, num_repeats)[:n_points]\n sum_h = np.sum(initial_h)\n delta = desired_sum - sum_h\n remaining_delta = delta\n for i in reversed(range(n_points)):\n if remaining_delta <= 0:\n break\n add = min(1.0 - initial_h[i], remaining_delta)\n initial_h[i] += add\n remaining_delta -= add\n initial_h = np.clip(initial_h, 0, 1)\n # Add initial_h to the list of candidates\n initial_guesses = [initial_h]\n else:\n # Generate 50 random initial guesses\n initial_guesses = []\n for _ in range(50):\n h = np.zeros(n_points)\n indices = np.random.choice(n_points, size=int(desired_sum), replace=False)\n h[indices] = 1.0\n # Clip and adjust sum\n sum_h = np.sum(h)\n delta = desired_sum - sum_h\n if delta > 0:\n for i in range(n_points):\n if delta <= 0:\n break\n add = min(1.0 - h[i], delta)\n h[i] += add\n delta -= add\n elif delta < 0:\n for i in reversed(range(n_points)):\n if delta >= 0:\n break\n sub = min(h[i], -delta)\n h[i] -= sub\n delta += sub\n initial_guesses.append(h)\n\n # Optimize each guess\n for h_guess in initial_guesses:\n def objective(x):\n return x[-1] # Objective: minimize t\n\n # Constraint: sum of h = desired_sum\n def constraint_sum(x):\n return np.sum(x[:-1]) - desired_sum\n\n # Constraints: t >= overlap for all shifts\n def constraints_func(x):\n h_vec = x[:-1]\n t = x[-1]\n cross_corr = np.correlate(h_vec, 1 - h_vec, mode='full')\n overlaps = cross_corr * dx # Riemann sum\n return [t - overlap for overlap in overlaps]\n\n cons = [\n {'type': 'eq', 'fun': constraint_sum},\n {'type': 'ineq', 'fun': constraints_func}\n ]\n\n bounds = [(0.0, 1.0) for _ in range(n_points)] + [(0.0, np.inf)]\n\n try:\n result = minimize(\n fun=objective,\n x0=np.concatenate((h_guess, [0.5])),\n bounds=bounds,\n constraints=cons,\n method='SLSQP',\n options={\n 'ftol': 1e-10, # Tighter tolerance for better convergence\n 'maxiter': 1000, # Allow more iterations for deeper optimization\n 'disp': False\n }\n )\n if result.success and result.x[-1] < best_t:\n best_t = result.x[-1]\n best_h = result.x[:-1]\n except Exception as e:\n # Skip if optimization fails\n pass\n\n return best_h, best_t, n_points\n```",
64 "env/all/time/policy": 609.0653453413397,
65 "env/all/time/policy/min": 257.7319724559784,
66 "env/all/time/policy/max": 894.0178334712982,
67 "env/all/time/env_step": 299.68800198705867,
68 "env/all/time/env_step/min": 0.0073125362396240234,
69 "env/all/time/env_step/max": 1411.2053201198578,
70 "env/all/time/reward_compute": 4.2514875531196594e-07,
71 "env/all/time/reward_compute/min": 2.7567148208618164e-07,
72 "env/all/time/reward_compute/max": 9.499490261077881e-07,
73 "env/all/by_group/frac_mixed": 1.0,
74 "env/all/by_group/frac_all_good": 0.0,
75 "env/all/by_group/frac_all_bad": 0.0,
76 "advantage/mean": 0.03317566215991974,
77 "advantage/min": -0.8540223836898804,
78 "advantage/max": 6.606634616851807,
79 "time/assemble_training_data": 8.273764371871948,
80 "time/kl_vs_base": 138.26387476921082,
81 "kl_policy_base": 0.0008284315699711442,
82 "time/train": 1129.2023701667786,
83 "time/save_checkpoint": 9.61498737335205,
84 "time/total": 3557.3748009204865
85}[2026-07-09T06:24:18+00:00] job=1812626 node=node-31 ngpu=3 ntrain=1 replicas=2 flash_attn=no
[2026-07-09T08:02:36+00:00] job=1813125 node=node-12 ngpu=3 ntrain=1 replicas=2 flash_attn=yes
[2026-07-09T09:32:13+00:00] job=1813126 node=node-3 ngpu=6 ntrain=2 replicas=4 flash_attn=yes
[2026-07-09T10:04:31+00:00] job=1813623 node=node-31 ngpu=3 ntrain=1 replicas=2 flash_attn=yes