Core Concepts
How datasets, models, predictions, simulations, optimizations, attributions and response curves fit together in Alviss AI — what each one answers, how they differ, and the chains that combine them into a planning workflow.
Alviss AI has a small number of building blocks. Everything else is a combination of them. This page is the map: what each one answers, how it differs from its neighbour, and which ones chain together.
The shape of the platform
Two nouns are assets you build once and reuse: the Dataset and the Model. The rest are jobs you run against a model, as often as the question needs.
The assets
Dataset
The history: your uploaded data, plus optional built-in external data for weather and macroeconomics. A dataset has a periodicity (weekly, monthly), a currency, and a date range the data actually covers — every job window is bounded by it.
Datasets grow. Extending one with a new file and then refitting is the normal refresh cycle, and it is cheaper than rebuilding a model from scratch.
Model
A full Bayesian causal model of your business economics — a DAG over media, pricing, distribution, customer experience, competitor activity, macro and demand, predicting KPIs such as sales, revenue or churn.
One model covers exactly one modeling combination: a unique Country × Region × Grouping triplet. Multi-market work therefore means several models, and cross-market answers come from merging their results, not from one big model.
Modeling combinations cannot be changed after training. A new market means a new model, built on a dataset that covers it.
Before running anything expensive on a fresh model, check that the fit learned something: Prior vs Posterior shows, per variable, whether the data moved the posterior away from the prior or the model just handed your assumption back.
The jobs
Prediction — "what will happen?"
Predictions forecast KPI levels over a window, with uncertainty bands, optionally under several named scenarios run side by side. Use them for demand planning, inventory, targets and board-facing forecasts: anything where the answer is a number you commit to.
Simulation — "what changes if I do X?"
Simulations compare a scenario against a baseline and report the difference. Set the baseline to zero media to measure everything paid activity contributes; set it to the current plan to measure only the increment a change buys.
The difference is the point. A simulation says "+2,400 units", a prediction says "48,300 units".
Optimization — "what should I spend where?"
Optimizations search for the allocation that best serves a target, under constraints you set: a total budget, per-channel floors and ceilings, per-period bounds.
Two modes:
- Dynamic — maximize or minimize a KPI within the constraints. "Best sales for $3.5M."
- Goal-driven — hit a stated target, absolute or relative to baseline, and optionally minimize the spend that gets you there. "Cheapest path to 100k sales."
Mechanically an optimization is a search over simulations: it proposes allocations, scores each on the model, and returns the best one it found together with the KPI movement it buys.
Attribution — "what drove what already happened?"
Attributions decompose each KPI over a window into the effect of every variable, per market, with investment and ROI where the variable group carries spend. The method is the platform's core comparison in miniature: predict with each variable at its baseline, predict with it at its observed value, and take the difference.
Completed attributions merge into an attribution set — a continuous view across periods and markets. Activating a set makes it the Effect dashboard that every user of the project sees, so activation is a shared, visible act, not a private read.
With from_job, an attribution decomposes a finished prediction, simulation or
optimization instead of history. That is how "why does the optimizer want to
move money into OOH?" gets a real answer.
Response curve — "how much is too much on one channel?"
Response Curves sweep one variable from a low to a high level and report the effect at each step, exposing the saturation point where more spend stops buying more outcome — and the slope at your current level, which is marginal ROI.
A curve is one lever at many levels. An optimization is many levers at one budget. If the question is "how much on TV", sweep. If it is "how do we split the budget", optimize.
Which one do I run?
The pair most often confused:
| Prediction | Simulation | |
|---|---|---|
| Reports | Absolute level | Difference vs a baseline |
| Baseline | None | Explicit, and yours to choose |
| Typical question | "Will we hit 100k in Q4?" | "What does the extra $200k buy?" |
| Typical output | 48,300 units ± band | +2,400 units |
And the pair most often swapped by accident:
| Attribution | Response curve | |
|---|---|---|
| Direction | Backwards, over data that exists | Forwards, over levels you invent |
| Answers | "TV delivered 12% of sales at 2.1 ROI" | "TV flattens out above $450k" |
| Needs | A window of history | A range to sweep |
Chaining them
Individually each job answers one question. The planning value is in the chains.
Four chains worth knowing:
- Plan a quarter. Sweep the big channels with response curves to find where each saturates, use those levels as lever bounds in an optimization, then decompose the winning allocation with an attribution so the recommendation can be defended line by line.
- Defend a plan. Take the optimizer's allocation, feed it back in as a prediction scenario, and present the forecast with its uncertainty band rather than a single optimizer number.
- Compare two worlds. Run one simulation with plan A as the baseline and plan B as the scenario. Do not run two separate simulations and subtract — the baselines differ, and the difference of differences is not the answer.
- Refresh. Extend the dataset with new actuals, refit the model, check prior vs posterior, then re-run the attribution and extend the active set so the Effect dashboard keeps moving forward.
Results carry their inputs. A finished run's plan can be handed straight back into a new run, which is what makes "same scenario, but 15% less TV" a single step rather than a re-entry of the whole plan.
Where results are read
Every job writes results you can read three ways: a summary for the headline numbers, an aggregated series for when and where the effect lands (by week, by market, by variable), and a full export for the rows themselves. Dashboards add filtering across markets, variables and periods, so one set of results serves both a scan and a deep read.
Api
Integrate Alviss AI into your systems using our comprehensive API. Learn about authentication with Bearer tokens, managing access tokens via your account, creating new tokens with expiration dates, and revoking them for enhanced security.
Correlation
Measure pairwise correlations between variables using Pearson, Spearman, and Kendall methods.