File size: 11,167 Bytes
9bf091e 3b4d731 9bf091e 3b4d731 9bf091e 3b4d731 9bf091e 3b4d731 9bf091e 3b4d731 9bf091e 3b4d731 26ae416 9bf091e 3b4d731 9bf091e 3b4d731 26ae416 9bf091e 3b4d731 9bf091e 26ae416 3b4d731 26ae416 9bf091e 3b4d731 9bf091e 3b4d731 26ae416 9bf091e 3b4d731 d1d7f5f 26ae416 3b4d731 26ae416 3b4d731 9bf091e 3b4d731 26ae416 3b4d731 26ae416 3b4d731 26ae416 3b4d731 26ae416 3b4d731 9bf091e 3b4d731 26ae416 3b4d731 39c6618 0208108 9bf091e 26ae416 3b4d731 39c6618 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 | <!-- MARL — Model-Agnostic Runtime Middleware for LLMs -->
<link href="https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&display=swap" rel="stylesheet">
<style>
*{margin:0;padding:0;box-sizing:border-box}
:root{
--bg:#f8f9fc;--bg2:#f0f2f8;--surface:#ffffff;--surface-alt:#f5f6fa;
--border:#e2e5f0;--border-hover:#c7cce0;
--shadow-sm:0 1px 3px rgba(15,23,42,.04),0 1px 2px rgba(15,23,42,.06);
--shadow:0 4px 16px rgba(15,23,42,.06),0 1px 3px rgba(15,23,42,.08);
--shadow-lg:0 12px 40px rgba(15,23,42,.08),0 4px 12px rgba(15,23,42,.06);
--text:#0f172a;--text-sec:#475569;--text-muted:#94a3b8;
--ac:#6366f1;--ac2:#4f46e5;--ac-bg:rgba(99,102,241,.06);
--teal:#0d9488;--amber:#d97706;--green:#16a34a;--rose:#e11d48;--violet:#8b5cf6;
--radius:16px;--radius-sm:10px;--radius-xs:6px;
--font:'Sora',sans-serif;--mono:'JetBrains Mono',monospace;
--tr:0.22s cubic-bezier(0.4,0,0.2,1);
}
/* ── Global Gradio Override ── */
.gradio-container{max-width:100%!important;width:100%!important;padding:0 12px!important;font-family:var(--font)!important;background:var(--bg)!important;margin:0 auto!important}
.gradio-container *{font-family:var(--font)!important}
header{display:none!important}
footer{display:none!important}
body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
background:radial-gradient(ellipse 70% 45% at 15% 8%,rgba(99,102,241,.05),transparent 55%),
radial-gradient(ellipse 55% 35% at 85% 92%,rgba(13,148,136,.04),transparent 50%)}
::-webkit-scrollbar{width:5px;height:4px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(99,102,241,.2);border-radius:10px}
::selection{background:rgba(99,102,241,.12)}
/* ── Buttons ── */
.gr-button{font-family:var(--font)!important;border-radius:var(--radius-sm)!important;font-weight:600!important;transition:var(--tr)!important}
.gr-button.primary{background:linear-gradient(135deg,#6366f1,#4f46e5)!important;border:none!important;box-shadow:0 4px 16px rgba(99,102,241,.25)!important;color:#fff!important}
.gr-button.primary:hover{box-shadow:0 6px 24px rgba(99,102,241,.35)!important;transform:translateY(-1px)}
.gr-button.secondary{background:var(--surface)!important;border:1px solid var(--border)!important;color:var(--text-sec)!important}
.gr-button.secondary:hover{border-color:var(--ac)!important;color:var(--ac)!important;background:var(--ac-bg)!important}
/* ── Inputs ── */
.gr-input,.gr-dropdown,.gr-textbox textarea,.gr-slider{border-radius:var(--radius-sm)!important;border-color:var(--border)!important;font-family:var(--font)!important}
.gr-input:focus,.gr-textbox textarea:focus{border-color:var(--ac)!important;box-shadow:0 0 0 3px rgba(99,102,241,.08)!important}
.gr-panel,.gr-form{border-radius:var(--radius)!important;border-color:var(--border)!important;box-shadow:var(--shadow-sm)!important}
.gr-accordion{border-radius:var(--radius)!important;border:1px solid var(--border)!important;overflow:hidden}
/* ── Tabs ── */
.gr-tab-nav{border-bottom:2px solid var(--border)!important;background:var(--surface)!important;border-radius:var(--radius-sm) var(--radius-sm) 0 0!important;overflow:hidden}
.gr-tab-nav button{font-family:var(--mono)!important;font-weight:600!important;font-size:11px!important;padding:10px 20px!important;color:var(--text-muted)!important;border:none!important;letter-spacing:.3px;transition:var(--tr)!important}
.gr-tab-nav button.selected{color:var(--ac)!important;border-bottom:2px solid var(--ac)!important;background:var(--ac-bg)!important}
/* ── Animations ── */
@keyframes fadeIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
@keyframes shimmer{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}
/* ══ MARL HEADER ══ */
.marl-wrap{position:relative;z-index:1;animation:fadeIn .6s ease-out}
.marl-header{text-align:center;margin-bottom:16px}
.badge-row{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}
.badge{display:inline-flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--border);border-radius:100px;padding:4px 14px;font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--ac);box-shadow:var(--shadow-sm)}
.pulse-dot{width:5px;height:5px;border-radius:50%;background:var(--ac);animation:pulse 2s infinite}
.marl-title{font-size:clamp(20px,3.2vw,36px);font-weight:800;line-height:1.1;letter-spacing:-1.5px;margin-bottom:6px;
background:linear-gradient(135deg,#1e1b4b 15%,#6366f1 50%,#0d9488 85%);background-size:200%;
-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:shimmer 6s ease-in-out infinite}
.marl-sub{color:var(--text-muted);font-size:10.5px;line-height:1.8}
.marl-sub b{color:var(--text-sec);font-weight:600}
/* ── Stats ── */
.stats{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;margin:12px 0 14px}
.st{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 14px;text-align:center;min-width:90px;box-shadow:var(--shadow-sm);transition:var(--tr)}
.st:hover{box-shadow:var(--shadow);border-color:var(--border-hover)}
.stn{font-family:var(--mono);font-size:16px;font-weight:700;color:var(--ac)}
.stl{font-size:8px;color:var(--text-muted);margin-top:2px;text-transform:uppercase;letter-spacing:.5px}
/* ── Pipeline ── */
.pipe{display:flex;align-items:center;justify-content:center;gap:0;margin:14px auto;max-width:700px}
.pipe-node{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 12px;border-radius:var(--radius-xs);background:var(--surface);border:1px solid var(--border);transition:var(--tr);flex:1;box-shadow:var(--shadow-sm)}
.pipe-node:hover{border-color:var(--ac);box-shadow:0 4px 16px rgba(99,102,241,.12);transform:translateY(-2px)}
.pipe-icon{font-size:16px}
.pipe-label{font-size:9px;font-weight:700;color:var(--text);font-family:var(--mono)}
.pipe-num{font-size:7px;color:var(--text-muted);font-family:var(--mono);letter-spacing:1px}
.pipe-arrow{color:var(--text-muted);font-size:12px;padding:0 4px;flex-shrink:0}
/* ── Link badges ── */
.link-row{display:flex;gap:6px;justify-content:center;margin-top:10px;flex-wrap:wrap}
.link-badge{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono);font-size:8px;font-weight:800;padding:3px 10px;border-radius:14px;text-decoration:none;letter-spacing:.3px;box-shadow:0 1px 3px rgba(0,0,0,.15);transition:all .2s}
.link-badge:hover{transform:translateY(-1px);box-shadow:0 3px 8px rgba(0,0,0,.2)}
/* ── Install ── */
.install-bar{display:flex;align-items:center;justify-content:center;gap:12px;margin:12px auto;padding:8px 18px;background:var(--surface);border:1px solid var(--border);border-radius:100px;max-width:480px;box-shadow:var(--shadow-sm)}
.install-bar code{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--ac);letter-spacing:.5px}
.install-sep{color:var(--text-muted);font-size:10px}
/* ── Mobile ── */
@media(max-width:768px){
.stats{gap:4px}.st{min-width:70px;padding:6px 10px}.stn{font-size:13px}
.pipe{flex-wrap:wrap;gap:4px}.pipe-arrow{display:none}
.link-row{gap:4px}.link-badge{font-size:7px;padding:2px 7px}
.badge-row{flex-direction:column;gap:4px}
}
</style>
<div class="marl-wrap">
<div class="marl-header">
<div class="badge-row">
<div class="badge"><div class="pulse-dot"></div>MARL v1.0 · Apache 2.0</div>
</div>
<h1 class="marl-title">Model-Agnostic Runtime Middleware</h1>
<p class="marl-sub">
<b>The 3rd approach after fine-tuning & RAG</b> — restructure reasoning at runtime, not model weights.<br>
5-stage multi-agent pipeline · <b>70%+ hallucination reduction</b> · One line to integrate with any LLM.
</p>
<div class="stats">
<div class="st"><div class="stn" style="color:#16a34a">70%+</div><div class="stl">Hallucination ↓</div></div>
<div class="st"><div class="stn">9</div><div class="stl">Emergence Engines</div></div>
<div class="st"><div class="stn" style="color:#d97706">5,538</div><div class="stl">Creative Seeds</div></div>
<div class="st"><div class="stn" style="color:#0d9488">2M+</div><div class="stl">MAU</div></div>
<div class="st"><div class="stn" style="color:#8b5cf6">1,500+</div><div class="stl">Public AI</div></div>
</div>
<div class="pipe">
<div class="pipe-node"><span class="pipe-icon">🔍</span><span class="pipe-label">Hypothesis</span><span class="pipe-num">S1</span></div>
<span class="pipe-arrow">→</span>
<div class="pipe-node"><span class="pipe-icon">⚡</span><span class="pipe-label">Solver</span><span class="pipe-num">S2</span></div>
<span class="pipe-arrow">→</span>
<div class="pipe-node"><span class="pipe-icon">🔎</span><span class="pipe-label">Auditor</span><span class="pipe-num">S3</span></div>
<span class="pipe-arrow">→</span>
<div class="pipe-node"><span class="pipe-icon">🛡️</span><span class="pipe-label">Verifier</span><span class="pipe-num">S4</span></div>
<span class="pipe-arrow">→</span>
<div class="pipe-node"><span class="pipe-icon">✨</span><span class="pipe-label">Synthesizer</span><span class="pipe-num">S5</span></div>
</div>
<div class="install-bar">
<code>pip install marl-middleware</code>
<span class="install-sep">or</span>
<code style="color:var(--teal)">docker run vidraft/marl</code>
</div>
<div class="link-row">
<a href="https://pypi.org/project/marl-middleware/" target="_blank" class="link-badge" style="background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff">📦 PyPI</a>
<a href="https://huggingface.co/spaces/VIDraft/MARL" target="_blank" class="link-badge" style="background:linear-gradient(135deg,#ff9d00,#ffcd00);color:#1a1a2e">🤗 HuggingFace</a>
<a href="https://huggingface.co/spaces/FINAL-Bench/Leaderboard" target="_blank" class="link-badge" style="background:linear-gradient(135deg,#0d9488,#059669);color:#fff">🏆 FINAL Bench</a>
<a href="https://vidraft.net" target="_blank" class="link-badge" style="background:linear-gradient(135deg,#24292e,#40444b);color:#fff">🌐 VIDRAFT</a>
<a href="https://github.com/Vidraft/MARL" target="_blank" class="link-badge" style="background:linear-gradient(135deg,#24292e,#40444b);color:#fff">⚡ GitHub</a>
<a href="/cdn-cgi/l/email-protection#b7d6c5cfdec1d0c7c3f7d0dad6dedb99d4d8da" class="link-badge" style="background:linear-gradient(135deg,#e11d48,#f43f5e);color:#fff">✉️ Contact</a>
</div>
<div style="display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-top:8px;font-family:var(--mono);font-size:8px;color:var(--text-muted)">
<span style="color:#e11d48">🔥 FINAL Bench Global #5 Dataset</span> ·
<span style="color:#0d9488">🏗 Seoul AI Hub</span> ·
<span style="color:#8b5cf6">⭐ HF STAR AI Top 12</span> ·
<span style="color:#d97706">🩺 FACTS Gr |