Your Agent Can Query the Database. That Doesn't Mean It Got the Number Right.
You've wired an agent up to your warehouse. It writes SQL, runs it, and hands back an answer about revenue. The only problem is the number is wrong, and you won't find out until someone in a meeting repeats it. Faster analytics don't help if the definitions underneath them are a mess. NVIDIA Auto Ontology is an open library that tries to fix that by giving agents a context layer: where data lives, what it means, whether to trust it, and where it came from.
What It Does
Auto Ontology builds an ontology (a semantic catalog of your data) from enterprise metadata, reconciles definitions that disagree across systems, and serves the result to any agent harness through MCP, a CLI, or an API. The README frames this as complementing semantic models you already own rather than replacing them.
The stack is a fairly standard split. A Next.js 16 frontend handles the web UI, authentication via Better Auth, and the API gateway. A FastAPI backend on Python 3.12+ with LangChain handles chat, natural-language-to-SQL, and the catalog and datasource APIs. A separate ingestion worker pulls in tabular data and writes embeddings. Everything sits in Postgres with pgvector, which stores app metadata, the catalog and ontology itself, and the vector store in one place. HashiCorp Vault is optional for connection credentials. Inference runs through NVIDIA NIM endpoints (hosted or self-hosted), with defaults pointing at Nemotron models for the LLM, embeddings, and reranking.
Why It's Cool
It treats correctness as the actual problem. The README opens with the honest observation that a revenue metric answered faster is worth nothing if the number is wrong. Every feature flows from that: definitions get reconciled across systems, generated queries are validated against certified definitions and lineage, and every answer comes back with provenance. That's a much more useful posture than "chat with your data."
The learning loop is the interesting part. The library is designed to fold certified corrections and usage back into the ontology, so the shared context improves with every question. That's a quiet but meaningful design choice — it means the context layer isn't a static artifact you generate once and forget.
One context layer, many consumers. Instead of baking semantics into a specific agent framework, Auto Ontology exposes the ontology through MCP, CLI, and API. If you're running agents in different harnesses, they can all read from the same source of truth.
The four verbs map to real work. Discover (generate ontologies from metadata, connect existing ones, build knowledge graphs), Ground (give agents trusted meaning for metrics, entities, and relationships), Validate (check queries against certified definitions), and Expose (serve it anywhere). It's a coherent story rather than a grab bag of features.
Deployment isn't an afterthought. There's a Helm chart for Kubernetes and a Docker Compose setup for a local stack, plus RBAC out of the box. You can kick the tires without standing up a cluster.
How to Try It
The README doesn't include install commands in the portion available, so start at the repository and follow the deployment path that fits you:
- Head to github.com/nvidia/auto-ontology.
- For a local stack, look at the Docker Compose setup. For Kubernetes, use the Helm chart.
- Configure your inference endpoints in
.env.example. The defaults point at the hosted NVIDIA API catalog (integrate.api.nvidia.com), but you can swap in self-hosted NIMs. - Bring up the services and open the web UI on port 3000 for chat, analysis, the data catalog, and settings.
- If you want to benchmark text-to-SQL quality, the README points to the separate ontology SQL evaluation repository, which covers benchmarks like BIRD.
One thing to know before you invest time: the project is under Apache 2.0, but it's currently not accepting external contributions.
Final Thoughts
Auto Ontology is aimed at teams running agentic analytics against real enterprise data — the ones who've felt the pain of an agent confidently returning the wrong metric. The architecture is conventional in the best sense (Postgres, FastAPI, Next.js), and the emphasis on reconciliation, validation, and provenance is where the value sits. If you're building a context layer from scratch, this is worth reading closely. If you already have solid semantic models, it's positioned to complement them rather than compete. Either way, the premise is right: reliability is the gate, and everything else is secondary.
Follow @githubprojects for more developer tools and open source projects.