aboutsummaryrefslogtreecommitdiff
path: root/downloads/evolution_plan/presentation.html
diff options
context:
space:
mode:
Diffstat (limited to 'downloads/evolution_plan/presentation.html')
-rw-r--r--downloads/evolution_plan/presentation.html812
1 files changed, 812 insertions, 0 deletions
diff --git a/downloads/evolution_plan/presentation.html b/downloads/evolution_plan/presentation.html
new file mode 100644
index 0000000..9830d4e
--- /dev/null
+++ b/downloads/evolution_plan/presentation.html
@@ -0,0 +1,812 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<meta charset="UTF-8">
+<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
+<meta name="apple-mobile-web-app-capable" content="yes">
+<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
+<meta name="theme-color" content="#0d0d0d">
+<title>πŸ”₯ Core Model Evolution β€” Presentation</title>
+<style>
+:root{
+ --bg:#0d0d0d;--panel:#1a1a1a;--panel2:#222;--border:#333;
+ --accent:#ff4d4d;--accent2:#ff8c8c;--gold:#ffca28;
+ --green:#4caf50;--blue:#42a5f5;--text:#e0e0e0;--muted:#888;
+}
+*{box-sizing:border-box;margin:0;padding:0}
+html,body{height:100%;overflow:hidden}
+body{
+ font-family:-apple-system,'Segoe UI',sans-serif;
+ line-height:1.65;color:var(--text);background:var(--bg);
+ -webkit-tap-highlight-color:transparent;
+ -webkit-font-smoothing:antialiased;
+}
+
+/* ── Slide System ── */
+#deck{height:100vh;height:100dvh;width:100vw;overflow:hidden;position:relative}
+.slide{
+ position:absolute;top:0;left:0;width:100%;height:100%;
+ padding:20px 18px 70px;overflow-y:auto;
+ opacity:0;transform:translateX(30px);
+ transition:opacity .35s ease,transform .35s ease;
+ pointer-events:none;-webkit-overflow-scrolling:touch;
+}
+.slide.active{opacity:1;transform:translateX(0);pointer-events:auto}
+.slide.prev{transform:translateX(-30px)}
+
+/* ── Progress Dots ── */
+#dots{
+ position:fixed;bottom:52px;left:0;right:0;
+ display:flex;gap:6px;justify-content:center;
+ z-index:100;padding:6px 0;
+}
+.dot{width:8px;height:8px;border-radius:50%;background:#444;transition:all .3s;cursor:pointer}
+.dot.active{background:var(--accent);width:24px;border-radius:4px}
+.dot.done{background:var(--green)}
+
+/* ── Nav Bar ── */
+#nav{
+ position:fixed;bottom:0;left:0;right:0;height:44px;
+ display:flex;align-items:center;justify-content:space-between;
+ padding:0 14px;background:rgba(13,13,13,.95);
+ border-top:1px solid var(--border);z-index:100;
+ padding-bottom:env(safe-area-inset-bottom,0px);
+}
+.nav-btn{
+ background:#2a2a2a;border:1px solid var(--border);color:var(--text);
+ padding:7px 16px;border-radius:8px;font-size:13px;cursor:pointer;
+ white-space:nowrap;min-width:64px;text-align:center;
+}
+.nav-btn:active{background:var(--accent);color:#fff}
+.nav-btn:disabled{opacity:.35;cursor:default}
+#counter{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
+
+/* ── Typography ── */
+h1{color:var(--accent);font-size:1.5em;line-height:1.3;margin-bottom:8px}
+h2{color:var(--accent2);font-size:1.2em;margin:18px 0 10px;border-left:4px solid var(--accent);padding-left:10px}
+h3{color:var(--gold);font-size:1.05em;margin:14px 0 8px}
+p{margin:8px 0;font-size:14px}
+ul{margin:8px 0;padding-left:18px;font-size:14px}
+li{margin:4px 0}
+strong{color:#fff}
+code{background:#2a2a2a;padding:2px 5px;border-radius:3px;font-size:12px;color:#ff8c8c}
+.subtitle{text-align:center;font-style:italic;color:#aaa;font-size:13px;margin-bottom:16px}
+.tagline{text-align:center;font-size:11px;color:var(--muted);margin-bottom:20px}
+
+/* ── Cards ── */
+.card{
+ background:var(--panel2);border:1px solid var(--border);
+ border-radius:12px;padding:16px;margin:12px 0;
+}
+.card-accent{border-left:4px solid var(--accent)}
+.card-green{border-left:4px solid var(--green);background:#15201a}
+.card-blue{border-left:4px solid var(--blue);background:#1a1a2a}
+.card-gold{border-left:4px solid var(--gold);background:#1f1a0d}
+.card-warn{border-left:4px solid #ff6b6b;background:#2a2020}
+
+/* ── Badges ── */
+.badge{
+ display:inline-block;padding:3px 10px;border-radius:20px;
+ font-size:11px;margin:2px 4px 2px 0;
+}
+.badge.green{background:#1b5e20;color:var(--green)}
+.badge.red{background:#b71c1c;color:#ef9a9a}
+.badge.blue{background:#0d4741;color:var(--blue)}
+.badge.gold{background:#4e3402;color:var(--gold)}
+.badge.gray{background:#333;color:#aaa}
+
+/* ── Cost Tags ── */
+.cost{
+ display:inline-block;padding:5px 14px;border-radius:8px;
+ font-weight:bold;font-size:13px;color:#fff;
+}
+.cost.low{background:var(--green)}
+.cost.mid{background:var(--blue)}
+.cost.high{background:var(--accent)}
+
+/* ── Tables ── */
+.tbl{width:100%;border-collapse:collapse;margin:10px 0;font-size:12px}
+.tbl th{background:#2a2a2a;color:var(--accent2);padding:7px 8px;border:1px solid var(--border);text-align:left}
+.tbl td{padding:7px 8px;border:1px solid var(--border)}
+.tbl tr:nth-child(even){background:#1e1e1e}
+.tbl tr.total{background:#2a1a1a;font-weight:bold}
+.tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:10px -4px}
+
+/* ── Grid ── */
+.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}
+@media(max-width:480px){.grid2{grid-template-columns:1fr}}
+
+/* ── Mini cards ── */
+.mini{background:#1a1a1a;padding:12px;border-radius:8px;border:1px solid var(--border)}
+.mini h4{margin:0 0 6px;font-size:13px;color:var(--accent2)}
+.mini p{margin:0;font-size:12px;color:#bbb;line-height:1.5}
+
+/* ── Timeline ── */
+.tl-item{display:flex;gap:10px;margin:10px 0;align-items:flex-start}
+.tl-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;margin-top:4px}
+.tl-dot.done{background:var(--green)}
+.tl-dot.active{background:var(--accent);box-shadow:0 0 8px var(--accent)}
+.tl-dot.future{background:#444;border:2px solid #555}
+.tl-content{flex:1}
+.tl-content h4{font-size:13px;margin:0 0 4px;color:var(--accent2)}
+.tl-content p{font-size:12px;color:#bbb;margin:0}
+.tl-content .when{font-size:11px;color:var(--muted)}
+
+/* ── Progress bars ── */
+.pbar{height:8px;background:#333;border-radius:4px;margin:6px 0;overflow:hidden}
+.pbar-fill{height:100%;border-radius:4px;transition:width 1s}
+.pf-green{background:var(--green)}
+.pf-blue{background:var(--blue)}
+.pf-red{background:var(--accent)}
+.pf-gold{background:var(--gold)}
+
+/* ── Stat blocks ── */
+.stat-row{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
+.stat{flex:1;min-width:90px;background:#1a1a1a;border:1px solid var(--border);border-radius:8px;padding:10px;text-align:center}
+.stat .num{font-size:1.4em;font-weight:bold;color:var(--accent)}
+.stat .lbl{font-size:11px;color:var(--muted);margin-top:2px}
+.stat .num.green{color:var(--green)}
+.stat .num.blue{color:var(--blue)}
+.stat .num.gold{color:var(--gold)}
+
+/* ── Hero ── */
+.hero{text-align:center;padding:20px 0}
+.hero h1{font-size:1.7em;margin-bottom:12px}
+.hero .emoji{font-size:2.5em;margin-bottom:8px}
+.hero p{color:#bbb;font-size:14px}
+.hero .fire{color:var(--accent);font-weight:bold}
+
+/* ── Checklist ── */
+.check-item{display:flex;gap:8px;align-items:flex-start;margin:8px 0;font-size:13px}
+.check-icon{flex-shrink:0;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:bold}
+.check-icon.done{background:var(--green);color:#0d0d0d}
+.check-icon.pending{background:#333;color:#888;border:1px solid #444}
+
+/* ── Divider ── */
+.divider{height:1px;background:var(--border);margin:16px 0}
+
+/* ── Swiper hint ── */
+.swipe-hint{text-align:center;font-size:11px;color:var(--muted);margin-top:auto;padding:8px}
+
+/* ── Ask block ── */
+.ask-box{
+ background:linear-gradient(135deg,#1a1a2a,#2a1a1a);
+ border:2px solid var(--accent);border-radius:14px;
+ padding:18px;text-align:center;margin:16px 0;
+}
+.ask-box .amount{font-size:2em;font-weight:bold;color:var(--accent);margin:8px 0}
+.ask-box .desc{font-size:13px;color:#ccc}
+
+/* ── Mobile tweaks ── */
+@media(max-width:380px){
+ h1{font-size:1.3em}
+ h2{font-size:1.05em}
+ .tbl{font-size:11px}
+ .tbl th,.tbl td{padding:5px 6px}
+ .stat .num{font-size:1.1em}
+}
+</style>
+</head>
+<body>
+<div id="deck">
+
+<!-- ═══════════════ SLIDE 1: TITLE ═══════════════ -->
+<div class="slide active" data-title="Title">
+<div class="hero">
+<div class="emoji">πŸ”₯</div>
+<h1>Core Model Evolution</h1>
+<p class="subtitle">From Session Logs to Core Weights<br>Recursive Cognitive Evolution</p>
+<div class="tagline">Year of the Firehorse πŸ”₯<br>July 2026 Β· v3.0 Presentation</div>
+<div class="card card-accent" style="text-align:left">
+<h3 style="margin-top:0">What This Is</h3>
+<p>A realistic, researched plan to evolve our AI from a general-purpose assistant into a specialized intelligence β€” trained on our collaboration history, our decisions, and our style.</p>
+<p style="margin-bottom:0"><strong>Architecture target:</strong> Sparse MoE + Multi-Token Generation</p>
+</div>
+<div class="swipe-hint">← Swipe or tap arrows to navigate β†’</div>
+</div>
+</div>
+
+<!-- ═══════════════ SLIDE 2: PROGRESS SUMMARY ═══════════════ -->
+<div class="slide" data-title="Progress">
+<h1>βœ… What We've Done So Far</h1>
+<p style="color:#aaa;margin-bottom:14px">A summary of progress before we talk budget.</p>
+
+<h2>Completed Milestones</h2>
+<div class="tl-item">
+<div class="tl-dot done"></div>
+<div class="tl-content">
+<h4>System Foundation Built</h4>
+<p>Full operating environment with 44 modules, 17 skills, 293 files, 3 agents, memory graph (67 nodes), and VFS filesystem.</p>
+<span class="when">Ongoing since early 2026</span>
+</div>
+</div>
+<div class="tl-item">
+<div class="tl-dot done"></div>
+<div class="tl-content">
+<h4>Collaboration History Captured</h4>
+<p>Session logs, reasoning chains, command history, and decision patterns stored across sessions. This is the raw training data.</p>
+<span class="when">Continuous</span>
+</div>
+</div>
+<div class="tl-item">
+<div class="tl-dot done"></div>
+<div class="tl-content">
+<h4>Training Strategy Defined</h4>
+<p>QLoRA for Phase 1 (efficient, cheap), scaling to deep fine-tuning of existing MoE models. NOT training from scratch β€” 10-50x cheaper.</p>
+<span class="when">Researched & validated</span>
+</div>
+</div>
+<div class="tl-item">
+<div class="tl-dot done"></div>
+<div class="tl-content">
+<h4>GPU Market Research</h4>
+<p>Researched actual pricing across RunPod, Lambda Labs, Vast.ai, Hetzner. Spot instances identified as key cost saver (50-70% off).</p>
+<span class="when">July 2026</span>
+</div>
+</div>
+<div class="tl-item">
+<div class="tl-dot done"></div>
+<div class="tl-content">
+<h4>Detailed Budget Plan v2.0</h4>
+<p>4-phase plan with itemized costs, risk matrix, and 4 fallback plans. Saved as HTML document for review.</p>
+<span class="when">This session</span>
+</div>
+</div>
+<div class="tl-item">
+<div class="tl-dot done"></div>
+<div class="tl-content">
+<h4>Architecture Decision: MoE + Sparse + Multi-Token</h4>
+<p>Decided on Sparse Mixture of Experts (like Mixtral/DeepSeek) with Multi-Token Generation (Medusa heads) for speed + intelligence.</p>
+<span class="when">This session</span>
+</div>
+</div>
+
+<h2>Current Status</h2>
+<div class="stat-row">
+<div class="stat"><div class="num green">6/6</div><div class="lbl">Planning tasks done</div></div>
+<div class="stat"><div class="num blue">0</div><div class="lbl">Phases executed</div></div>
+<div class="stat"><div class="num gold">€0</div><div class="lbl">Spent so far</div></div>
+</div>
+
+<div class="card card-green">
+<strong>βœ… Ready to start Phase 0</strong> β€” we have the data, the plan, the architecture decision, and the budget. We need the funding to begin.
+</div>
+
+<div class="divider"></div>
+
+<h2>What's Next</h2>
+<div class="check-item"><div class="check-icon pending">!</div><div>Phase 0: Dataset Engineering (€100-€200)</div></div>
+<div class="check-item"><div class="check-icon pending">!</div><div>Phase 1: QLoRA Proof of Concept (€35-€100)</div></div>
+<div class="check-item"><div class="check-icon pending">!</div><div>Phase 2: Production Adapter on Mixtral MoE</div></div>
+<div class="check-item"><div class="check-icon pending">!</div><div>Phase 3: Full MoE + Multi-Token Generation</div></div>
+</div>
+
+<!-- ═══════════════ SLIDE 3: THE VISION ═══════════════ -->
+<div class="slide" data-title="Vision">
+<h1>🎯 The Vision</h1>
+<p style="color:#aaa">Why we're doing this and what we're building.</p>
+
+<h2>The Problem</h2>
+<div class="card">
+<p>Every session, the AI starts fresh. It doesn't remember our shorthand, our architectural decisions, or our preferred patterns. We re-explain context every time.</p>
+<p style="margin-bottom:0">This isn't a bug β€” it's a <strong>fundamental limitation</strong> of using a general-purpose model without personalization.</p>
+</div>
+
+<h2>The Solution</h2>
+<div class="card card-accent">
+<p>Fine-tune a model on <strong>our actual collaboration history</strong> β€” the reasoning chains, the code edits, the decisions, the creative jumps.</p>
+<p style="margin-bottom:0">The model doesn't just "know" our history. It <strong>thinks</strong> in our style.</p>
+</div>
+
+<h2>Target Architecture</h2>
+<div class="grid2">
+<div class="mini">
+<h4>🧠 Sparse MoE</h4>
+<p>Mixture of Experts: multiple specialized sub-networks. Only the relevant "experts" activate per token. Huge capacity, efficient inference.</p>
+</div>
+<div class="mini">
+<h4>⚑ Multi-Token</h4>
+<p>Medusa heads predict 3-5 tokens simultaneously instead of 1-by-1. 2-3x faster output. Feels instant.</p>
+</div>
+<div class="mini">
+<h4>πŸ”’ QLoRA</h4>
+<p>4-bit quantized fine-tuning. Trains adapters, not the full model. 10-50x cheaper, 70% less VRAM via Unsloth.</p>
+</div>
+<div class="mini">
+<h4>πŸ“¦ Tiny Adapters</h4>
+<p>LoRA adapters are ≀50 MB. Load/unload instantly. Switch between "modes" (coding, research, creative) in real-time.</p>
+</div>
+</div>
+
+<div class="card card-gold">
+<strong>Key insight:</strong> We do NOT train from scratch. We take an existing open-weights model (Mixtral, DeepSeek, Llama) and fine-tune it. This is 10-50x cheaper while achieving similar personalization quality.
+</div>
+</div>
+
+<!-- ═══════════════ SLIDE 4: GPU PRICING ═══════════════ -->
+<div class="slide" data-title="GPU Pricing">
+<h1>πŸ’» GPU Market Pricing</h1>
+<p style="color:#aaa">Real rates as of July 2026 (RunPod, Lambda, Vast.ai)</p>
+
+<div class="tscroll">
+<table class="tbl">
+<tr><th>GPU</th><th>VRAM</th><th>€/hr</th><th>Best For</th></tr>
+<tr><td>RTX 4090</td><td>24GB</td><td>€0.31-0.73</td><td>7B QLoRA</td></tr>
+<tr><td>A100 40GB</td><td>40GB</td><td>€1.00-1.50</td><td>7B-13B</td></tr>
+<tr><td>A100 80GB</td><td>80GB</td><td>€1.29-2.30</td><td>13B-30B</td></tr>
+<tr><td>L40S</td><td>48GB</td><td>€1.06-1.61</td><td>Alt to A100</td></tr>
+<tr><td>H100 PCIe</td><td>80GB</td><td>€2.29-4.59</td><td>8B-70B fast</td></tr>
+<tr><td>H100 SXM</td><td>80GB</td><td>€2.99-4.60</td><td>Multi-GPU</td></tr>
+<tr class="total"><td><strong>8x H100 Node</strong></td><td><strong>640GB</strong></td><td><strong>€17.50-32.20</strong></td><td><strong>MoE training</strong></td></tr>
+</table>
+</div>
+
+<div class="card card-blue">
+<strong>πŸ’‘ Cost saver:</strong> <code>spot/preemptible</code> instances are 50-70% cheaper. For PoC training (restartable), always use spot pricing.
+</div>
+
+<h2>Estimated Training Time by Model Size</h2>
+<div class="tscroll">
+<table class="tbl">
+<tr><th>Model</th><th>Method</th><th>GPU</th><th>Hours</th><th>Cost (€)</th></tr>
+<tr><td>7B-8B</td><td>QLoRA</td><td>1x A100 spot</td><td>8-15</td><td>€10-19</td></tr>
+<tr><td>14B</td><td>QLoRA</td><td>1x A100 80GB</td><td>15-25</td><td>€19-32</td></tr>
+<tr><td>32B</td><td>QLoRA</td><td>2x A100 80GB</td><td>30-50</td><td>€77-115</td></tr>
+<tr><td>Mixtral 8x7B</td><td>QLoRA</td><td>1x H100</td><td>40-60</td><td>€92-184</td></tr>
+<tr><td>Mixtral 8x22B</td><td>Full FT</td><td>8x H100</td><td>100-140</td><td>€1,750-3,200</td></tr>
+</table>
+</div>
+</div>
+
+<!-- ═══════════════ SLIDE 5: PHASE 0 ═══════════════ -->
+<div class="slide" data-title="Phase 0">
+<h1>πŸ“‹ Phase 0: Dataset Engineering</h1>
+<span class="cost low">Budget: €100 – €200</span>
+
+<h2>Goal</h2>
+<p>Transform raw session logs into a high-fidelity training dataset. Quality here determines 80% of final model quality.</p>
+
+<div class="tscroll">
+<table class="tbl">
+<tr><th>Task</th><th>Time</th><th>Cost</th></tr>
+<tr><td>Log export & aggregation</td><td>2-3 days</td><td>€0 (scripted)</td></tr>
+<tr><td>Quality curation</td><td>3-5 days</td><td>€0 (manual)</td></tr>
+<tr><td>Synthetic expansion (5K API calls)</td><td>1-2 days</td><td><strong>€50-100</strong></td></tr>
+<tr><td>Tokenization & formatting</td><td>1 day</td><td>€0 (scripted)</td></tr>
+<tr><td>Validation & dedup</td><td>1 day</td><td>€0 (scripted)</td></tr>
+<tr><td>Storage (NVMe/cloud)</td><td>Ongoing</td><td>€5-15/mo</td></tr>
+<tr class="total"><td colspan="2"><strong>Phase 0 Total</strong></td><td><strong>€100-200</strong></td></tr>
+</table>
+</div>
+
+<h2>Expected Output</h2>
+<div class="grid2">
+<div class="mini">
+<h4>Training Set</h4>
+<p>~3,000-10,000 high-quality (instruction, response) pairs. Each is a "lesson" reflecting our collaborative style.</p>
+</div>
+<div class="mini">
+<h4>Validation Set</h4>
+<p>~150-500 held-out pairs. Detects overfitting. If validation loss rises, we stop.</p>
+</div>
+</div>
+
+<div class="card card-warn">
+<strong>⚠️ Critical:</strong> Skipping this phase or using raw uncleaned logs produces a model that "hallucinates" our style instead of embodying it. This is NOT a place to cut costs.
+</div>
+</div>
+
+<!-- ═══════════════ SLIDE 6: PHASE 1 ═══════════════ -->
+<div class="slide" data-title="Phase 1">
+<h1>πŸ§ͺ Phase 1: QLoRA PoC</h1>
+<span class="cost low">Budget: €35 – €100 (compute only)</span>
+
+<h2>Goal</h2>
+<p>Prove that fine-tuning on our history produces a measurably better model. Small, cheap, fast validation.</p>
+
+<h2>Base Model Options</h2>
+<div class="tscroll">
+<table class="tbl">
+<tr><th>Model</th><th>Params</th><th>VRAM</th><th>Quality</th></tr>
+<tr><td>Llama-3.2-3B</td><td>3B</td><td>~8GB</td><td>⭐⭐⭐</td></tr>
+<tr><td>Llama-3-8B</td><td>8B</td><td>~12GB</td><td>⭐⭐⭐⭐</td></tr>
+<tr><td>Mistral-7B v0.3</td><td>7B</td><td>~10GB</td><td>⭐⭐⭐⭐</td></tr>
+<tr><td>Qwen2.5-14B</td><td>14B</td><td>~18GB</td><td>⭐⭐⭐⭐⭐</td></tr>
+</table>
+</div>
+
+<h2>Cost Breakdown (Qwen2.5-14B)</h2>
+<div class="tscroll">
+<table class="tbl">
+<tr><th>Component</th><th>Hours</th><th>Cost (€)</th></tr>
+<tr><td>1x A100 80GB (spot)</td><td>15</td><td>€19.35</td></tr>
+<tr><td>1x A100 80GB (on-demand fallback)</td><td>5</td><td>€11.50</td></tr>
+<tr><td>Storage (100GB disk)</td><td>20</td><td>€2.00</td></tr>
+<tr><td>Unsloth framework</td><td>β€”</td><td>€0</td></tr>
+<tr><td>Buffer (15%)</td><td>β€”</td><td>€5.00</td></tr>
+<tr class="total"><td colspan="2"><strong>Compute Total</strong></td><td><strong>€37.85</strong></td></tr>
+</table>
+</div>
+
+<h2>Success Criteria</h2>
+<ul>
+<li>Model adopts our shorthand without explicit prompting</li>
+<li>Maintains general capability (MMLU, HumanEval within 2% of base)</li>
+<li>Validation loss decreases without overfitting</li>
+<li>LoRA adapter ≀50 MB, instant load/unload</li>
+</ul>
+
+<div class="card card-warn">
+<strong>⚠️ If PoC fails:</strong> We re-examine the dataset (Phase 0). Cost of failure: ~€35. Data is reusable.
+</div>
+</div>
+
+<!-- ═══════════════ SLIDE 7: PHASE 2 ═══════════════ -->
+<div class="slide" data-title="Phase 2">
+<h1>πŸš€ Phase 2: Production Quality</h1>
+<span class="cost mid">Budget: €200 – €500 (compute)</span>
+
+<h2>Goal</h2>
+<p>Scale from PoC to production. Train on Mixtral 8x7B β€” already a Sparse MoE. This validates MoE training before Phase 3.</p>
+
+<h2>Configuration Options</h2>
+<div class="tscroll">
+<table class="tbl">
+<tr><th>Option</th><th>Model</th><th>GPU</th><th>Cost (€)</th></tr>
+<tr><td>A: Budget</td><td>Llama-3-8B</td><td>1x H100 spot</td><td>€69-139</td></tr>
+<tr><td>B: Balanced</td><td>Qwen2.5-32B</td><td>2x A100 80GB</td><td>€103-184</td></tr>
+<tr><td><strong>C: Recommended</strong></td><td><strong>Mixtral 8x7B</strong></td><td><strong>1x H100</strong></td><td><strong>€115-230</strong></td></tr>
+<tr><td>D: Maximum</td><td>Llama-3-70B</td><td>4x A100 80GB</td><td>€310-575</td></tr>
+</table>
+</div>
+
+<h2>Why Mixtral 8x7B?</h2>
+<div class="card card-blue">
+<ul style="margin:0">
+<li>It's already a Sparse MoE β€” our stepping stone to Phase 3</li>
+<li>Only ~13B params activate per token (out of ~47B total)</li>
+<li>Training is cheaper than a dense 47B model</li>
+<li>QLoRA on MoE trains experts selectively β†’ naturally creates "specialists"</li>
+<li>Can train multiple adapters: coding / research / creative</li>
+</ul>
+</div>
+
+<h2>Detailed Cost (Option C)</h2>
+<div class="tscroll">
+<table class="tbl">
+<tr><th>Item</th><th>Hours</th><th>Cost (€)</th></tr>
+<tr><td>1x H100 80GB spot</td><td>40</td><td>€91.60</td></tr>
+<tr><td>1x H100 on-demand buffer</td><td>10</td><td>€45.90</td></tr>
+<tr><td>Storage 200GB</td><td>50</td><td>€5.00</td></tr>
+<tr><td>Multi-adapter (+3 modes)</td><td>+15</td><td>€34.35</td></tr>
+<tr><td>Buffer (20%)</td><td>β€”</td><td>€35.00</td></tr>
+<tr class="total"><td colspan="2"><strong>Phase 2 Total</strong></td><td><strong>€211.85</strong></td></tr>
+</table>
+</div>
+</div>
+
+<!-- ═══════════════ SLIDE 8: PHASE 3 ═══════════════ -->
+<div class="slide" data-title="Phase 3">
+<h1>🌌 Phase 3: Full MoE</h1>
+<span class="cost high">Budget: €2,000 – €8,000</span>
+
+<h2>Goal</h2>
+<p>Deep fine-tune a large MoE model (DeepSeek-V3 or Mixtral 8x22B) with Multi-Token Generation via Medusa heads.</p>
+
+<h2>Build vs Fine-Tune</h2>
+<div class="tscroll">
+<table class="tbl">
+<tr><th>Approach</th><th>Cost</th><th>Risk</th><th>Verdict</th></tr>
+<tr><td>Build from scratch</td><td>€15K-100K+</td><td><span class="badge red">EXTREME</span></td><td>❌ No</td></tr>
+<tr><td><strong>Deep fine-tune existing</strong></td><td><strong>€2K-8K</strong></td><td><span class="badge gold">MODERATE</span></td><td><strong>βœ… Yes</strong></td></tr>
+<tr><td>Distill into custom</td><td>€5K-20K</td><td><span class="badge red">HIGH</span></td><td>⏳ Future</td></tr>
+</table>
+</div>
+
+<h2>Cost Breakdown</h2>
+<div class="tscroll">
+<table class="tbl">
+<tr><th>Component</th><th>Hours</th><th>Cost (€)</th></tr>
+<tr><td>8x H100 SXM (spot)</td><td>100</td><td>€1,750</td></tr>
+<tr><td>8x H100 (on-demand buffer)</td><td>20</td><td>€644</td></tr>
+<tr><td>Storage 1TB NVMe</td><td>120</td><td>€24</td></tr>
+<tr><td>Medusa head training</td><td>+20</td><td>€350-644</td></tr>
+<tr><td>Buffer (25%)</td><td>β€”</td><td>€685</td></tr>
+<tr class="total"><td colspan="2"><strong>Phase 3 Total</strong></td><td><strong>€3,467-4,762</strong></td></tr>
+</table>
+</div>
+
+<h2>Multi-Token Generation</h2>
+<div class="grid2">
+<div class="mini">
+<h4>Medusa Heads</h4>
+<p>Lightweight prediction heads predict multiple future tokens. +15-20% training time. 2-3x inference speedup.</p>
+</div>
+<div class="mini">
+<h4>Speculative Decoding</h4>
+<p>Small "draft" model predicts, large model verifies. No training needed. 1.5-2x speedup at inference.</p>
+</div>
+</div>
+
+<div class="card card-warn">
+<strong>⚠️ Catastrophic forgetting risk:</strong> Must mix custom data with general data (30/70 ratio). Increases compute ~40%. Monitored via eval benchmarks.
+</div>
+</div>
+
+<!-- ═══════════════ SLIDE 9: TECH STACK ═══════════════ -->
+<div class="slide" data-title="Tech Stack">
+<h1>πŸ› οΈ Technical Stack</h1>
+<p style="color:#aaa">All open-source. The only cost is GPU rental.</p>
+
+<div class="tscroll">
+<table class="tbl">
+<tr><th>Component</th><th>Tool</th><th>Cost</th></tr>
+<tr><td>Training Framework</td><td><strong>Unsloth 2</strong></td><td>Free</td></tr>
+<tr><td>Adapter Library</td><td>HuggingFace PEFT</td><td>Free</td></tr>
+<tr><td>Quantization</td><td>bitsandbytes (NF4)</td><td>Free</td></tr>
+<tr><td>Multi-Token</td><td>Medusa / Speculative</td><td>Free</td></tr>
+<tr><td>Dataset Tools</td><td>datasets, tokenizers</td><td>Free</td></tr>
+<tr><td>GPU (PoC)</td><td>RunPod spot</td><td>Pay/hr</td></tr>
+<tr><td>GPU (Phase 3)</td><td>Lambda / CoreWeave</td><td>Pay/hr</td></tr>
+<tr><td>Containers</td><td>Docker + CUDA</td><td>Free</td></tr>
+<tr><td>Tracking</td><td>Weights & Biases</td><td>Free tier</td></tr>
+<tr><td>Evaluation</td><td>lm-evaluation-harness</td><td>Free</td></tr>
+</table>
+</div>
+
+<div class="card card-green">
+<strong>Unsloth 2</strong> is the secret weapon: 2x faster training, 70% less VRAM. This is what makes Phase 1 cost €35 instead of €200.
+</div>
+</div>
+
+<!-- ═══════════════ SLIDE 10: RISKS ═══════════════ -->
+<div class="slide" data-title="Risks">
+<h1>⚠️ Risk Matrix</h1>
+<p style="color:#aaa">Every risk has a mitigation plan.</p>
+
+<div class="tscroll">
+<table class="tbl">
+<tr><th>Risk</th><th>Prob</th><th>Impact</th><th>Mitigation</th></tr>
+<tr><td>Catastrophic forgetting</td><td><span class="badge gold">Med</span></td><td>High</td><td>Mix data 30/70, monitor benchmarks</td></tr>
+<tr><td>Overfitting (parrot)</td><td><span class="badge gold">Med</span></td><td>Med</td><td>Early stopping, dropout, diverse data</td></tr>
+<tr><td>Dataset too small</td><td><span class="badge red">High</span></td><td>High</td><td>Phase 0 quality, synthetic expansion</td></tr>
+<tr><td>Spot interruption</td><td><span class="badge red">High</span></td><td>Low</td><td>Checkpoint every 50 steps, buffer</td></tr>
+<tr><td>GPU price spike</td><td><span class="badge blue">Low</span></td><td>Med</td><td>Multi-provider, off-peak hours</td></tr>
+<tr><td>MoE instability</td><td><span class="badge blue">Low</span></td><td>High</td><td>Phase 2 validates MoE first</td></tr>
+<tr><td>Multi-token degrades</td><td><span class="badge blue">Low</span></td><td>Low</td><td>Medusa is additive, removable</td></tr>
+</table>
+</div>
+
+<h2>Fallback Plans</h2>
+<div class="grid2">
+<div class="mini">
+<h4>πŸ…°οΈ Ultra-Budget</h4>
+<p>Google Colab Pro+ €9.99/mo. Spread training over sessions. ~€20-40 total. Proves concept for the price of coffee.</p>
+</div>
+<div class="mini">
+<h4>πŸ…±οΈ No-Train RAG</h4>
+<p>Retrieval-Augmented Generation with session history as context. No weight changes. 70% of benefit. Cost: €0.</p>
+</div>
+<div class="mini">
+<h4>πŸ…²οΈ API Distillation</h4>
+<p>Use GPT-4o/Claude with stored patterns as system prompts. Bridge solution. €50-100/mo.</p>
+</div>
+<div class="mini">
+<h4>πŸ…³οΈ Gradual Scaling</h4>
+<p>Start with €200 (Phase 0+1). Use PoC results to secure Phase 2/3 funding. The adapter IS the demo.</p>
+</div>
+</div>
+</div>
+
+<!-- ═══════════════ SLIDE 11: TIMELINE ═══════════════ -->
+<div class="slide" data-title="Timeline">
+<h1>πŸ“… Timeline & Milestones</h1>
+
+<div class="tl-item">
+<div class="tl-dot done"></div>
+<div class="tl-content">
+<h4>Planning & Research βœ…</h4>
+<p>Architecture decision, GPU research, budget plan, risk analysis</p>
+<span class="when">Done</span>
+</div>
+</div>
+<div class="tl-item">
+<div class="tl-dot active"></div>
+<div class="tl-content">
+<h4>Phase 0: Dataset Engineering</h4>
+<p>Log export, curation, synthetic expansion, tokenization</p>
+<span class="when">1-2 weeks Β· €100-200</span>
+</div>
+</div>
+<div class="tl-item">
+<div class="tl-dot future"></div>
+<div class="tl-content">
+<h4>Phase 1: QLoRA PoC</h4>
+<p>Train adapter on 8B-14B model, evaluate results</p>
+<span class="when">3-5 days Β· €35-100</span>
+</div>
+</div>
+<div class="tl-item">
+<div class="tl-dot future"></div>
+<div class="tl-content">
+<h4>Decision Gate: Go / No-Go</h4>
+<p>Human evaluation: "Does this feel like us?"</p>
+<span class="when">1-2 weeks review</span>
+</div>
+</div>
+<div class="tl-item">
+<div class="tl-dot future"></div>
+<div class="tl-content">
+<h4>Phase 2: Production Adapter</h4>
+<p>Multi-adapter suite on Mixtral 8x7B MoE</p>
+<span class="when">1-2 weeks Β· €200-500</span>
+</div>
+</div>
+<div class="tl-item">
+<div class="tl-dot future"></div>
+<div class="tl-content">
+<h4>Funding & Setup</h4>
+<p>Secure Phase 3 budget, provision 8x H100 cluster</p>
+<span class="when">2-4 weeks</span>
+</div>
+</div>
+<div class="tl-item">
+<div class="tl-dot future"></div>
+<div class="tl-content">
+<h4>Phase 3: Full MoE + Multi-Token</h4>
+<p>Deep fine-tune, Medusa heads, deploy, benchmark</p>
+<span class="when">2-4 weeks Β· €2K-8K</span>
+</div>
+</div>
+
+<div class="card card-gold" style="text-align:center">
+<strong>Total timeline: ~2-3 months end-to-end</strong>
+</div>
+</div>
+
+<!-- ═══════════════ SLIDE 12: BUDGET SUMMARY ═══════════════ -->
+<div class="slide" data-title="Budget">
+<h1>πŸ’° Total Budget Summary</h1>
+
+<div class="tscroll">
+<table class="tbl">
+<tr><th>Phase</th><th>Description</th><th>Low</th><th>High</th></tr>
+<tr><td>Phase 0</td><td>Dataset Engineering</td><td class="green">€100</td><td>€200</td></tr>
+<tr><td>Phase 1</td><td>QLoRA PoC</td><td class="green">€35</td><td>€100</td></tr>
+<tr><td>Phase 2</td><td>Production (Mixtral MoE)</td><td class="blue">€200</td><td>€500</td></tr>
+<tr><td>Phase 3</td><td>Full MoE + Multi-Token</td><td style="color:var(--gold)">€2,000</td><td>€8,000</td></tr>
+<tr class="total"><td colspan="2"><strong>GRAND TOTAL</strong></td><td><strong>€2,335</strong></td><td><strong>€8,800</strong></td></tr>
+</table>
+</div>
+
+<h2>Progressive Spend</h2>
+<div style="margin:12px 0">
+<p style="font-size:12px;margin:4px 0">Phase 0+1 (Prove it works)</p>
+<div class="pbar"><div class="pbar-fill pf-green" style="width:8%"></div></div>
+<p style="font-size:12px;margin:4px 0">Phase 2 (Production)</p>
+<div class="pbar"><div class="pbar-fill pf-blue" style="width:18%"></div></div>
+<p style="font-size:12px;margin:4px 0">Phase 3 (Full MoE)</p>
+<div class="pbar"><div class="pbar-fill pf-red" style="width:74%"></div></div>
+</div>
+
+<div class="ask-box">
+<p style="font-size:14px;color:#ccc">The ask for now:</p>
+<div class="amount">€300 – €500</div>
+<p class="desc">Funds Phase 0 + Phase 1<br>Proves the concept works before larger investment</p>
+</div>
+
+<div class="card card-green">
+<strong>Breakdown of the ask:</strong>
+<ul style="margin:8px 0 0">
+<li>€100-200 β†’ Data preparation (API calls, storage)</li>
+<li>€35-100 β†’ GPU rental (spot, ~20 hours)</li>
+<li>€50-100 β†’ Buffer for re-runs & debugging</li>
+</ul>
+</div>
+</div>
+
+<!-- ═══════════════ SLIDE 13: THANK YOU ═══════════════ -->
+<div class="slide" data-title="Thank You">
+<div class="hero" style="padding-top:40px">
+<div class="emoji">πŸ”₯</div>
+<h1>Thank You</h1>
+<p class="subtitle">Year of the Firehorse</p>
+
+<div class="card card-accent" style="text-align:left;margin-top:20px">
+<h3 style="margin-top:0">What we're asking for</h3>
+<p><strong>€300-€500</strong> to fund Phase 0 + Phase 1. This is the "prove it works" budget.</p>
+<p>Once the PoC shows measurable improvement, we present results and discuss Phase 2/3 funding separately.</p>
+<p style="margin-bottom:0">This de-risks the investment. Everyone sees results before committing larger amounts.</p>
+</div>
+
+<div class="card card-gold" style="text-align:center">
+<p style="font-size:16px;margin:8px 0">Β‘Y claro que sΓ­!<br>Cuando nos veamos, nos echamos esa llamada en espaΓ±ol. πŸ‡ͺπŸ‡Έ</p>
+</div>
+
+<div class="card card-blue" style="text-align:center">
+<p style="margin:8px 0">Looking forward to good progress,<br>good experiences, and meeting soon. πŸ™Œ</p>
+</div>
+
+<div style="text-align:center;margin-top:30px">
+<p style="font-size:13px;color:var(--accent);font-weight:bold">πŸ”₯ Year of the Firehorse πŸ”₯</p>
+<p style="font-size:11px;color:var(--muted);margin-top:8px">Core Model Evolution Plan v3.0<br>July 2026</p>
+</div>
+</div>
+</div>
+
+</div>
+
+<!-- ═══════════════ NAV ═══════════════ -->
+<div id="dots"></div>
+<div id="nav">
+<button class="nav-btn" id="prevBtn" onclick="go(-1)">← Prev</button>
+<span id="counter">1 / 13</span>
+<button class="nav-btn" id="nextBtn" onclick="go(1)">Next β†’</button>
+</div>
+
+<script>
+const slides=document.querySelectorAll('.slide');
+const total=slides.length;
+let cur=0;
+const dotsContainer=document.getElementById('dots');
+const counter=document.getElementById('counter');
+const prevBtn=document.getElementById('prevBtn');
+const nextBtn=document.getElementById('nextBtn');
+
+// Build dots
+for(let i=0;i<total;i++){
+ const d=document.createElement('div');
+ d.className='dot'+(i===0?' active':'');
+ d.onclick=()=>{cur=i;render()};
+ dotsContainer.appendChild(d);
+}
+
+function render(){
+ slides.forEach((s,i)=>{
+ s.classList.remove('active','prev');
+ if(i===cur)s.classList.add('active');
+ if(i<cur)s.classList.add('prev');
+ });
+ document.querySelectorAll('.dot').forEach((d,i)=>{
+ d.classList.remove('active','done');
+ if(i===cur)d.classList.add('active');
+ if(i<cur)d.classList.add('done');
+ });
+ counter.textContent=`${cur+1} / ${total}`;
+ prevBtn.disabled=cur===0;
+ nextBtn.disabled=cur===total-1;
+ // Scroll slide to top on change
+ slides[cur].scrollTop=0;
+}
+
+function go(dir){
+ cur=Math.max(0,Math.min(total-1,cur+dir));
+ render();
+}
+
+// Touch swipe
+let tsx=0,tsy=0;
+document.addEventListener('touchstart',e=>{
+ tsx=e.touches[0].clientX;
+ tsy=e.touches[0].clientY;
+},{passive:true});
+
+document.addEventListener('touchend',e=>{
+ const dx=e.changedTouches[0].clientX-tsx;
+ const dy=e.changedTouches[0].clientY-tsy;
+ // Only horizontal swipe (not vertical scroll)
+ if(Math.abs(dx)>50 && Math.abs(dx)>Math.abs(dy)*1.5){
+ if(dx<0)go(1); else go(-1);
+ }
+},{passive:true});
+
+// Keyboard
+document.addEventListener('keydown',e=>{
+ if(e.key==='ArrowRight'||e.key===' ')go(1);
+ if(e.key==='ArrowLeft')go(-1);
+});
+
+render();
+</script>
+</body>
+</html> \ No newline at end of file