/** * Pre-built banner HTML snippets used by the demo personas. * * They follow the same conventions as a real HtmlEmbed in the editor: * - Single root element with a stable class * - Scoped `; // --------------------------------------------------------------------------- // Sample data file + matching chart for the "inline chart from data" // demo scene. Carol seeds this CSV into the EmbedDataStore, opens the // Embed Studio and lets the agent turn it into a bar chart. The chart // purposefully inlines the same rows verbatim so it renders without // network access (the iframe is sandboxed). // --------------------------------------------------------------------------- export const MODEL_ACCURACY_CSV = `epoch,baseline,transformer,mixture-of-experts 1,0.62,0.71,0.74 2,0.68,0.78,0.81 3,0.71,0.83,0.86 4,0.73,0.86,0.89 5,0.74,0.88,0.91 6,0.75,0.89,0.92 7,0.75,0.90,0.93 8,0.76,0.90,0.93`; export const MODEL_ACCURACY_CSV_META = { name: "model-accuracy.csv", ext: "csv", columns: ["epoch", "baseline", "transformer", "mixture-of-experts"], rowCount: 8, }; // --------------------------------------------------------------------------- // Companion architecture descriptor for the neural-network banner. Seeded // alongside the CSV so the agent has something concrete to "discover" and // turn into the visualization. The layer counts here are the SAME ones // hardcoded in NEURAL_NETWORK_BANNER_HTML above (6 → 10 → 14 → 10 → 6), // which keeps the demo deterministic: the agent reads the JSON, narrates // the topology, then drops the matching banner. // --------------------------------------------------------------------------- export const ARCHITECTURE_JSON = `{ "name": "transformer-block", "layers": [ { "name": "tokens", "kind": "input", "units": 6 }, { "name": "embedding", "kind": "projection","units": 10 }, { "name": "attention", "kind": "self-attn", "units": 14 }, { "name": "values", "kind": "projection","units": 10 }, { "name": "logits", "kind": "output", "units": 6 } ], "connectivity": "fully-connected", "activation": "softmax" }`; export const ARCHITECTURE_JSON_META = { name: "architecture.json", ext: "json", columns: ["name", "kind", "units"], rowCount: 5, }; /** * Inline line chart rendered once Carol asks the agent for a * visualization. Self-contained (no ColorPalettes lookup to keep the * iframe deterministic in the recording), inlines the CSV rows as a * parsed array, transparent background, uses CSS variables for theming. */ export const MODEL_ACCURACY_CHART_HTML = `
`;