Optimizing Your Data Model for AI

Last updated: September 10, 2026

Tier Deployment
Launch     Grow    Enterprise Cloud     On-Prem

The assistant reads your semantic model to interpret prompts and generate queries. What the model exposes, and how clearly it is described, sets the ceiling on the answers your users get.

Optimization is a sequence, not one action. Narrow what AI sees, make it readable, tell AI how to use it, then publish so the changes take effect.

Prerequisites

Confirm the following before you begin:

  • Cloud-Linked Features are enabled and an LLM is configured. See Setting Up Your LLM.

  • Model statistics are enabled on the model.

  • You have edit permission on the model.

Tip:

If your data is in Snowflake, you can import descriptions and tags from Snowflake's own semantic metadata. This replaces most of the manual work in Step 3.

Workflow at a Glance

Step What it does Where Required
1 Limits what AI can see to business-relevant tables and columns Perspectives Recommended
2 Removes ambiguity from names and structure Data model Required
3 Tells AI what each object is Descriptions or Semantic Enrichment Required
4 Groups objects and carries governance flags Tags Optional
5 Lets users filter using their own wording Smart Value Matching Situational
6 Tells AI how to interpret an object AI Context (Beta) Recommended
7 Applies the changes and confirms they worked Publish Semantics or Build Required

How the Layers Work Together

  1. Clean names, intuitive and jargon-free tables and fields.

  2. Descriptions, what each object is, generated with Semantic Enrichment.

  3. Smart Value Matching, so the AI recognizes column values semantically.

  4. AI Context, how the AI should interpret and use specific objects.

  5. Governance and model design, hide backend fields, use Perspectives, and exclude sensitive fields from AI. Use these, not AI Context, for anything that must be strictly enforced.

    Excluding an object from AI is done with a tag. See Step 4.

Add AI Context Where the Model Needs Steering

After you have cleaned up naming, added descriptions via Semantic Enrichment, and enabled Smart Value Matching, add AI Context to give the AI targeted, plain-language guidance it cannot infer from the data: business meaning, preferred terminology, units, and caveats. For example, in the Revenue (Net) column: "Use for revenue questions unless the user says 'gross'. USD, in thousands."

Keep it focused. AI Context is guidance, not a rule, and it is most effective when applied only where the model cannot express something on its own.

For what to write and where you can set it, see AI Context (Beta).

AI Context is Guidance, Not a Rule

AI Context is soft guidance the AI takes into account. It is not an enforcement mechanism, a guardrail, or an access control. It cannot guarantee that the AI will refuse a request or hide a field. The AI may not honor absolute or negative rules.

For a hard rule, use the model itself:

  • To keep an object out of AI entirely, exclude it with a tag. See Step 4.

  • To control how data can be combined or sliced, hide fields, remove relationships, and use Perspectives that expose only what should be queried.

Do not write:

"This table cannot be grouped or filtered by Customers. If users ask, tell them it cannot be calculated."

Write instead:

"Revenue here is pre-aggregated at the account level. Break it down by Account or Region, not by individual customer."

Descriptions, Tags, and AI Context: Which Do I Use?

Description Tags AI Context
Answers What is this object How is it grouped, and what governance applies How should AI use it
Nature Descriptive Organizational Instructional
Written by You, or Semantic Enrichment You You only, never generated
Read by Humans and AI Humans, via search, and the governance layer AI features
Example "Net revenue per order line, after refunds and discounts. Numeric, in USD." measure, finance "Use for revenue questions unless the user says 'gross'. USD, in thousands."

Note:

If the sentence would make sense in a data dictionary a human reads, it is a description. If it only makes sense as an instruction to a machine, it is AI Context.

Step 1: Narrow What AI Sees

Large models degrade answer quality. The more tables and columns AI can reach, the more chances it has to pick the wrong one.

Create a Perspective that exposes only the objects that should be able to be queried, and point AI features at that Perspective. See Using Perspectives.

Step 2: Clean Up the Model

  • Use business-friendly names. Avoid technical jargon and abbreviations.

  • Keep logical names and display names unique across the model.

  • Remove unused or deprecated fields.

  • Hide backend and calculated fields that end users do not need.

  • Limit high-cardinality fields to reduce noise in responses.

  • Do not use periods in field names. Column names containing a period may cause errors.

  • Share any formula you want the assistant to use. The assistant is aware only of shared formulas.

Step 3: Add Descriptions

Descriptions tell AI what an object is. Semantic Enrichment is the recommended method: it generates descriptions across the model, and you edit the ones that are wrong. You can also write them manually on any column.

A strong description covers:

  • Whether the field is a dimension or a measure

  • Its business purpose

  • Representative values, for example Accessories, Bikes, and Clothing for a product category column

  • Time granularity, for date fields

Semantic Enrichment needs an initial build or publish before it can generate descriptions, and the generated descriptions need another build or publish before the assistant can use them. For Live models they become available a few minutes after the publish.

Step 4: Add Tags

Tags group and surface related objects across the model, which helps you find and maintain them. Tags also carry governance flags, including keeping an object out of AI.

Step 5: Enable Smart Value Matching

Smart Value Matching lets users filter using their own wording. A user asking to "filter by northeast" can be matched to a value stored as "NE Region".

  • Text columns only, up to 250 distinct values per column.

  • Synonym recognition is implicit, so codes and abbreviations will not match well.

  • Values re-index after 30 days, when you enable a new column, and on relevant schema changes.

To enable it:

  1. In the Data tab, open the relevant model.

  2. Click Smart Value Matching.

  3. Toggle on the fields you want matched.

  4. Click Save, then build or publish the model.

Step 6: Add AI Context

AI Context (Beta) expresses things a schema cannot: what "last quarter" means in your fiscal calendar, that "revenue" should use the net measure, that amounts are in USD, or which terminology your users prefer.

You can set context on models, perspectives, tables, columns, dashboards, widgets, and shared formulas. When more than one applies, the most specific context wins.

Note:

  • AI Context is currently in beta. It is consumed by the assistant and by natural language queries today. Narrative and Semantic Enrichment are planned for a later release.

  • Each context field accepts up to 500 characters.

Writing Effective AI Context

Weak Better
"Sales table." "One row per order line; sum Quantity for units sold, don't count rows."
"Do not use this column." "Legacy field; prefer Revenue (Net) for revenue questions."
"Customer info." "'Region' is the sales region, not the billing country."

More is not better. Clean names and descriptions are the broad foundation. AI Context is targeted, added only where the model cannot express something or where you have seen the AI get it wrong. Redundant context dilutes the guidance and can make answers worse.

Step 7: Publish and Verify

Semantic changes do not reach AI until they are published. Use Publish Semantics for semantic-only changes such as descriptions, tags, and AI Context. Build or publish the model for Smart Value Matching.

Then verify:

  1. Ask three to five questions your users actually ask.

  2. Check the interpretation the assistant shows before it returns results.

  3. Where it chose the wrong object, add AI Context at that specific object rather than rewriting the description.

  4. Publish again and re-test.

Optimization is iterative. Treat the first pass as a baseline, not a finished job.