Define every metric once. Every agent gets the same number.
The counting half of the semantic layer; Objects are the other half. Metrics live in your repo as code, compile to SQL deterministically and are served to apps, reports and agents alike, so the board deck and the agent's answer can't drift apart.
Define once
Dimensions and measures are declared once in code: Spend, CPC, Revenue, Net burn. Every app, report and agent reads the same definition.
Deterministic queries
Queries compile to SQL deterministically. An agent picks measures; it never writes the join that gets Revenue wrong.
Refuses instead of guessing
When a question is outside the model, the answer is "I can't answer that" instead of a confident wrong number.
Catalog for agents
Browse every model, dimension and measure from the console, the CLI or an agent. Agents read this map before they answer.
In code
advertising = SemanticModel(
name="advertising",
source="silver/cost_data",
default_date_dimension="date",
dimensions=(
Dimension("date", "date", type="date"),
Dimension("platform", "data_source_type"),
Dimension("campaign_id", "campaign_id", scope=("platform",)),
),
measures=(
Measure("spend", sum_(column("cost")), unit="currency"),
Measure("clicks", sum_(column("clicks"))),
Measure("cpc", divide(measure("spend"), measure("clicks"))),
),
)Agents can build your BI. Without a semantic layer, they make numbers up.
Three benchmarks, one result. An agent writing SQL against raw tables gets a share of answers confidently wrong, and nothing tells you which ones. The same agent answering through a semantic layer gets nearly all of them right, and says “I can’t answer that” when it can’t.
84.1% → 100%
accuracy, raw-table SQL vs. a semantic layer
Same model, same questions. Through the semantic layer, wrong answers became refusals.
dbt Labs benchmark, 202651% → 90%+
single-prompt SQL vs. a semantic model
GPT-4o writing SQL in one prompt, against an agent answering through a semantic model, on real BI questions.
Snowflake engineering, Cortex Analyst16% → 54%
on an enterprise schema, with a layer of meaning
GPT-4 answering business questions over an insurance company's SQL schema, before and after adding a semantic representation.
data.world AI Lab benchmarkUse it, install it, or build on it
Every block on the platform comes three ways. Most teams use all three.
Use it
Query any metric from the console, the CLI, an app or an agent.
Install it
Apps from the marketplace ship their metrics with them.
Build on it
Your agent proposes metric definitions from your tables; you approve them in a pull request.
Replaces LookML, dbt Semantic Layer, Cube and Metric spreadsheets.
Install from the marketplace
Solutions built with it
Start a pilot.
Want metrics set up for you? Our forward-deployed engineers build it for you in your workspace, as code you own.
- One solution, on your data, in your own workspace
- First version live in two weeks
- Parity proven before anything is switched off
- Fixed scope and price, credited to your contract if you continue
Not ready for a pilot? Send the form anyway with your question. An engineer will reply, not a sales rep.
How the pilot worksYour company’s context, ready for every agent.
$ segmentstream workspace create acme --region eu
▸ workspace ready · data, objects, metrics and access rules in one place
▸ connect Claude, ChatGPT or Cursor with one connector
▸ tell your agent: “add our billing API as a source”
Our engineers build the first version on your data in two weeks, at a fixed price.
Or join the waitlist for self-serve:
Pilots are open now. Self-serve opens to the waitlist this fall.