Architecture
OpenVizAI separates AI reasoning from deterministic rendering.
Pipeline
- Input: user prompt + dataset rows
- Sampling: the runtime selects a limited row sample
- AI decision: model selects chart type and field mappings
- Runtime transform: deterministic code maps full dataset using the chart spec
- Render: React components render with your selected chart library (
apexchartsorchartjs)
Why This Scales
- Token cost is stable because row sampling is bounded
- Full dataset transformation remains deterministic and auditable
- Rendering logic is isolated from provider/model changes
- Rendering library is explicit at runtime via
chartLibrary
