PLANTPULSE AIprototype architecture
production →← back to app
How it's built

Prototype architecture

The design running this live demo. The diagram animates the request flow step by step.

Prototype architecture and request flowPrototype architecture and request flow

One Next.js app on Vercel. The browser POSTs a question to a serverless function. Claude routes it to one Exasol view, the function runs that read-only SQL on Exasol, Claude narrates the returned rows, and the UI renders the answer with its SQL and evidence. All analytics live in Exasol, and the LLM only routes and narrates.

Assumptions made for this prototype
  • Mock data. The data is synthetic but realistic, generated with deliberately planted scenarios (M-102 high risk, Pune downtime, repeated errors) rather than pulled from a real plant historian.
  • Time is "live". About 3 weeks of hourly sensor readings run up to the current moment, so "today" and "this week" are always computed against the database clock.
  • Explainable risk score. Risk is a transparent, rule-based SQL formula (vibration, errors, downtime, and maintenance with fixed weights), chosen for explainability over a black-box ML model.
  • Illustrative thresholds. Risk bands are demo defaults: HIGH at 60 and above, MEDIUM at 30 and above. Error codes in the E5xx range are treated as severe.
  • Small, focused dataset. 3 plants, 6 lines, and 18 machines: enough to demonstrate the concept clearly without being production scale.
  • A thin assistant. The LLM only routes a question to the right Exasol view and narrates the rows it gets back. It never computes analytics, and it answers a focused set of operations questions rather than arbitrary natural language.
  • Read-only by design. The assistant cannot change plant state. Every generated query is SELECT-only and restricted to the curated PLANTOPS.V_* views.
  • No login (demo). This open demo has no authentication. A production deployment would add SSO, role-based access, and per-plant data scoping.
  • Connectivity. Exasol is reached through an IP allowlist (0.0.0.0/0 for the demo) plus a token, over a per-request serverless connection with automatic retry.
  • Always-on cluster. For the evaluation window the single Exasol cluster has auto-stop disabled, so there is no cold-start lag. In normal use it would auto-stop when idle to save cost.
  • Scope. Only English-language, manufacturing-operations questions are supported. Anything out of scope is politely declined.
  • Static baselines. Each machine baseline is stored per machine and is not dynamically recomputed.