import React from 'react'; const STACK_COLUMNS = [ { title: 'Interpretability', color: '#00D9C0', items: [ { name: 'TransformerLens', desc: 'Created by Neel Nanda (ex-Anthropic). De facto standard for mechanistic interpretability. HookPoints on every activation. 2,900+ GitHub stars.', }, { name: 'GPT-2 Small', desc: 'Small enough to analyze exhaustively (12 layers, 12 heads). Identical to model used in Wang et al. (2022) and Anthropic\'s Towards Monosemanticity.', }, ], }, { title: 'Sparse Autoencoder', color: '#9B59F5', items: [ { name: 'Custom SAE (PyTorch)', desc: 'Building from scratch > using pre-trained SAE. Understanding training loop, dead feature problem, L1 tuning — what interviewers ask about.', }, { name: 'W&B', desc: 'Track L1 coefficient sweeps, dead feature percentages, reconstruction loss across expansion factors.', }, ], }, { title: 'Visualization', color: '#FFB347', items: [ { name: 'Plotly', desc: 'Interactive attention heatmaps with hover. Zoom into specific (layer, head) combinations. Publication-quality figures.', }, ], }, { title: 'AI Layer', color: '#4A9EFF', items: [ { name: 'Google Gemini 2.5 Flash', desc: 'Generates mechanistic interpretability explanations for user-provided prompts in the live demo. Makes the app interactive without running PyTorch in-browser.', }, ], }, ]; export const TechStack = () => { return (

The Stack

{STACK_COLUMNS.map((col, i) => (
{col.title}
{col.items.map((item, j) => (
{item.name}

{item.desc}

))}
))}
); };