In production
Serving a forecast: one call, not another export
A forecast that lives in a slide is a report. A forecast that answers a request — grain, horizon, quantiles — can staff a roster, bid a market, or fill a warehouse system. The hard part is the contract: version, pin, and what happens when the model changes.
Updated Aug 26, 2026·8 min read
The contract is the product
A forecast that lives in a slide is a report. A forecast that answers a request — grain, horizon, quantiles — can staff a roster, bid a market, or fill a warehouse system. The hard part is the contract: which model version, what happens when it changes, and whether training and serving still share features.
- Return the path, timestamps, quantiles, and a model version id.
- A PNG is not an API. A single center line is a half contract.
- Idempotent reads. Ops will retry. Do not double-book a buy because the GET flickered.
Pins and rollbacks
Autopilot that silently swaps a champion at 3am will eventually ship a worse number into MRP. Pin what production reads. Let the tournament keep racing in the wings. Rollback is a pin, not a war room. SageMaker endpoints can do this; most homegrown “export the CSV” stacks cannot.
Training and serving
The classic break: a notebook used a holiday file the endpoint never saw. Feature pipelines that are not the serving pipelines are how you get a brilliant backtest and a cursed Tuesday. Same code, same calendar, same lag rules.
Inference is one call
Deploy a Predict.ai champion — shared or dedicated — pin a version, and request a forecast over REST. Same object the workspace shows. Agents can use the same contract through MCP instead of scraping the UI. You are not maintaining a second “production rewrite” of the notebook.
That is the gap with BigQuery ML: querying a model is easy; productizing the contract (pins, quantiles, who is allowed to change it) is the rest of the job. We sell the rest of the job.
FAQ
- What should a forecast API return?
- The path, the timestamps, the quantiles you plan on, and an id for the model version. A PNG is not an API. A single center line without an interval is a half contract.
- How do I keep Excel from becoming the system of record?
- Make the endpoint cheaper than the export. If ops can get p50/p90 in the tool they already run, they will stop pasting. If they cannot, they will.
Keep going
Guide
Why forecasts go stale in production
A forecast starts dying the moment the world moves and the model does not. New promotions, a competitor, a warehouse fire, a quiet change in how you record demand — live systems need a refresh cadence, drift checks, and a way to re-score the champion.
Guide
Prediction intervals
A prediction interval is a range the future value is expected to fall in, not a promise. p50 is the middle path; p10–p90 is a band for planning stock, staff, and cash without pretending the future is a single line.
Guide
Forecasting with AI agents
An agent can create a forecast, ask why it moved, and push the number into the tools you already run — if the platform exposes those jobs as tools, not as a chat box glued to a screenshot. The forecast still has to be a real model with a score.
Use case
Energy load forecasting
Forecast demand by interval, feeder, zone, and customer class with weather-driven uncertainty.
Use case
Digital traffic forecasting
Forecast traffic, transactions, and concurrency before campaigns, launches, and seasonal peaks.