Product Filling

Predicted product attributes — pet type, category, weight, dietary tag, tax class — from a new SKU's name and brand. Multi-field, multi-output.

Product Filling: screenshot from the E-commerce demo
🛒 E-commerce_predictE-commerce
Production anchorFive _predict calls from a product's name and brand fill pet type, category, weight, dietary tag and tax class, each with confidence, alternatives and $why. Held out, the dietary tag is right 67 % of the time against 26 % for the most common value.

The problem

New product onboarding into an e-commerce catalog is the slowest part of catalog management. The buyer accepts a new product from a supplier; the supplier provides the title and a partial attribute set; the catalog team manually fills in the rest — category, dietary tags, weight, dimensions, similar-product cross-references. Multiplied across hundreds of new SKUs per quarter, the cost compounds.

The attributes the team is filling in by hand are predictable from the title, the supplier, the partial attributes, and similar existing products. The supplier+title combination strongly predicts the category; the category strongly predicts the dietary tag patterns; the title strongly predicts the weight class. The data already contains the answer for most fields.

How it works

Product Filling is multi-field _predict on the products table. Given the name and the brand, five parallel _predict calls fill pet type, category, weight, dietary tag and tax class. Each field returns its own confidence and alternatives, shown by tier, so high-confidence fields can auto-fill, mid-tier surface as suggestions, and low-tier stay empty for human attention.

The pattern is identical to catalog gap-fill applied to new products at intake. In a deployment the form runs at supplier-feed import; the team reviews the predicted attributes per SKU and approves or overrides. The approved values become rows like any other, so the next batch of similar SKUs is predicted from them.

{
  "from": "products",
  "where": {
    "name": "Hill's Science Plan Sensitive Turkey Dog Food 2kg",
    "brand": "Hill's Science Plan"
  },
  "predict": "dietary",
  "select": [
    "$p",
    "feature",
    {
      "$why": {}
    }
  ],
  "limit": 5
}

For the full architecture, see the technology overview. For the broader narrative across multiple use cases, read The Predictive Application.

See it live

This use case runs in the 🛒 E-commerce demo today. Click through to the live application and inspect the queries that produce the result.

Open the live demo →

Frequently asked

What if the supplier feed contains structured attributes — is the prediction still useful?

Use supplier data where present; predict where missing. Supplier feeds rarely provide every field; product filling handles the ones they leave empty. The two compose: structured data first, prediction for the gaps, human review for high-stakes fields.

How accurate is product filling on a genuinely new product category?

New categories get low confidence — the system has nothing comparable. Manual entry seeds the category; each SKU entered becomes evidence for the next, and the confidence shows when the prediction has caught up. The first few SKUs do the work; the rest can auto-fill.

Can the prediction generate product descriptions (free text)?

Free-text generation is the LLM's job. Predicted attribute values feed an LLM that drafts a description; the human reviews. The split: predictive database for structured attributes, LLM for the prose.

How does this integrate with PIM (Akeneo, Salsify, inRiver)?

Aito returns predictions as JSON; the PIM consumes them as suggested values per attribute. The PIM's existing review-and-approve workflow stays in place; the prediction layer slots in as a default-value provider.

Does this work for B2B catalog onboarding (industrial parts, software products)?

Yes. The pattern is "predict missing fields from available signal." Industrial parts get category and HS code predictions; software products get tier and license-class predictions. The domain differs; the mechanism is the same.