Bc-AI commited on
Commit
d824e4a
·
verified ·
1 Parent(s): ae7c20e

Upload index.html

Browse files
Files changed (1) hide show
  1. index.html +1285 -18
index.html CHANGED
@@ -1,19 +1,1286 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  </html>
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <meta name="theme-color" content="#eaf8ff" />
7
+ <meta name="description" content="Orion / Project Prism — Transformer 2 research notes on Procedure Banks, Working State, recurrent deliberation, and the retirement of the Knowledge Vault." />
8
+ <title>Orion / Project Prism — Transformer 2 Research Blog</title>
9
+
10
+ <style>
11
+ :root{
12
+ --bg:#edf9ff;
13
+ --bg2:#f8fcff;
14
+ --ink:#0c1622;
15
+ --muted:#5c6b78;
16
+ --line:rgba(22,73,100,.12);
17
+ --glass:rgba(255,255,255,.56);
18
+ --glass-strong:rgba(255,255,255,.76);
19
+ --glass-border:rgba(255,255,255,.78);
20
+ --shadow:0 20px 60px rgba(39,88,112,.15);
21
+ --shadow-soft:0 10px 35px rgba(39,88,112,.10);
22
+ --cyan:#2eb6df;
23
+ --blue:#4d8dff;
24
+ --teal:#3ccdb4;
25
+ --mint:#8ce3cd;
26
+ --navy:#163954;
27
+ --danger:#d95b61;
28
+ --warn:#bd7a00;
29
+ --good:#278f72;
30
+ --radius:26px;
31
+ --radius-sm:18px;
32
+ --blur:28px;
33
+ --content:1180px;
34
+ }
35
+
36
+ *{box-sizing:border-box}
37
+ html{scroll-behavior:smooth}
38
+ body{
39
+ margin:0;
40
+ color:var(--ink);
41
+ font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif;
42
+ background:
43
+ radial-gradient(circle at 14% 5%, rgba(112,226,255,.42), transparent 31%),
44
+ radial-gradient(circle at 88% 14%, rgba(98,188,255,.32), transparent 27%),
45
+ radial-gradient(circle at 45% 58%, rgba(117,231,209,.20), transparent 35%),
46
+ linear-gradient(180deg,var(--bg),var(--bg2) 42%,#eefbff 100%);
47
+ min-height:100vh;
48
+ overflow-x:hidden;
49
+ }
50
+
51
+ body::before{
52
+ content:"";
53
+ position:fixed;
54
+ inset:0;
55
+ pointer-events:none;
56
+ opacity:.28;
57
+ background-image:
58
+ linear-gradient(rgba(255,255,255,.7) 1px,transparent 1px),
59
+ linear-gradient(90deg,rgba(255,255,255,.55) 1px,transparent 1px);
60
+ background-size:52px 52px;
61
+ mask-image:linear-gradient(to bottom,black,transparent 80%);
62
+ z-index:-3;
63
+ }
64
+
65
+ body.dark{
66
+ --bg:#08131c;
67
+ --bg2:#0c1822;
68
+ --ink:#eef8ff;
69
+ --muted:#9fb4c2;
70
+ --line:rgba(181,220,239,.12);
71
+ --glass:rgba(13,27,37,.55);
72
+ --glass-strong:rgba(16,33,45,.78);
73
+ --glass-border:rgba(188,231,250,.14);
74
+ --shadow:0 24px 70px rgba(0,0,0,.34);
75
+ --shadow-soft:0 10px 35px rgba(0,0,0,.24);
76
+ background:
77
+ radial-gradient(circle at 14% 5%, rgba(29,138,177,.24), transparent 31%),
78
+ radial-gradient(circle at 88% 14%, rgba(63,121,205,.23), transparent 27%),
79
+ radial-gradient(circle at 45% 58%, rgba(50,173,152,.14), transparent 35%),
80
+ linear-gradient(180deg,#07131c,#0c1821 43%,#07131c 100%);
81
+ }
82
+
83
+ a{color:inherit;text-decoration:none}
84
+ button{font:inherit}
85
+ code,kbd,pre,.mono{
86
+ font-family:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
87
+ }
88
+
89
+ .ambient{
90
+ position:fixed;
91
+ border-radius:999px;
92
+ filter:blur(10px);
93
+ pointer-events:none;
94
+ z-index:-2;
95
+ opacity:.55;
96
+ animation:float 14s ease-in-out infinite;
97
+ }
98
+ .ambient.one{width:420px;height:420px;left:-160px;top:220px;background:rgba(78,214,235,.22)}
99
+ .ambient.two{width:360px;height:360px;right:-120px;top:520px;background:rgba(81,149,255,.16);animation-delay:-4s}
100
+ .ambient.three{width:300px;height:300px;left:48%;top:1050px;background:rgba(76,214,178,.14);animation-delay:-8s}
101
+ @keyframes float{50%{transform:translate3d(0,22px,0) scale(1.05)}}
102
+
103
+ .progress{
104
+ position:fixed;
105
+ top:0;left:0;
106
+ height:3px;
107
+ width:0%;
108
+ background:linear-gradient(90deg,var(--teal),var(--cyan),var(--blue));
109
+ z-index:200;
110
+ box-shadow:0 0 18px rgba(46,182,223,.45);
111
+ }
112
+
113
+ .nav-wrap{
114
+ position:sticky;
115
+ top:16px;
116
+ z-index:100;
117
+ width:min(calc(100% - 28px), var(--content));
118
+ margin:16px auto 0;
119
+ }
120
+ .nav{
121
+ display:flex;
122
+ align-items:center;
123
+ justify-content:space-between;
124
+ gap:18px;
125
+ min-height:66px;
126
+ padding:10px 12px 10px 18px;
127
+ border:1px solid var(--glass-border);
128
+ background:var(--glass);
129
+ backdrop-filter:blur(var(--blur)) saturate(165%);
130
+ -webkit-backdrop-filter:blur(var(--blur)) saturate(165%);
131
+ border-radius:24px;
132
+ box-shadow:var(--shadow-soft);
133
+ }
134
+ .brand{
135
+ display:flex;align-items:center;gap:12px;min-width:0;
136
+ }
137
+ .brand-mark{
138
+ width:38px;height:38px;border-radius:12px;
139
+ background:
140
+ radial-gradient(circle at 30% 25%,rgba(255,255,255,.95),transparent 26%),
141
+ linear-gradient(145deg,#6be0db,#45aaf4 55%,#2869db);
142
+ box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 8px 18px rgba(55,144,187,.25);
143
+ position:relative;
144
+ }
145
+ .brand-mark::after{
146
+ content:"";
147
+ position:absolute;inset:8px;
148
+ border:1.5px solid rgba(255,255,255,.8);
149
+ border-radius:9px;
150
+ transform:rotate(18deg);
151
+ }
152
+ .brand strong{display:block;font-size:.95rem;letter-spacing:.01em}
153
+ .brand span{display:block;color:var(--muted);font-size:.76rem;margin-top:2px}
154
+ .nav-links{display:flex;gap:4px;align-items:center}
155
+ .nav-links a{
156
+ color:var(--muted);
157
+ font-size:.83rem;
158
+ padding:10px 12px;
159
+ border-radius:14px;
160
+ transition:.2s ease;
161
+ }
162
+ .nav-links a:hover{color:var(--ink);background:rgba(255,255,255,.42)}
163
+ .icon-btn{
164
+ width:42px;height:42px;border:1px solid var(--glass-border);border-radius:14px;
165
+ display:grid;place-items:center;cursor:pointer;
166
+ background:rgba(255,255,255,.35);
167
+ color:var(--ink);
168
+ box-shadow:inset 0 1px 0 rgba(255,255,255,.45);
169
+ }
170
+ body.dark .icon-btn{background:rgba(255,255,255,.045)}
171
+
172
+ .hero{
173
+ width:min(calc(100% - 34px),var(--content));
174
+ margin:78px auto 42px;
175
+ position:relative;
176
+ }
177
+ .hero-grid{
178
+ display:grid;
179
+ grid-template-columns:minmax(0,1.24fr) minmax(330px,.76fr);
180
+ gap:28px;
181
+ align-items:stretch;
182
+ }
183
+ .hero-main,.hero-side,.glass-card,.callout,.stat-card,.timeline-card,.table-wrap{
184
+ border:1px solid var(--glass-border);
185
+ background:var(--glass);
186
+ backdrop-filter:blur(var(--blur)) saturate(160%);
187
+ -webkit-backdrop-filter:blur(var(--blur)) saturate(160%);
188
+ box-shadow:var(--shadow);
189
+ }
190
+ .hero-main{
191
+ border-radius:36px;
192
+ padding:52px 52px 46px;
193
+ position:relative;
194
+ overflow:hidden;
195
+ isolation:isolate;
196
+ }
197
+ .hero-main::before{
198
+ content:"";
199
+ position:absolute;
200
+ width:440px;height:440px;
201
+ right:-160px;top:-210px;
202
+ border-radius:50%;
203
+ background:linear-gradient(145deg,rgba(255,255,255,.7),rgba(97,219,237,.16));
204
+ border:1px solid rgba(255,255,255,.5);
205
+ box-shadow:inset 0 0 60px rgba(255,255,255,.55);
206
+ z-index:-1;
207
+ }
208
+ .eyebrow{
209
+ display:inline-flex;align-items:center;gap:8px;
210
+ border:1px solid var(--glass-border);
211
+ background:rgba(255,255,255,.42);
212
+ border-radius:999px;
213
+ padding:8px 12px;
214
+ font-size:.76rem;
215
+ font-weight:700;
216
+ color:#1f6884;
217
+ letter-spacing:.06em;
218
+ text-transform:uppercase;
219
+ }
220
+ body.dark .eyebrow{color:#80d9f6;background:rgba(255,255,255,.045)}
221
+ .pulse-dot{
222
+ width:8px;height:8px;border-radius:50%;background:var(--teal);
223
+ box-shadow:0 0 0 0 rgba(60,205,180,.4);
224
+ animation:pulse 2.1s infinite;
225
+ }
226
+ @keyframes pulse{70%{box-shadow:0 0 0 9px rgba(60,205,180,0)}100%{box-shadow:0 0 0 0 rgba(60,205,180,0)}}
227
+
228
+ h1{
229
+ font-size:clamp(3.2rem,7.5vw,6.7rem);
230
+ line-height:.91;
231
+ letter-spacing:-.065em;
232
+ margin:22px 0 24px;
233
+ max-width:810px;
234
+ }
235
+ h1 .soft{
236
+ color:transparent;
237
+ background:linear-gradient(100deg,#13506d,#2299c4 45%,#37bca1);
238
+ -webkit-background-clip:text;background-clip:text;
239
+ }
240
+ body.dark h1 .soft{background:linear-gradient(100deg,#c9f4ff,#66cdf0 50%,#79e0c9);-webkit-background-clip:text;background-clip:text}
241
+ .dek{
242
+ font-size:clamp(1.02rem,1.4vw,1.23rem);
243
+ line-height:1.65;
244
+ color:var(--muted);
245
+ max-width:790px;
246
+ margin:0;
247
+ }
248
+ .hero-actions{
249
+ display:flex;gap:12px;flex-wrap:wrap;margin-top:30px
250
+ }
251
+ .btn{
252
+ display:inline-flex;align-items:center;gap:8px;
253
+ padding:12px 16px;border-radius:15px;
254
+ font-weight:750;font-size:.9rem;
255
+ border:1px solid var(--glass-border);
256
+ transition:.2s ease;
257
+ }
258
+ .btn.primary{
259
+ color:white;
260
+ background:linear-gradient(135deg,#1788c1,#27b7c9 55%,#3cc7aa);
261
+ box-shadow:0 10px 26px rgba(35,152,186,.28);
262
+ }
263
+ .btn.secondary{background:rgba(255,255,255,.38)}
264
+ body.dark .btn.secondary{background:rgba(255,255,255,.045)}
265
+ .btn:hover{transform:translateY(-1px)}
266
+
267
+ .hero-side{
268
+ border-radius:36px;
269
+ padding:24px;
270
+ display:flex;flex-direction:column;
271
+ justify-content:space-between;
272
+ overflow:hidden;position:relative;
273
+ }
274
+ .hero-side::after{
275
+ content:"";
276
+ position:absolute;
277
+ width:250px;height:250px;
278
+ border-radius:50%;
279
+ bottom:-130px;right:-90px;
280
+ background:rgba(97,210,230,.18);
281
+ filter:blur(2px);
282
+ }
283
+ .mini-title{font-size:.78rem;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.08em}
284
+ .architecture-list{margin-top:20px;display:grid;gap:10px}
285
+ .arch-row{
286
+ display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:center;
287
+ padding:12px 13px;border-radius:17px;
288
+ background:rgba(255,255,255,.34);
289
+ border:1px solid rgba(255,255,255,.48);
290
+ }
291
+ body.dark .arch-row{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.08)}
292
+ .arch-row .tag{
293
+ font-size:.68rem;font-weight:800;text-align:center;padding:7px 4px;border-radius:10px;
294
+ background:rgba(53,169,207,.12);color:#187399;
295
+ }
296
+ body.dark .arch-row .tag{color:#7ed8f8}
297
+ .arch-row strong{font-size:.9rem}
298
+ .arch-row span{display:block;color:var(--muted);font-size:.76rem;margin-top:2px}
299
+ .hero-note{
300
+ margin-top:22px;padding:16px;border-radius:18px;
301
+ background:rgba(255,255,255,.35);border:1px solid rgba(255,255,255,.5);
302
+ font-size:.85rem;color:var(--muted);line-height:1.5;
303
+ position:relative;z-index:2;
304
+ }
305
+ body.dark .hero-note{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.08)}
306
+
307
+ .stats{
308
+ width:min(calc(100% - 34px),var(--content));
309
+ margin:0 auto 42px;
310
+ display:grid;grid-template-columns:repeat(4,1fr);gap:14px;
311
+ }
312
+ .stat-card{
313
+ border-radius:22px;padding:20px;
314
+ box-shadow:var(--shadow-soft);
315
+ }
316
+ .stat-card .label{color:var(--muted);font-size:.73rem;text-transform:uppercase;letter-spacing:.07em;font-weight:700}
317
+ .stat-card .value{font-size:1.65rem;font-weight:820;letter-spacing:-.03em;margin-top:8px}
318
+ .stat-card .sub{color:var(--muted);font-size:.78rem;margin-top:4px}
319
+
320
+ .layout{
321
+ width:min(calc(100% - 34px),var(--content));
322
+ margin:0 auto;
323
+ display:grid;
324
+ grid-template-columns:250px minmax(0,1fr);
325
+ gap:30px;
326
+ align-items:start;
327
+ }
328
+ .toc{
329
+ position:sticky;top:102px;
330
+ border-radius:24px;padding:16px;
331
+ background:var(--glass);
332
+ border:1px solid var(--glass-border);
333
+ backdrop-filter:blur(var(--blur)) saturate(160%);
334
+ -webkit-backdrop-filter:blur(var(--blur)) saturate(160%);
335
+ box-shadow:var(--shadow-soft);
336
+ max-height:calc(100vh - 128px);
337
+ overflow:auto;
338
+ }
339
+ .toc h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:4px 8px 10px}
340
+ .toc a{
341
+ display:block;padding:9px 10px;border-radius:12px;color:var(--muted);font-size:.81rem;line-height:1.25;
342
+ transition:.2s ease;
343
+ }
344
+ .toc a:hover,.toc a.active{background:rgba(255,255,255,.42);color:var(--ink)}
345
+ body.dark .toc a:hover,body.dark .toc a.active{background:rgba(255,255,255,.05)}
346
+
347
+ main{min-width:0}
348
+ section{
349
+ scroll-margin-top:110px;
350
+ margin-bottom:74px;
351
+ }
352
+ .section-kicker{
353
+ color:#1f87a9;font-size:.74rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;margin-bottom:10px
354
+ }
355
+ body.dark .section-kicker{color:#6dd5f4}
356
+ h2{
357
+ font-size:clamp(2rem,4vw,3.2rem);
358
+ letter-spacing:-.045em;
359
+ line-height:1.02;
360
+ margin:0 0 18px;
361
+ }
362
+ h3{
363
+ font-size:1.25rem;letter-spacing:-.02em;margin:28px 0 12px;
364
+ }
365
+ p{
366
+ font-size:1rem;line-height:1.78;color:var(--muted);margin:0 0 16px;
367
+ }
368
+ strong{color:var(--ink)}
369
+
370
+ .lead{
371
+ font-size:1.14rem;line-height:1.76;color:var(--muted);max-width:860px
372
+ }
373
+ .glass-card{
374
+ border-radius:var(--radius);
375
+ padding:26px;
376
+ margin:24px 0;
377
+ box-shadow:var(--shadow-soft);
378
+ }
379
+ .split{
380
+ display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0;
381
+ }
382
+ .subcard{
383
+ padding:20px;border-radius:20px;
384
+ background:rgba(255,255,255,.34);
385
+ border:1px solid rgba(255,255,255,.52);
386
+ }
387
+ body.dark .subcard{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.08)}
388
+ .subcard h3{margin:0 0 8px;font-size:1rem}
389
+ .subcard p{font-size:.88rem;line-height:1.6;margin:0}
390
+
391
+ .equation{
392
+ margin:26px 0;padding:22px 24px;
393
+ border-radius:20px;
394
+ background:rgba(13,67,91,.92);
395
+ color:#f3fbff;
396
+ overflow:auto;
397
+ box-shadow:0 16px 38px rgba(9,58,82,.22);
398
+ font-size:clamp(.88rem,2vw,1.06rem);
399
+ }
400
+
401
+ .callout{
402
+ border-radius:24px;
403
+ padding:22px 24px;
404
+ margin:24px 0;
405
+ box-shadow:var(--shadow-soft);
406
+ position:relative;
407
+ overflow:hidden;
408
+ }
409
+ .callout::before{
410
+ content:"";
411
+ position:absolute;left:0;top:0;bottom:0;width:4px;
412
+ background:linear-gradient(var(--cyan),var(--teal));
413
+ }
414
+ .callout .title{font-weight:820;margin-bottom:7px}
415
+ .callout p{margin:0;font-size:.92rem}
416
+ .callout.warn::before{background:linear-gradient(#f1b24d,#d67a14)}
417
+ .callout.danger::before{background:linear-gradient(#e06a71,#ba4852)}
418
+
419
+ .table-wrap{
420
+ border-radius:22px;
421
+ overflow:hidden;
422
+ margin:24px 0;
423
+ box-shadow:var(--shadow-soft);
424
+ }
425
+ table{
426
+ width:100%;border-collapse:collapse;font-size:.87rem
427
+ }
428
+ th,td{padding:14px 15px;text-align:left;border-bottom:1px solid var(--line)}
429
+ th{
430
+ font-size:.71rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);
431
+ background:rgba(255,255,255,.38);
432
+ }
433
+ body.dark th{background:rgba(255,255,255,.035)}
434
+ tr:last-child td{border-bottom:none}
435
+ td:first-child{font-weight:700;color:var(--ink)}
436
+ .delta-high{color:#b34c3e;font-weight:800}
437
+ .delta-med{color:#9a6900;font-weight:800}
438
+ .delta-low{color:#2f7c68;font-weight:800}
439
+
440
+ .bars{display:grid;gap:14px;margin-top:18px}
441
+ .bar-row{display:grid;grid-template-columns:130px minmax(0,1fr) 72px;gap:12px;align-items:center}
442
+ .bar-label{font-size:.82rem;font-weight:700}
443
+ .bar-track{height:10px;border-radius:999px;background:rgba(38,91,113,.10);overflow:hidden}
444
+ .bar-fill{
445
+ width:0;height:100%;border-radius:999px;
446
+ background:linear-gradient(90deg,var(--teal),var(--cyan),var(--blue));
447
+ transition:width 1s cubic-bezier(.2,.8,.2,1);
448
+ }
449
+ .bar-val{font-size:.78rem;text-align:right;color:var(--muted)}
450
+
451
+ .timeline{
452
+ position:relative;margin:28px 0;
453
+ }
454
+ .timeline::before{
455
+ content:"";position:absolute;left:16px;top:8px;bottom:8px;width:2px;background:var(--line)
456
+ }
457
+ .timeline-card{
458
+ margin:0 0 16px 46px;
459
+ border-radius:20px;padding:18px 20px;
460
+ box-shadow:var(--shadow-soft);
461
+ position:relative;
462
+ }
463
+ .timeline-card::before{
464
+ content:"";position:absolute;left:-38px;top:22px;width:16px;height:16px;border-radius:50%;
465
+ background:linear-gradient(145deg,var(--teal),var(--blue));
466
+ border:3px solid var(--bg2);
467
+ box-shadow:0 0 0 4px rgba(46,182,223,.12);
468
+ }
469
+ .timeline-card .time{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#2581a1;font-weight:800;margin-bottom:6px}
470
+ body.dark .timeline-card .time{color:#73d1ee}
471
+ .timeline-card strong{font-size:.96rem}
472
+ .timeline-card p{font-size:.86rem;line-height:1.55;margin:6px 0 0}
473
+
474
+ .flow{
475
+ display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0
476
+ }
477
+ .flow-item{
478
+ min-height:138px;
479
+ padding:18px;
480
+ border-radius:20px;
481
+ background:rgba(255,255,255,.34);
482
+ border:1px solid rgba(255,255,255,.55);
483
+ position:relative;
484
+ }
485
+ body.dark .flow-item{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.08)}
486
+ .flow-item .verb{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;font-weight:850;color:#2b86a4}
487
+ body.dark .flow-item .verb{color:#72d4f2}
488
+ .flow-item h3{margin:10px 0 6px;font-size:1rem}
489
+ .flow-item p{font-size:.79rem;line-height:1.5;margin:0}
490
+ .flow-item.retired{opacity:.6}
491
+ .flow-item.retired::after{
492
+ content:"Retiring";
493
+ position:absolute;right:10px;top:10px;
494
+ font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em;
495
+ padding:5px 7px;border-radius:999px;background:rgba(220,92,98,.12);color:#b0474d;
496
+ }
497
+
498
+ .quote{
499
+ font-size:clamp(1.45rem,3vw,2.25rem);
500
+ line-height:1.25;
501
+ letter-spacing:-.035em;
502
+ color:var(--ink);
503
+ margin:30px 0;
504
+ padding-left:24px;
505
+ border-left:3px solid var(--teal);
506
+ font-weight:760;
507
+ }
508
+
509
+ .chip-row{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 0}
510
+ .chip{
511
+ padding:7px 10px;border-radius:999px;font-size:.72rem;font-weight:720;color:#1f708d;
512
+ background:rgba(56,177,206,.10);border:1px solid rgba(56,177,206,.15)
513
+ }
514
+ body.dark .chip{color:#80d5ef}
515
+
516
+ .footnotes{
517
+ padding:25px;border-radius:24px;
518
+ border:1px solid var(--glass-border);background:var(--glass);
519
+ backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));
520
+ box-shadow:var(--shadow-soft);
521
+ }
522
+ .footnotes ol{margin:10px 0 0;padding-left:22px}
523
+ .footnotes li{color:var(--muted);font-size:.86rem;line-height:1.55;margin-bottom:8px}
524
+
525
+ footer{
526
+ width:min(calc(100% - 34px),var(--content));
527
+ margin:30px auto 50px;
528
+ padding:30px 0 0;
529
+ border-top:1px solid var(--line);
530
+ display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
531
+ color:var(--muted);font-size:.82rem;
532
+ }
533
+
534
+ .mobile-menu{display:none}
535
+
536
+ @media (max-width: 980px){
537
+ .hero-grid{grid-template-columns:1fr}
538
+ .hero-side{min-height:0}
539
+ .stats{grid-template-columns:repeat(2,1fr)}
540
+ .layout{grid-template-columns:1fr}
541
+ .toc{display:none}
542
+ .flow{grid-template-columns:repeat(2,1fr)}
543
+ .nav-links{display:none}
544
+ .mobile-menu{display:block}
545
+ }
546
+
547
+ @media (max-width: 640px){
548
+ .hero{margin-top:48px}
549
+ .hero-main{padding:34px 24px 30px;border-radius:28px}
550
+ .hero-side{border-radius:28px}
551
+ h1{font-size:clamp(3rem,18vw,4.55rem)}
552
+ .stats{grid-template-columns:1fr 1fr;gap:10px}
553
+ .stat-card{padding:16px}
554
+ .stat-card .value{font-size:1.32rem}
555
+ .split,.flow{grid-template-columns:1fr}
556
+ .bar-row{grid-template-columns:102px minmax(0,1fr) 56px;gap:8px}
557
+ .table-wrap{overflow-x:auto}
558
+ table{min-width:620px}
559
+ .nav{padding-left:12px}
560
+ .brand span{display:none}
561
+ .brand strong{font-size:.86rem}
562
+ .hero-actions .btn{width:100%;justify-content:center}
563
+ section{margin-bottom:58px}
564
+ }
565
+
566
+ @media (prefers-reduced-motion: reduce){
567
+ *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
568
+ }
569
+ </style>
570
+ </head>
571
+ <body>
572
+ <div class="progress" id="progress"></div>
573
+ <div class="ambient one"></div>
574
+ <div class="ambient two"></div>
575
+ <div class="ambient three"></div>
576
+
577
+ <div class="nav-wrap">
578
+ <nav class="nav" aria-label="Primary navigation">
579
+ <a class="brand" href="#top" aria-label="Orion home">
580
+ <span class="brand-mark" aria-hidden="true"></span>
581
+ <span>
582
+ <strong>Orion / Project Prism</strong>
583
+ <span>Transformer 2 research notes</span>
584
+ </span>
585
+ </a>
586
+ <div class="nav-links">
587
+ <a href="#hypothesis">Hypothesis</a>
588
+ <a href="#mini">Mini</a>
589
+ <a href="#nano">Nano</a>
590
+ <a href="#scale">2B scale-up</a>
591
+ <a href="#t22">T2.2</a>
592
+ </div>
593
+ <button class="icon-btn" id="themeToggle" aria-label="Toggle theme" title="Toggle theme">◐</button>
594
+ </nav>
595
+ </div>
596
+
597
+ <header class="hero" id="top">
598
+ <div class="hero-grid">
599
+ <div class="hero-main">
600
+ <div class="eyebrow"><span class="pulse-dot"></span> Ongoing independent ML research</div>
601
+ <h1>Transformer 2:<br><span class="soft">what survived the ablations.</span></h1>
602
+ <p class="dek">
603
+ Orion began with a simple idea: maybe a language model should not force persistent knowledge,
604
+ reusable procedures, and temporary reasoning into the same machinery. After multiple generations,
605
+ some of that idea survived. Some of it did not.
606
+ </p>
607
+ <div class="hero-actions">
608
+ <a class="btn primary" href="#hypothesis">Read the research →</a>
609
+ <a class="btn secondary" href="#scale">Jump to the 2B run</a>
610
+ </div>
611
+ </div>
612
+
613
+ <aside class="hero-side" aria-label="Current architecture summary">
614
+ <div>
615
+ <div class="mini-title">Current working model</div>
616
+ <div class="architecture-list">
617
+ <div class="arch-row">
618
+ <div class="tag">KNOW</div>
619
+ <div><strong>Distributed weights</strong><span>Persistent factual knowledge</span></div>
620
+ </div>
621
+ <div class="arch-row">
622
+ <div class="tag">DO</div>
623
+ <div><strong>Procedure Banks</strong><span>Reusable conditional transformations</span></div>
624
+ </div>
625
+ <div class="arch-row">
626
+ <div class="tag">THINK</div>
627
+ <div><strong>Working State</strong><span>Temporary computation and context</span></div>
628
+ </div>
629
+ <div class="arch-row">
630
+ <div class="tag">VERIFY</div>
631
+ <div><strong>Recurrent deliberation</strong><span>Revisit, integrate, refine</span></div>
632
+ </div>
633
+ </div>
634
+ </div>
635
+ <div class="hero-note">
636
+ The Knowledge Vault was part of the original design. Across the Orion variants tested so far,
637
+ it has not earned its parameter and complexity budget.
638
+ </div>
639
+ </aside>
640
+ </div>
641
+ </header>
642
+
643
+ <section class="stats" aria-label="Project at a glance">
644
+ <div class="stat-card">
645
+ <div class="label">Current generation</div>
646
+ <div class="value">T2.1</div>
647
+ <div class="sub">T2.2 in design</div>
648
+ </div>
649
+ <div class="stat-card">
650
+ <div class="label">Current scale</div>
651
+ <div class="value">~2B</div>
652
+ <div class="sub">parameters</div>
653
+ </div>
654
+ <div class="stat-card">
655
+ <div class="label">Training target</div>
656
+ <div class="value">≈100B</div>
657
+ <div class="sub">tokens</div>
658
+ </div>
659
+ <div class="stat-card">
660
+ <div class="label">Hardware</div>
661
+ <div class="value">8× H200</div>
662
+ <div class="sub">NVIDIA GPUs</div>
663
+ </div>
664
+ </section>
665
+
666
+ <div class="layout">
667
+ <aside class="toc" aria-label="Table of contents">
668
+ <h3>Contents</h3>
669
+ <a href="#hypothesis">01 — The original hypothesis</a>
670
+ <a href="#mini">02 — Mini-T2</a>
671
+ <a href="#mini-ablation">03 — Mini ablations</a>
672
+ <a href="#nano">04 — Nano / T2.1</a>
673
+ <a href="#nano-findings">05 — Nano findings</a>
674
+ <a href="#benchmark">06 — Benchmark result</a>
675
+ <a href="#vault">07 — The Vault problem</a>
676
+ <a href="#scale">08 — The ~2B scale-up</a>
677
+ <a href="#telemetry">09 — Early telemetry</a>
678
+ <a href="#dynamics">10 — Training dynamics</a>
679
+ <a href="#t22">11 — T2.2 direction</a>
680
+ <a href="#vm">12 — Built-in VM idea</a>
681
+ <a href="#science">13 — What is actually proven?</a>
682
+ </aside>
683
+
684
+ <main>
685
+ <section id="hypothesis">
686
+ <div class="section-kicker">01 / Research premise</div>
687
+ <h2>The original hypothesis</h2>
688
+ <p class="lead">
689
+ Orion / Project Prism is an experimental architecture family I call <strong>Transformer 2 (T2)</strong>.
690
+ Its goal is deliberately aggressive: <strong>maximum capability, minimum parameters</strong>.
691
+ </p>
692
+ <p>
693
+ The project started from the suspicion that a standard Transformer may spend capacity inefficiently by
694
+ mixing several different jobs into the same residual stream and weight system. Persistent facts, reusable
695
+ algorithms, temporary reasoning, and verification are not obviously the same kind of thing — so the first
696
+ T2 designs tried to give them different homes.
697
+ </p>
698
+
699
+ <div class="flow">
700
+ <div class="flow-item retired">
701
+ <div class="verb">Know</div>
702
+ <h3>Knowledge Vault</h3>
703
+ <p>Explicit persistent retrieval memory for factual/declarative information.</p>
704
+ </div>
705
+ <div class="flow-item">
706
+ <div class="verb">Do</div>
707
+ <h3>Procedure Banks</h3>
708
+ <p>Conditional learned specialists intended to encode reusable transformations.</p>
709
+ </div>
710
+ <div class="flow-item">
711
+ <div class="verb">Think</div>
712
+ <h3>Working State</h3>
713
+ <p>A separate bounded stream for temporary computation and intermediate reasoning.</p>
714
+ </div>
715
+ <div class="flow-item">
716
+ <div class="verb">Verify</div>
717
+ <h3>Deliberation</h3>
718
+ <p>Recurrent computation that revisits deeper stages instead of always moving forward once.</p>
719
+ </div>
720
+ </div>
721
+
722
+ <div class="callout">
723
+ <div class="title">The updated hypothesis</div>
724
+ <p>
725
+ Persistent knowledge can probably stay distributed. Temporary computation may deserve explicit state,
726
+ and reusable computation may deserve explicit conditional pathways.
727
+ </p>
728
+ </div>
729
+
730
+ <p>
731
+ That sentence is much narrower than the original vision. That is the point. T2 is not one frozen
732
+ architecture; it is an iterative research program in which components have to justify the weights,
733
+ compute, and engineering complexity they consume.
734
+ </p>
735
+ </section>
736
+
737
+ <section id="mini">
738
+ <div class="section-kicker">02 / Generation one</div>
739
+ <h2>Mini-T2: separating KNOW, DO, and THINK</h2>
740
+ <p class="lead">
741
+ The original Mini-T2 was about <strong>219.1M parameters</strong>. It combined a recurrent/shared
742
+ Universal Cortex with explicit Procedure Banks, a Knowledge Vault, a separate causal Working State,
743
+ and a recurrent deliberation tail.
744
+ </p>
745
+
746
+ <div class="split">
747
+ <div class="subcard">
748
+ <h3>Core network</h3>
749
+ <p>12 shared/recurrent stages, <strong>d<sub>model</sub> = 768</strong>, 12 query heads and 4 KV heads.</p>
750
+ </div>
751
+ <div class="subcard">
752
+ <h3>Procedure pathway</h3>
753
+ <p>3 Procedure Banks, each with 16 experts, top-2 routing plus a shared expert, hidden size ≈1024.</p>
754
+ </div>
755
+ <div class="subcard">
756
+ <h3>Knowledge pathway</h3>
757
+ <p>65,536-slot Vault with product-key retrieval, top-4 reads near stages 3, 7, and 11.</p>
758
+ </div>
759
+ <div class="subcard">
760
+ <h3>Temporary state</h3>
761
+ <p>Separate causal Working State with reads/updates near stages 3, 7, and 11.</p>
762
+ </div>
763
+ </div>
764
+
765
+ <h3>Bounded state updates</h3>
766
+ <p>
767
+ The Working State was not an unbounded additive scratchpad. Its update used gated replacement, which
768
+ gives the model a way to preserve old state or replace it with a candidate while keeping the magnitude
769
+ controlled.
770
+ </p>
771
+ <div class="equation">state_new = (1 − write_gate) · state + write_gate · candidate</div>
772
+ <p>
773
+ A learned read gate later projected this state back into the main residual stream. The first Mini-T2
774
+ therefore implemented the original conceptual split quite literally: <strong>KNOW → Vault,
775
+ DO → Procedure, THINK → State.</strong>
776
+ </p>
777
+ </section>
778
+
779
+ <section id="mini-ablation">
780
+ <div class="section-kicker">03 / First causal probes</div>
781
+ <h2>Mini ablations changed the story</h2>
782
+ <p class="lead">
783
+ One early set of inference-time ablations made the Working State look much more important than the Vault
784
+ for that trained checkpoint.
785
+ </p>
786
+
787
+ <div class="table-wrap">
788
+ <table>
789
+ <thead>
790
+ <tr><th>Configuration</th><th>Facts</th><th>Reason</th><th>Language</th><th>Log-prob style result</th></tr>
791
+ </thead>
792
+ <tbody>
793
+ <tr><td>Full</td><td>60</td><td>66.7</td><td>100</td><td>-2.979 / -1.576 / -3.686</td></tr>
794
+ <tr><td>No Vault</td><td>60</td><td>73.3</td><td>95</td><td>-2.871 / -1.569 / -3.701</td></tr>
795
+ <tr><td>No State</td><td>23.3</td><td>16.7</td><td>50</td><td>-10.319 / -9.867 / -8.222</td></tr>
796
+ <tr><td>No Deliberation</td><td>60</td><td>83.3</td><td>95</td><td>-3.462 / -2.122 / -4.399</td></tr>
797
+ </tbody>
798
+ </table>
799
+ </div>
800
+
801
+ <div class="callout warn">
802
+ <div class="title">Important causal limitation</div>
803
+ <p>
804
+ This shows that the <em>trained checkpoint</em> relied heavily on Working State. It does not prove that
805
+ the architecture is fundamentally better than a conventional Transformer. A matched model retrained
806
+ without the state pathway would be needed for that stronger claim.
807
+ </p>
808
+ </div>
809
+
810
+ <p>
811
+ The Vault, meanwhile, showed weak and mixed evidence. This was not enough to remove it immediately,
812
+ but it was the first sign that the original KNOW/DO/THINK decomposition might be over-structured.
813
+ </p>
814
+ </section>
815
+
816
+ <section id="nano">
817
+ <div class="section-kicker">04 / Generation two</div>
818
+ <h2>Orion Flagship Nano / T2.1</h2>
819
+ <p class="lead">
820
+ The next generation became smaller, more conditional, and more careful about routing. Orion Flagship
821
+ Nano T2.1 had approximately <strong>134.715M total parameters</strong> and an estimated
822
+ <strong>72.812M active-path parameter-equivalent</strong>.
823
+ </p>
824
+
825
+ <div class="glass-card">
826
+ <div class="split" style="margin:0">
827
+ <div class="subcard">
828
+ <h3>Backbone</h3>
829
+ <p>d<sub>model</sub> 640, 12 stages, 10 attention heads, 2 KV heads.</p>
830
+ </div>
831
+ <div class="subcard">
832
+ <h3>Procedure routing</h3>
833
+ <p>3 banks × 12 specialists, top-1 routing, small shared expert, and a soft NULL route.</p>
834
+ </div>
835
+ <div class="subcard">
836
+ <h3>Conditioning</h3>
837
+ <p>Router sees token representation, projected Working State, and stage/cycle information.</p>
838
+ </div>
839
+ <div class="subcard">
840
+ <h3>Other subsystems</h3>
841
+ <p>Working State, Vault v2, and recurrent deliberation over the final three stages.</p>
842
+ </div>
843
+ </div>
844
+ </div>
845
+
846
+ <p>
847
+ New subsystems were initialized close to neutral so training did not begin with aggressive,
848
+ potentially destabilizing side paths.
849
+ </p>
850
+
851
+ <h3>Training data</h3>
852
+ <p>The official base corpus was 50B tokens with no SFT, DPO, or RLHF:</p>
853
+ <div class="bars" data-bars>
854
+ <div class="bar-row"><div class="bar-label">FineWeb-Edu</div><div class="bar-track"><div class="bar-fill" data-width="60"></div></div><div class="bar-val">60% · 30B</div></div>
855
+ <div class="bar-row"><div class="bar-label">FineMath</div><div class="bar-track"><div class="bar-fill" data-width="12"></div></div><div class="bar-val">12% · 6B</div></div>
856
+ <div class="bar-row"><div class="bar-label">OpenWebMath</div><div class="bar-track"><div class="bar-fill" data-width="8"></div></div><div class="bar-val">8% · 4B</div></div>
857
+ <div class="bar-row"><div class="bar-label">CodeParrot Clean</div><div class="bar-track"><div class="bar-fill" data-width="20"></div></div><div class="bar-val">20% · 10B</div></div>
858
+ </div>
859
+ <div class="chip-row">
860
+ <span class="chip">60% general</span><span class="chip">20% math</span><span class="chip">20% code</span>
861
+ </div>
862
+ </section>
863
+
864
+ <section id="nano-findings">
865
+ <div class="section-kicker">05 / T2.1 learning dynamics</div>
866
+ <h2>The Procedure Banks arrived first. State arrived later.</h2>
867
+ <p class="lead">
868
+ The most interesting Nano result was not one giant number. It was a repeated pattern across checkpoints.
869
+ Procedure routing mattered very early; Working State became much more important only after the model had
870
+ learned more basic language structure.
871
+ </p>
872
+
873
+ <div class="timeline">
874
+ <div class="timeline-card">
875
+ <div class="time">~1k steps · CE ≈ 4.81</div>
876
+ <strong>Procedure already matters; Vault almost does not.</strong>
877
+ <p>Δvault +0.0012 · Δstate +0.0332 · Δprocedure +2.9562 · Δdeliberation +0.0806</p>
878
+ </div>
879
+ <div class="timeline-card">
880
+ <div class="time">~4.36B tokens · CE ≈ 2.60</div>
881
+ <strong>Working State becomes a major dependency.</strong>
882
+ <p>Δvault +0.1622 · Δstate +4.4783 · Δprocedure +5.8667 · Δdeliberation +0.6068</p>
883
+ </div>
884
+ <div class="timeline-card">
885
+ <div class="time">~9.4B tokens</div>
886
+ <strong>Procedure and State dominate the ablation picture.</strong>
887
+ <p>Δvault +0.2111 · Δstate +6.1979 · Δprocedure +6.6810 · Δdeliberation +1.0009</p>
888
+ </div>
889
+ <div class="timeline-card">
890
+ <div class="time">~10.55B tokens</div>
891
+ <strong>The qualitative ordering remains stable.</strong>
892
+ <p>Δvault +0.1579 · Δstate +5.8374 · Δprocedure +6.4856 · Δdeliberation +0.8026</p>
893
+ </div>
894
+ <div class="timeline-card">
895
+ <div class="time">Nearby checkpoint</div>
896
+ <strong>Same pattern, larger magnitudes.</strong>
897
+ <p>Δvault +0.1140 · Δstate +7.1968 · Δprocedure +8.7902 · Δdeliberation +0.7189</p>
898
+ </div>
899
+ </div>
900
+
901
+ <div class="callout warn">
902
+ <div class="title">Tiny ablation batches are noisy</div>
903
+ <p>
904
+ The exact deltas are strongly prompt-dependent. I care more about the repeated cross-checkpoint pattern
905
+ — Procedure and State matter a lot, Deliberation matters some, Vault matters comparatively little —
906
+ than I do about any one headline value.
907
+ </p>
908
+ </div>
909
+ </section>
910
+
911
+ <section id="benchmark">
912
+ <div class="section-kicker">06 / One benchmark, not a universal verdict</div>
913
+ <h2>Nano’s BananaMind result</h2>
914
+ <p>
915
+ On BananaMind Base Bench 1.1, a 350-example multiple-choice benchmark, Nano reached an overall Elo of
916
+ <strong>1041</strong> at 9.99B training tokens, with <strong>56.86% raw accuracy</strong> and
917
+ <strong>53.26% weighted accuracy</strong>. That exceeded the older 219.1M Mini model’s 1030 Elo while
918
+ Nano itself was only about 134.7M parameters.
919
+ </p>
920
+
921
+ <div class="table-wrap">
922
+ <table>
923
+ <thead><tr><th>Category</th><th>Elo</th></tr></thead>
924
+ <tbody>
925
+ <tr><td>Language</td><td>1331</td></tr>
926
+ <tr><td>Commonsense</td><td>932</td></tr>
927
+ <tr><td>Knowledge</td><td>1040</td></tr>
928
+ <tr><td>Context</td><td>963</td></tr>
929
+ <tr><td>Quantitative</td><td>872</td></tr>
930
+ <tr><td>Logic</td><td>1045</td></tr>
931
+ <tr><td>Code</td><td>1203</td></tr>
932
+ </tbody>
933
+ </table>
934
+ </div>
935
+
936
+ <p>
937
+ Later benchmark scaling was not monotonic: the overall Elo stayed around 1041 at 13.62B tokens and was
938
+ around 1019 in the 27B-token era. That does <strong>not</strong> justify the conclusion that later training
939
+ made the model generally worse. A small fixed benchmark is too narrow for that.
940
+ </p>
941
+ </section>
942
+
943
+ <section id="vault">
944
+ <div class="section-kicker">07 / A useful negative result</div>
945
+ <h2>The Knowledge Vault kept failing to earn its weights</h2>
946
+ <p class="lead">
947
+ Across Orion generations and scales, the explicit neural Knowledge Vault repeatedly produced much weaker
948
+ causal signals than Procedure Banks or Working State.
949
+ </p>
950
+
951
+ <div class="quote">
952
+ “Across the Orion designs tested so far, this explicit neural Knowledge Vault has not earned its parameter
953
+ and complexity budget.”
954
+ </div>
955
+
956
+ <p>
957
+ That is deliberately <strong>not</strong> the same as saying external memory is useless. The claim is only
958
+ about this particular learned Vault design, in the Orion models tested so far.
959
+ </p>
960
+
961
+ <div class="split">
962
+ <div class="subcard">
963
+ <h3>Original view</h3>
964
+ <p><strong>KNOW</strong> → dedicated Vault<br><strong>DO</strong> → Procedure Banks<br><strong>THINK</strong> → Working State</p>
965
+ </div>
966
+ <div class="subcard">
967
+ <h3>Current view</h3>
968
+ <p><strong>KNOW</strong> → distributed weights<br><strong>DO</strong> → Procedure Banks<br><strong>THINK</strong> → Working State<br><strong>VERIFY</strong> → deliberation</p>
969
+ </div>
970
+ </div>
971
+ </section>
972
+
973
+ <section id="scale">
974
+ <div class="section-kicker">08 / Current experiment</div>
975
+ <h2>Scaling T2.1 to ~2B parameters</h2>
976
+ <p class="lead">
977
+ The current Orion run is an approximately <strong>2B-parameter T2.1 model</strong> training on
978
+ <strong>8× NVIDIA H200 GPUs</strong> toward a target of 99,999,907,840 tokens — effectively 100B.
979
+ </p>
980
+
981
+ <div class="stats" style="width:100%;margin:24px 0 28px">
982
+ <div class="stat-card">
983
+ <div class="label">Updates</div>
984
+ <div class="value">871,930</div>
985
+ <div class="sub">target total</div>
986
+ </div>
987
+ <div class="stat-card">
988
+ <div class="label">Tokens / update</div>
989
+ <div class="value">114,688</div>
990
+ <div class="sub">global update</div>
991
+ </div>
992
+ <div class="stat-card">
993
+ <div class="label">Throughput</div>
994
+ <div class="value">160–167k</div>
995
+ <div class="sub">tokens / second</div>
996
+ </div>
997
+ <div class="stat-card">
998
+ <div class="label">Peak VRAM</div>
999
+ <div class="value">~72.4 GiB</div>
1000
+ <div class="sub">reported device/process context</div>
1001
+ </div>
1002
+ </div>
1003
+
1004
+ <p>
1005
+ So far the run has reported no allocation retries, no skipped steps, and essentially zero data-loader
1006
+ wait. This larger model has <strong>six Procedure Banks</strong>. The Vault was deliberately shrunk and
1007
+ the freed parameter budget reallocated elsewhere, but it was not fully removed in this run to avoid
1008
+ introducing an extra architectural risk at the same time as the scale jump.
1009
+ </p>
1010
+ </section>
1011
+
1012
+ <section id="telemetry">
1013
+ <div class="section-kicker">09 / Early 2B telemetry</div>
1014
+ <h2>The first billion tokens looked familiar</h2>
1015
+ <p>
1016
+ Around step 8,600 (~986M tokens), training CE was about 2.57 and probe CE about 2.21. The Vault gate was
1017
+ already nearly closed, while the Working State and Procedure pathway showed materially stronger activity.
1018
+ </p>
1019
+
1020
+ <div class="table-wrap">
1021
+ <table>
1022
+ <thead><tr><th>Subsystem / signal</th><th>Observed value</th><th>Reading</th></tr></thead>
1023
+ <tbody>
1024
+ <tr><td>Vault gate</td><td>~0.003 ± 0.022</td><td>Almost closed</td></tr>
1025
+ <tr><td>Vault unique slots</td><td>~342 / 16,384</td><td>Low utilization</td></tr>
1026
+ <tr><td>Vault gradient</td><td>~1.35e-2</td><td>Small relative signal</td></tr>
1027
+ <tr><td>Working State read</td><td>~0.107</td><td>Active</td></tr>
1028
+ <tr><td>Working State RMS</td><td>~0.4030</td><td>Non-trivial state magnitude</td></tr>
1029
+ <tr><td>State gradient</td><td>~5.47e-2</td><td>Stronger than Vault</td></tr>
1030
+ <tr><td>Procedure gradient</td><td>~1.49e-1</td><td>Strong</td></tr>
1031
+ <tr><td>Cortex gradient</td><td>~1.81e-1</td><td>Strong baseline pathway</td></tr>
1032
+ </tbody>
1033
+ </table>
1034
+ </div>
1035
+
1036
+ <h3>Depth-dependent Procedure usage</h3>
1037
+ <p>
1038
+ Procedure routing had zero dead experts. The soft-NULL probability showed a clear depth pattern:
1039
+ the earliest bank was mostly bypassed, while deeper banks were used far more often.
1040
+ </p>
1041
+ <div class="bars" data-bars>
1042
+ <div class="bar-row"><div class="bar-label">B0 NULL</div><div class="bar-track"><div class="bar-fill" data-width="94.3"></div></div><div class="bar-val">0.943</div></div>
1043
+ <div class="bar-row"><div class="bar-label">B1 NULL</div><div class="bar-track"><div class="bar-fill" data-width="85.3"></div></div><div class="bar-val">0.853</div></div>
1044
+ <div class="bar-row"><div class="bar-label">B2 NULL</div><div class="bar-track"><div class="bar-fill" data-width="72"></div></div><div class="bar-val">0.720</div></div>
1045
+ <div class="bar-row"><div class="bar-label">B3 NULL</div><div class="bar-track"><div class="bar-fill" data-width="62"></div></div><div class="bar-val">0.620</div></div>
1046
+ <div class="bar-row"><div class="bar-label">B4 NULL</div><div class="bar-track"><div class="bar-fill" data-width="44.1"></div></div><div class="bar-val">0.441</div></div>
1047
+ <div class="bar-row"><div class="bar-label">B5 NULL</div><div class="bar-track"><div class="bar-fill" data-width="53.4"></div></div><div class="bar-val">0.534</div></div>
1048
+ </div>
1049
+
1050
+ <h3>At ~1.6–1.7B tokens</h3>
1051
+ <p>
1052
+ The first serious 2B ablations were striking. At step ~14,000, removing Procedure increased probe CE by
1053
+ +11.1971. At step 15,000 / ~1.720B tokens, the Procedure delta rose to +13.8884, while the Vault effect
1054
+ remained effectively zero.
1055
+ </p>
1056
+
1057
+ <div class="table-wrap">
1058
+ <table>
1059
+ <thead><tr><th>Checkpoint</th><th>Full CE</th><th>Δ Vault</th><th>Δ State</th><th>Δ Procedure</th><th>Δ Deliberation</th></tr></thead>
1060
+ <tbody>
1061
+ <tr><td>~step 14,000</td><td>3.0327</td><td class="delta-low">+0.0021</td><td class="delta-med">+0.6982</td><td class="delta-high">+11.1971</td><td class="delta-med">+0.4908</td></tr>
1062
+ <tr><td>step 15,000</td><td>2.7877</td><td class="delta-low">−0.0030</td><td class="delta-med">+0.8092</td><td class="delta-high">+13.8884</td><td class="delta-med">+0.4310</td></tr>
1063
+ </tbody>
1064
+ </table>
1065
+ </div>
1066
+
1067
+ <div class="callout danger">
1068
+ <div class="title">Do not turn +13.9 CE into an “intelligence percentage.”</div>
1069
+ <p>
1070
+ Removing a major subsystem can push internal activations far out of the distribution seen during
1071
+ training. The defensible conclusion is narrower: <strong>this trained checkpoint is extraordinarily
1072
+ dependent on its Procedure pathway.</strong>
1073
+ </p>
1074
+ </div>
1075
+ </section>
1076
+
1077
+ <section id="dynamics">
1078
+ <div class="section-kicker">10 / Why this run is still early</div>
1079
+ <h2>Working State may not have “arrived” yet</h2>
1080
+ <p class="lead">
1081
+ In previous Orion generations, Working State often became much more important only after the model had
1082
+ learned enough basic language structure to make use of explicit temporary computation.
1083
+ </p>
1084
+ <p>
1085
+ At ~1.7B out of ~100B intended tokens, the 2B run is only around <strong>1.7% complete</strong>.
1086
+ The current State ablation effect of roughly +0.8 CE is already meaningful, but the more important question
1087
+ is whether it grows over the next several billion tokens as it did in Nano.
1088
+ </p>
1089
+ <p>
1090
+ That trajectory will directly influence how much of the T2.2 parameter budget is assigned to Working State.
1091
+ </p>
1092
+ </section>
1093
+
1094
+ <section id="t22">
1095
+ <div class="section-kicker">11 / Emerging next generation</div>
1096
+ <h2>T2.2 is becoming simpler, not more ornate</h2>
1097
+ <p>
1098
+ The provisional T2.2 direction follows the evidence instead of preserving every original idea:
1099
+ </p>
1100
+
1101
+ <div class="glass-card">
1102
+ <div class="flow" style="margin:0">
1103
+ <div class="flow-item">
1104
+ <div class="verb">Increase</div>
1105
+ <h3>Procedure capacity</h3>
1106
+ <p>More budget for the pathway that has shown the strongest repeated causal importance.</p>
1107
+ </div>
1108
+ <div class="flow-item">
1109
+ <div class="verb">Retain</div>
1110
+ <h3>Working State</h3>
1111
+ <p>Substantial, mid-sized temporary state; exact budget depends on later 2B dynamics.</p>
1112
+ </div>
1113
+ <div class="flow-item retired">
1114
+ <div class="verb">Remove</div>
1115
+ <h3>Knowledge Vault</h3>
1116
+ <p>Persistent knowledge goes back into ordinary distributed model weights.</p>
1117
+ </div>
1118
+ <div class="flow-item">
1119
+ <div class="verb">Keep</div>
1120
+ <h3>Deliberation</h3>
1121
+ <p>Recurrent/shared computation, state-conditioned routing, and neutral initialization remain.</p>
1122
+ </div>
1123
+ </div>
1124
+ </div>
1125
+
1126
+ <p>
1127
+ The architecture is therefore moving away from the idea that every conceptual function needs a dedicated
1128
+ neural subsystem. A subsystem now survives only if its measured contribution justifies its cost.
1129
+ </p>
1130
+ </section>
1131
+
1132
+ <section id="vm">
1133
+ <div class="section-kicker">12 / Future experiment, not a validated feature</div>
1134
+ <h2>A possible built-in exact-compute path</h2>
1135
+ <p>
1136
+ One future T2.2 idea is to add a deterministic computation path — effectively a small built-in VM or
1137
+ exact-compute subsystem. This would not replace neural reasoning; it would separate exact operations from
1138
+ fuzzy learned transformations.
1139
+ </p>
1140
+
1141
+ <div class="flow">
1142
+ <div class="flow-item">
1143
+ <div class="verb">Weights</div>
1144
+ <h3>Persistent knowledge</h3>
1145
+ <p>Facts and representations remain distributed in normal model parameters.</p>
1146
+ </div>
1147
+ <div class="flow-item">
1148
+ <div class="verb">Procedure</div>
1149
+ <h3>Learned transforms</h3>
1150
+ <p>Reusable neural routines selected conditionally by the model.</p>
1151
+ </div>
1152
+ <div class="flow-item">
1153
+ <div class="verb">State</div>
1154
+ <h3>Fuzzy scratch space</h3>
1155
+ <p>Temporary reasoning, intermediate features, and contextual computation.</p>
1156
+ </div>
1157
+ <div class="flow-item">
1158
+ <div class="verb">VM</div>
1159
+ <h3>Exact computation</h3>
1160
+ <p>Arithmetic, symbolic operations, deterministic algorithms, or potentially code execution.</p>
1161
+ </div>
1162
+ </div>
1163
+
1164
+ <p>
1165
+ A future router could choose among NULL, shared neural computation, a specialist Procedure path, and the
1166
+ deterministic VM/tool path. This remains a research idea, not a demonstrated part of Orion.
1167
+ </p>
1168
+ </section>
1169
+
1170
+ <section id="science">
1171
+ <div class="section-kicker">13 / Scientific caution</div>
1172
+ <h2>What the current evidence does — and does not — prove</h2>
1173
+ <p class="lead">
1174
+ Inference-time ablations answer an important question: <em>what did this particular trained checkpoint
1175
+ learn to rely on?</em> They do not automatically answer: <em>was this architecture the best way to spend
1176
+ the same compute and parameters?</em>
1177
+ </p>
1178
+
1179
+ <div class="split">
1180
+ <div class="subcard">
1181
+ <h3>Supported now</h3>
1182
+ <p>
1183
+ Procedure pathways are a very strong causal dependency in current checkpoints. Working State has
1184
+ repeatedly become important. Deliberation has a smaller but recurring positive signal. The tested
1185
+ Vault design remains weak.
1186
+ </p>
1187
+ </div>
1188
+ <div class="subcard">
1189
+ <h3>Not yet proven</h3>
1190
+ <p>
1191
+ That T2 is universally superior to ordinary Transformers, that external memory is useless, or that
1192
+ any ablation delta corresponds to a literal percentage of intelligence.
1193
+ </p>
1194
+ </div>
1195
+ </div>
1196
+
1197
+ <h3>Matched controls that would strengthen the case</h3>
1198
+ <div class="table-wrap">
1199
+ <table>
1200
+ <thead><tr><th>Question</th><th>Needed comparison</th></tr></thead>
1201
+ <tbody>
1202
+ <tr><td>Does Working State improve efficiency?</td><td>T2 with State vs matched model retrained without State</td></tr>
1203
+ <tr><td>Are Procedure Banks better than dense FFNs?</td><td>Sparse Procedure Banks vs matched dense FFN at similar compute/parameter budget</td></tr>
1204
+ <tr><td>Does recurrence help?</td><td>Shared recurrent layers vs unique layers at matched FLOPs</td></tr>
1205
+ <tr><td>Was the Vault worth its budget?</td><td>Vault vs equal parameter budget added to ordinary weights</td></tr>
1206
+ <tr><td>Would exact compute help?</td><td>VM vs no-VM, with VM execution compute reported separately</td></tr>
1207
+ </tbody>
1208
+ </table>
1209
+ </div>
1210
+
1211
+ <p>
1212
+ The evaluation should track validation CE, downstream benchmarks, total and active parameters,
1213
+ FLOPs/token, latency, VRAM, stability, subsystem utilization, ablation effects, capability per parameter,
1214
+ and capability per FLOP.
1215
+ </p>
1216
+
1217
+ <div class="quote">Every subsystem has to earn its weights.</div>
1218
+
1219
+ <div class="footnotes">
1220
+ <strong>Research status</strong>
1221
+ <ol>
1222
+ <li>The ~2B T2.1 model is an ongoing training run, not a finished result.</li>
1223
+ <li>Small ablation batches are noisy and prompt-dependent.</li>
1224
+ <li>Repeated patterns across generations are more informative than any single dramatic delta.</li>
1225
+ <li>BananaMind is one benchmark; it is not evidence of general intelligence by itself.</li>
1226
+ <li>The current Vault conclusion applies to the tested Orion Vault designs, not to memory architectures in general.</li>
1227
+ </ol>
1228
+ </div>
1229
+ </section>
1230
+ </main>
1231
+ </div>
1232
+
1233
+ <footer>
1234
+ <div><strong>Orion / Project Prism</strong> · Transformer 2 research notes</div>
1235
+ <div>Independent architecture research · T2.1 → T2.2</div>
1236
+ </footer>
1237
+
1238
+ <script>
1239
+ (() => {
1240
+ const body = document.body;
1241
+ const toggle = document.getElementById('themeToggle');
1242
+ const progress = document.getElementById('progress');
1243
+ const tocLinks = [...document.querySelectorAll('.toc a')];
1244
+ const sections = [...document.querySelectorAll('main section')];
1245
+
1246
+ const saved = localStorage.getItem('orion-theme');
1247
+ if (saved === 'dark' || (!saved && window.matchMedia('(prefers-color-scheme: dark)').matches)) {
1248
+ body.classList.add('dark');
1249
+ }
1250
+
1251
+ toggle.addEventListener('click', () => {
1252
+ body.classList.toggle('dark');
1253
+ localStorage.setItem('orion-theme', body.classList.contains('dark') ? 'dark' : 'light');
1254
+ });
1255
+
1256
+ const updateScroll = () => {
1257
+ const max = document.documentElement.scrollHeight - window.innerHeight;
1258
+ const pct = max > 0 ? (window.scrollY / max) * 100 : 0;
1259
+ progress.style.width = pct + '%';
1260
+
1261
+ let current = '';
1262
+ for (const sec of sections) {
1263
+ const rect = sec.getBoundingClientRect();
1264
+ if (rect.top <= 150) current = sec.id;
1265
+ }
1266
+ tocLinks.forEach(a => a.classList.toggle('active', a.getAttribute('href') === '#' + current));
1267
+ };
1268
+
1269
+ window.addEventListener('scroll', updateScroll, {passive:true});
1270
+ updateScroll();
1271
+
1272
+ const observer = new IntersectionObserver(entries => {
1273
+ entries.forEach(entry => {
1274
+ if (!entry.isIntersecting) return;
1275
+ entry.target.querySelectorAll('.bar-fill').forEach(el => {
1276
+ el.style.width = el.dataset.width + '%';
1277
+ });
1278
+ observer.unobserve(entry.target);
1279
+ });
1280
+ }, {threshold:.2});
1281
+
1282
+ document.querySelectorAll('[data-bars]').forEach(el => observer.observe(el));
1283
+ })();
1284
+ </script>
1285
+ </body>
1286
  </html>