, ,

Why do AI agents need an ontology? NVIDIA Auto Ontology explained

NVIDIA Auto Ontology gives AI agents a certified map of what enterprise data means, so text-to-SQL answers use the right columns and joins and come back with their SQL. What the ontology holds, how it is generated and certified, how a question is answered, and how to connect agents over MCP.

Why do AI agents need an ontology? - NVIDIA Auto Ontology explained: same question, one correct answer

NVIDIA AI factory stack · Part 4 of 4

On 21 October 2026 at GTC Berlin, NVIDIA announced Auto Ontology as part of its new Agent Knowledge Foundation, and the code followed on GitHub at the start of November. Ask an AI agent “what was revenue last June?” and it will write valid SQL in seconds. The hard part is whether the number is right: which of five revenue-looking columns it used, whether returns were excluded, whether a join counted every invoice twice. NVIDIA Auto Ontology is an open-source library that gives agents a certified map of what enterprise data means, so they compute business measures the way the business does and show their work. This final part explains what the ontology contains, how it is generated and certified, how an answer is produced and checked, and how to plug it into your own agents over MCP.

In one minute

Think of Auto Ontology as the company glossary every new analyst wishes they had on day one, except an AI agent actually reads it before answering.

What it isAn open-source semantic layer of certified business definitions that text-to-SQL agents use to pick the right columns and joins, and show their work.
Who it is forData and analytics teams building “ask your data” agents over SQL warehouses.
Use it now?Pilot it on one well-understood warehouse, and budget time for people to certify definitions before trusting answers.
What’s new
  • 21 October 2026, GTC Berlin: Agent Knowledge Foundation announced: Nemotron Retriever, Auto Ontology and Kumo models, with Palantir, Databricks and Snowflake named as early partners.
  • Early November 2026: the Auto Ontology code went public on GitHub under Apache 2.0 and started trending on Hacker News and LinkedIn.
  • NVIDIA’s claim: 90% less time to build a first ontology, in its own testing.
Last checked: 9 November 2026
Try it: Auto Ontology Lab

Ask the same business question with the ontology off and on, and watch a guessing agent give three different answers while the ontology gives one. Step through how an answer is built, including a typo it repairs, then play the analyst and certify the definitions yourself.

Open the lab →

The problemWhy does valid SQL still give wrong answers?

Text-to-SQL has become good at syntax. Its failures are now about meaning. A real warehouse has several columns that could plausibly be “revenue”, tables that need a bridge table to join, and filters (cancelled orders, internal customers, test data) that only people who run the business know about. An agent guessing from column names produces SQL that runs, returns a confident number, and is wrong. Retrieval does not fix this, because the problem is not finding the data; it is knowing what the data means.

Agent guessing from column names “What was revenue last June?” orders.total_amount$1.42M invoicelines.extendedprice$1.31M payments.amount$1.18M three valid queries, three different answers Agent using a certified ontology “What was revenue last June?” Term: Revenue (certified)SQL attribute: SUM(invoice line extended price) One answer, the same every timereturned with its SQL and the steps taken if no term covers the question, it says so

Figure 1. The problem in one picture (illustrative values). The left agent is not broken: each query is valid. It simply has no way to know which column the business means by “revenue”. The ontology removes that guess.

Auto Ontology is NVIDIA’s answer, announced in October 2026 under Apache 2.0, alongside Nemotron retrieval models and Kumo models, as part of a wider push on data for enterprise agents. Earlier in the year NVIDIA bought Illumex, a start-up that automated semantic layers and ontologies. The goal, in the project’s own framing, is a context layer that tells agents where data lives, what it means, whether and how to use it, and where it came from.

The modelWhat exactly is in the ontology?

Despite the academic name, the ontology is practical. It holds three kinds of definition, stored in Postgres next to the data catalog it describes:

  • Terms: business concepts such as Customer, Invoice or Stock Item, each with a description and synonyms, mapped to the columns that hold them.
  • SQL attributes: reviewed SQL expressions under a term, such as a margin or a rolling total. The agent reuses them, so every answer computes a measure the same way.
  • Relationships: how tables join, including bridge tables, inferred from keys and from the data itself.

Together they form a semantic graph. Here is the part of it that NVIDIA’s own example question uses, from Microsoft’s Wide World Importers sample database. One compilation of that database produced 31 terms:

Invoice Lineterm (revenue) SQL attributeSUM(extendedprice) Stock Itemproduct name Invoiceinvoice date Customer City State Province“Pennsylvania” join path the agent follows:invoice line → invoice → customer → city → state

Figure 2. A slice of the generated graph. The question names a measure (revenue), a product and a state; the ontology turns each into a term and gives the agent the exact join path between them, instead of leaving it to guess.

The ontology is exchangeable, too. Auto Ontology imports and exports models in Apache Ossie YAML, the open standard for semantic models, so definitions you already maintain elsewhere do not have to be rewritten by hand.

LifecycleHow is the ontology built and kept correct?

The word “auto” applies to the first draft, not the final result. The lifecycle has three stages, plus a loop that feeds corrections back:

1 Generateautomatic, by the ingestion service read schemas, profile columns,sample valuesname entities table by tableinfer joins and bridge tables;suggest SQL from query history 2 Certifypeople, the step that builds trust test with real questionsin Chat or over MCPrefine terms, descriptionsand SQL attributescertify what is correct 3 Answerfor every question match terms, write SQL,check and repair it, run itreturn answer + SQL + stepsor say it cannot be answered 4 Learn: corrections

Figure 3. Generate, certify, answer, learn. The generated draft gets a team most of the way; certification by people who know the business is what makes answers trustworthy, and corrections from real use flow back so the shared context improves over time.

Budget for certification. NVIDIA’s own material says the ontology is generated, and vendor tests report large time savings on building a first draft. But a draft is not trusted context. Plan real time from analysts or data owners to test questions and certify terms and SQL attributes before you let agents loose on them.

Under the hoodHow is a question answered?

Here is the real example from the project’s quickstart, with the actual SQL it produced:

“What was revenue for the USB food flash drive – sushi roll in Pennsylvania in June 2015?” 1 Classifyintent; entities:revenue, product, state 2 Retrieveterms and columnsby embedding search 3 Write SQLfrom certifiedterms and joins 4 Check, repairfilter values exist?query valid? 5 Run, explainanswer, SQL,rows and steps SELECT SUM(il.extendedprice) AS revenue, COUNT(*)FROM sales.invoicelines ilJOIN sales.invoices i ON il.invoiceid = i.invoiceidJOIN warehouse.stockitems si ON …JOIN sales.customers c … application.cities ct …JOIN application.stateprovinces sp ON …WHERE si.stockitemname = ‘USB food flash drive …’ Answer$588.80from 3 invoice lines+ SQL + steps to check it “What was return on ad spend for that product?”check_answerable: coverage 0.5, no term covers “ad spend”. The agent offers revenue instead of inventing a number.

Figure 4. One question, end to end, using the quickstart’s sample data. Step 4 is easy to overlook: the agent confirms that “Pennsylvania” and the product name actually exist as values before trusting the query, and repairs the SQL if a check fails.

The answer arrives with three things: the number, the SQL that produced it, and the steps (which terms were resolved, which joins were followed, which values were validated). In the web UI you can also see the rows, download them as CSV or chart them. That transparency is the point: a finance analyst can check the join path in a minute, which is impossible with a bare number.

ArchitectureWhat do you deploy?

Peopleweb UI, chat, catalog Your agentsCursor, Claude Desktop,any MCP or REST client Frontend :3000Next.js, auth, API gateway MCP server :30039 read-only tools keep private: no authentication of their own Backend :3001text-to-SQL agent Ingestion :3002compiles ontology Postgres 17 + pgvector :5432catalog, ontology, embeddings Models: four roles, set separatelyreasoning (build ontology, write SQL), non-reasoning(fast steps), embedding, reranking. Default: NVIDIANemotron NIM; any OpenAI-compatible endpoint works Sources: ten database enginesPostgreSQL, MySQL, Snowflake, Databricks, Trino,ClickHouse, Apache Kyuubi, HeavyDB, DuckDB, SQLitecredentials optionally in HashiCorp Vault

Figure 5. The deployment. Everything outside the red box can face users; the backend trusts the user identity the frontend forwards, and the ingestion service’s ingest, delete, reset and compile endpoints have no authentication, so both stay on a private network. It runs with Docker Compose locally or with a Helm chart on Kubernetes.

Hands onHow do you try it, and connect your agents?

The quickstart runs everything with Docker Compose against Wide World Importers. You need Docker with Compose v2, uv, and an NVIDIA API key from build.nvidia.com:

git clone https://github.com/NVIDIA/auto-ontology.git && cd auto-ontology
cp .env.example .env     # set your nvapi- key, passwords, CONNECTION_STRINGS

docker compose up -d --wait postgres
# load the sample database with the seed script from NVIDIA/auto-ontology-eval
docker compose up -d --build
# open http://localhost:3000, sign in, then Settings > Semantic Compilation: on

Once compilation reports ready, any MCP client can use the ontology. Each user signs in through Auto Ontology, and every tool call runs with that user’s permissions:

# run the MCP server against your deployment
AUTO_ONTOLOGY_API_URL=http://localhost:3000 
  uvx --from "git+https://github.com/NVIDIA/auto-ontology.git#subdirectory=mcp" auto-ontology-mcp

# or ask over REST with an API token (server-sent events)
curl -N http://localhost:3000/api/chat/completions 
  -H "x-api-key: $AUTO_ONTOLOGY_API_TOKEN" -H "Content-Type: application/json" 
  -d '{"question": "How many orders shipped last week?"}'
MCP toolWhat it is for
check_readinessCan this deployment answer anything at all?
check_answerableA cheap pre-flight: does the ontology cover this question?
ask_questionThe main tool: the answer, the SQL that ran, and the rows
search_terms, get_termSearch the business glossary; read one term with synonyms and related terms
get_term_columns, get_term_sql_attributes, get_sql_attributeThe physical columns and reviewed SQL behind a term
describe_tableA table’s columns, related terms and SQL attributes together

The tools are deliberately read-only, and none of them lets an agent browse raw schemas directly: the design wants agents to go through the semantic layer, not around it. Three agent skills (setup, management and query) teach a coding agent to install, curate and use Auto Ontology.

Deploying it? The companion post, Running Auto Ontology on private AI infrastructure, covers the Helm chart defaults to change, the security boundary, model hosting and GPU sizing.

Reality checkWhat should you watch out for?

Security and data decide before connecting real data
Private portsBackend :3001 and ingestion :3002 trust the caller; never expose them.
KumoRFM uploads dataPredictive questions go to a hosted service that receives your connected tables (20 by default). Do a data review first.
Model endpointsSchemas, sample values and questions go to whichever model endpoint you configure; self-host NIM if that matters.
Project and scope what it is, and is not
Relational onlyCovers SQL sources. Documents and unstructured data are a separate retrieval problem.
Not a governance platformIt is a semantic layer and query agent, not a full data catalog, lineage or write-back system.
No outside PRsNVIDIA maintains the code; contributions are not accepted, though issues and integration requests are.

DecisionShould you use Auto Ontology?

You are building “ask your data” agents over a SQL warehouse and wrong numbers are the main complaint.Start now
Several teams define the same metric differently, and agents copy the confusion.Start now
You already run a mature semantic layer (dbt, Databricks, Snowflake, LookML).Connect, don’t replace
Your agents mostly answer from documents, tickets or wikis.Not the right tool
You cannot give analysts time to certify definitions.Wait

Quick answers

Is this an RDF or OWL ontology?

No. Despite the name, it is a practical semantic graph of terms, SQL attributes and joins stored in Postgres, exchanged as Apache Ossie YAML. If you need SPARQL and formal reasoning, this is a different kind of tool.

Do I need NVIDIA GPUs?

No. By default it calls hosted NVIDIA NIM endpoints from build.nvidia.com. You can point each of the four model roles at self-hosted NIM or any OpenAI-compatible endpoint that supports structured output.

How accurate is it?

NVIDIA publishes a separate evaluation repository for text-to-SQL benchmarks such as BIRD, so you can measure it on your own data. Accuracy depends heavily on how much of the ontology has been certified.

How does it fit with OpenShell from Part 3?

They solve different halves of agent trust. OpenShell controls what an agent is allowed to reach; Auto Ontology makes sure what it reports from your data is right. An agent in an OpenShell sandbox with a network rule for the Auto Ontology MCP endpoint gets both.

Before you connect real data
  • Start with one well-understood warehouse and 20 real questions with known answers.
  • Keep ports 3001 and 3002 private; expose only the web app and the MCP server.
  • Decide which model endpoints may see schemas and sample values.
  • Leave KumoRFM off until a data review approves it.
  • Assign owners to certify terms and SQL attributes, and track certification coverage.
  • Have agents call check_answerable before ask_question, and show the SQL to users.

Sources: Auto Ontology repository and documentation (github.com/NVIDIA/auto-ontology), including the README, MCP server and Connections pages, read at commit c447003 (6 November 2026). The worked example, SQL and $588.80 answer are from the project’s quickstart on Microsoft’s Wide World Importers sample database. The New Stack, “Nvidia bets open models can give enterprise AI agents the context they’re missing” (21 October 2026). Figure 1 values are illustrative.

About The Author


Discover more from Journal of Intelligent Infrastructure

Subscribe to get the latest posts sent to your email.

Leave a Reply

Your email address will not be published. Required fields are marked *

Architect’s Toolkit

About the Author

Dr. Pranay Jha is a Cloud and AI Consultant with 18+ years of experience in hybrid cloud, virtualization, and enterprise infrastructure transformation. He specializes in VMware technologies, multi-cloud strategy, and Generative AI solutions. He holds a PhD in Computer Applications with research focused on Cloud and AI, has published multiple research papers, and has been a VMware vExpert since 2016 and a VMUG Community Leader.

Discover more from Journal of Intelligent Infrastructure

Subscribe now to keep reading and get access to the full archive.

Continue reading