"""Pre-built modern HTML presentation templates — English.""" from __future__ import annotations from typing import Any MODERN_DECKS: dict[str, dict[str, Any]] = { "data-maturity": { "id": "data-maturity", "title": "Data Maturity Assessment", "subtitle": "Dell ATC — Customer Data Onboarding Framework", "slides": [ { "id": "dm-1", "kind": "hero", "title": "Data Maturity Assessment", "subtitle": "From raw data to trusted decisions", "bullets": [ "6 dimensions: Completeness, Consistency, Validity, Uniqueness, Timeliness, Accuracy", "Automated analysis with Docling, Great Expectations & Soda Core", "Full report with priorities and remediation roadmap", ], }, { "id": "dm-2", "kind": "narrative", "title": "Why maturity?", "subtitle": "Customers hand over data — we show where it stands", "bullets": [ "73% of analytics projects fail due to data quality (Gartner)", "Without a baseline there is no measurable improvement", "DQ tools + document parsing = complete picture", "Report ready for boardroom & audit", ], }, { "id": "dm-3", "kind": "zone", "title": "Our toolchain", "subtitle": "Integrated on the ATC platform", "bullets": [ "Docling — PDF, PPTX, DOCX, XLSX → structured data", "Great Expectations — Python expectations & data contracts", "Soda Core — YAML checks, freshness, anomaly monitoring", "DQ API — maturity score + HTML report", ], }, { "id": "dm-4", "kind": "cta", "title": "Next step", "subtitle": "Upload customer data in Data Quality tab", "bullets": [ "Upload CSV, Excel, PDF or database export", "Receive maturity score (0–100) per dimension", "Action list: what to fix first", "Reports are stored — no need to re-upload", ], }, ], }, "atc-platform": { "id": "atc-platform", "title": "ATC Data Platform", "subtitle": "Modern lakehouse on Dell infrastructure", "slides": [ { "id": "atc-1", "kind": "hero", "title": "ATC Data & AI Platform", "subtitle": "CDC → Kafka → Spark → Iceberg → Trino", "bullets": [ "Live pipeline: PostgreSQL, MySQL, MongoDB, Cassandra", "ObjectScale S3 + 9-node Hadoop cluster", "GPU Lab: Llama 3 70B for autonomous agents", ], }, { "id": "atc-2", "kind": "topology", "title": "End-to-end flow", "subtitle": "Sources → Ingestion → Compute → Storage → Consumers", "bullets": [ "Airflow orchestrates daily data generation", "Debezium CDC → Kafka → Spark → Iceberg", "Trino federated queries + Superset BI", "GenAI agents with full cluster context", ], }, ], }, "stack-architecture": { "id": "stack-architecture", "title": "ATC Stack Architecture", "subtitle": "How the Command Center, DQ, RAG & Lakehouse fit together", "slides": [ { "id": "arch-1", "kind": "hero", "title": "ATC Intelligent Data Platform", "subtitle": "One dashboard — ingest, assess, chat, present", "bullets": [ "Command Center at http://10.0.21.33 — single entry point", "Upload once → stored permanently in ChromaDB + file registry", "Ask questions anytime via Knowledge Chat (RAG + LangChain)", "Present architecture & maturity to customers live", ], }, { "id": "arch-2", "kind": "architecture", "animation": "full-stack", "title": "Full Stack Overview", "subtitle": "All services on VM304 (Command Center)", "bullets": [ "Caddy routes /api, /dq, /rag to backend services", "React UI — Data Platform, Presentation, Data Quality, Knowledge Chat", "Docling on port 5001 for document parsing UI + API", "Postgres + Redis for agents; ChromaDB for vectors", ], }, { "id": "arch-3", "kind": "architecture", "animation": "lakehouse", "title": "Lakehouse Pipeline", "subtitle": "Operational data → analytics-ready tables", "bullets": [ "Sources on DB Vault (10.0.21.51): PG, MySQL, Mongo, Cassandra, Neo4j", "Debezium captures changes → Kafka topics", "Spark transforms → Iceberg tables on ObjectScale", "Trino SQL + Superset dashboards for consumers", ], }, { "id": "arch-4", "kind": "architecture", "animation": "dq-flow", "title": "Data Quality & Maturity", "subtitle": "Prove data readiness before AI/ML projects", "bullets": [ "Upload customer file → parsed by Docling if PDF/Office", "6 maturity dimensions scored 0–100 with findings", "GE + Soda checks per column — expandable in UI", "HTML report + image gallery — stored in /data/reports", ], }, { "id": "arch-5", "kind": "architecture", "animation": "rag-flow", "title": "Knowledge Chat (RAG)", "subtitle": "Upload once — query forever", "bullets": [ "Document saved to disk + indexed in ChromaDB (persistent volume)", "Duplicate uploads skipped automatically (SHA-256 hash)", "LangChain retrieves top-k chunks → Llama 70B on GPU Lab", "Answers include source filename + chunk preview", ], }, { "id": "arch-6", "kind": "narrative", "title": "AI Agents Layer", "subtitle": "Autonomous ops with full lab context", "bullets": [ "Supervisor + field operators on Command Center", "Each agent sees live workload, GPU, databases, topology", "LLM: Llama 3 70B GPTQ via vLLM (10.0.20.106:8001)", "Approval workflow for sensitive operations", ], }, { "id": "arch-7", "kind": "zone", "title": "Infrastructure Map", "subtitle": "Dell ATC cluster — key IPs", "bullets": [ "Command Center VM304: 10.0.21.33 (this dashboard)", "GPU Lab VM303: 10.0.20.106 — 7× V100, vLLM, model manager", "DB Vault: 10.0.21.51 · Lakehouse: 10.0.21.50", "Docling UI: http://10.0.21.33:5001/ui/", ], }, { "id": "arch-8", "kind": "cta", "title": "Customer Demo Flow", "subtitle": "Recommended narrative for presentations", "bullets": [ "1. Show live Data Platform topology & agent fleet", "2. Upload customer sample → Data Quality maturity report", "3. Same file already in Knowledge Chat — ask questions live", "4. Export this architecture deck as HTML for customer handout", ], }, ], }, } def list_static_decks() -> list[dict[str, Any]]: return [ {"id": k, "title": v["title"], "subtitle": v["subtitle"], "slide_count": len(v["slides"]), "source": "builtin"} for k, v in MODERN_DECKS.items() ] def get_static_deck(deck_id: str) -> dict[str, Any] | None: deck = MODERN_DECKS.get(deck_id) if not deck: return None return { "ts": None, "title": deck["title"], "subtitle": deck["subtitle"], "slides": deck["slides"], "slide_count": len(deck["slides"]), "source": "builtin", "id": deck_id, }