Monitoring a Model
Once a model is enabled and running, Koios provides real-time visibility into every aspect of its operation. The model detail page is organized into tabs, each focused on a different dimension of monitoring.
On every tab except Overview — where the status hero already carries it — a floating status pill shows the model's current state (Running, Stopped, or Failed) so you never lose context. Click the pill to expand it for the current error, warning, or info message and a link back to the Overview tab.
For models scanning every 5 seconds or slower, the pill is drawn with a prediction ring: a radial progress indicator that fills over the model's scan rate and counts down to the next prediction. The ring is anchored to the server clock, so it stays in sync with what the Predict Engine is actually doing rather than the browser's wall time.
Enabling a Model
Before a model can run, it needs:
- An active model file uploaded and activated
- All input bindings assigned to tags
- The Enabled toggle switched on (in the model header or Configuration tab)
Once enabled, the Predict Engine begins inference at the configured scan rate. If any prerequisite is missing, the model stays stopped and displays a warning. A model that is enabled but sits at Starting without ever reaching Running has failed the configuration check Koios runs on every load — read the error strip under the status, then see Model Configuration Errors.
Overview Tab
The Overview tab gives you a snapshot of the model's current state.
- Status hero: large status indicator with the current state, last scan timestamp, and a 24-hour uptime bar chart showing the percentage of time spent in each state (Running, Stopped, Failed)
- Model file card: the active file's filename, version, input shape, output shape, and the note recorded with the file
- Training info: if the model file includes embedded training metadata, displays the scenario, algorithm, observation depth, and sample rate it was trained at
- Configuration summary: key settings (scan rate, sample rate, output mode, on-demand)
- Recent events: the last few events for this model (enable, disable, config changes, errors)
Live Binding Values
The Bindings tab lays out the model as two columns — Inputs on the left, Outputs on the right — with the model's status spine between them. A Detailed diagnostics switch at the top of the tab expands each input card in place with its data-quality chart.
Card View
Each binding displays a live value card showing the data flow in real time:
- Input bindings: shows
Tag Value → Model Input. The left side is the raw value from the tag; the right side is the normalized value fed into the model (after scaling is applied). - Output bindings: shows
Model Output → Tag Value. The left side is the raw model output; the right side is the denormalized value written back to the tag.
Values update every second. If a binding is unassigned or its tag is not running, the card indicates the issue.
Detailed Diagnostics
Turn on Detailed diagnostics to expand every assigned input card with deeper insight into its data quality:
- Interpolated trace chart: visualizes the recent sample history used by the model at each inference cycle. The chart overlays failure bounds (if configured) so you can see when values approach or exceed the expected range.
- Stale regions: shaded sections where the tag stopped producing new data (missed samples exceeded the allowed threshold)
- Range violations: markers where values exceeded the configured failure bounds, with a violation count in the card footer
- Legend: a legend below the columns explains the chart shading — Raw, Interpolated, Extrapolated, Stale region, and Missing history
Discrete Action Monitor
For models using Discrete output mode with an action map, the Bindings tab includes an action monitor that shows which discrete action the model is currently selecting and the confidence values across all possible actions.
Execution Tab
The Execution tab shows how long each inference cycle takes and where time is spent. This is essential for diagnosing performance issues and tuning scan rates.
Cycle Breakdown
A stacked bar chart breaks each recent cycle into segments:
History Chart
A line chart shows cycle timing trends over the last 24 hours, making it easy to spot patterns. For example, inference times that spike during certain process conditions or read times that increase when a device is under load.
Metric Cards
Four summary cards show key stats:
- Set Scan Rate: the inference interval currently in effect
- Avg Cycle Time: mean total cycle duration
- Latest Inference Time: how long the most recent model execution took
- Missed Scans (1h): cycles skipped in the last hour because the previous cycle had not finished
Logs Tab
The Logs tab streams the model's runtime logs in real time via server-sent events. Logs appear as they are written, with no need to refresh.
- Log level selector: filter by severity (Debug, Info, Warning, Error). The log level here controls the Predict Engine's per-model verbosity, not just the display filter.
- Auto-scroll: the log viewer automatically scrolls to new entries. Scroll up to pause auto-scroll; scroll back to the bottom to resume.
- Filter: type in the Filter box above the log to narrow the visible lines to those that match.
- Download: use the download icon to save the loaded log to a file.
Parameters Tab
The Parameters tab shows all model parameters organized into two sections:
- Live Data: real-time values from the Predict Engine: status, error code, error message, error detail, info message, missed scans in the last hour, the running/stopped/failed state flags, last prediction timestamp, and prediction progress
- Configuration: the model's stored settings: ID, name, slug, description, type, input and output counts, enabled, scan rate, sample rate, on-demand and on-demand timeout, log level, and created/updated timestamps
Any parameter can be mapped to a tag by clicking the map icon next to it. This records the parameter's value in the time-series database, letting you trend model health metrics alongside process data.
Viewing Historical Trends
Every model has a linked trend for viewing historical data. Click the chart icon in the model's header — its tooltip reads Mini Trend — and a resizable trend panel slides up from the bottom of the page. Click Go to Trend in that panel to open the full trend page; the ellipsis menu in the model's header offers the same Go to Trend.
The trend page plots the time-series values of the model's bound tags (both inputs and outputs) over a configurable time range. This is useful for:
- Reviewing how model predictions correlated with actual process behavior
- Comparing input patterns before and after a process change
- Investigating specific time periods where the model produced unexpected outputs
What's Next
- Assigning Bindings: configure scaling, failure detection, and rate-of-change monitoring
- Configuring a Model: adjust scan rate, output mode, and advanced settings
- On-Demand Inference: synchronize inference with fresh device reads
- Scan Groups: group models for synchronized execution
