NVIDIA 发布 Auto Ontology 开源语义层,为 AI Agent 的 SQL 查询提供依据
来源标题:NVIDIA Releases Auto Ontology: An Open Semantic Layer That Grounds AI Agent SQL
NVIDIA 发布 Apache 2.0 许可的 Auto Ontology,可从企业元数据自动生成语义层,让 AI Agent 基于经过认证的业务定义编写 SQL。该工具通过 MCP、CLI 和 API 提供上下文,在 NVIDIA 自测中将本体创建时间缩短 90%,但目前未公布 text-to-SQL 准确率数据。
以下正文由 AI 翻译自 MarkTechPost(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
NVIDIA 发布了 Auto Ontology,这是一个基于 Apache 2.0 许可证的开源库。NVIDIA Auto Ontology 是一个语义层框架,可从企业元数据构建上下文层。Agent 借助该层,基于经过认证的业务定义来编写 SQL。该仓库直白地指出了问题所在:如果数字是错的,再快的营收答案也毫无价值。
摘要
- 库:默认 LLM 为 nvidia/nemotron-3-nano-30b-a3b,并搭配 Nemotron 嵌入和重排序模型。
- 运行方式:用 Docker Compose 搭建本地栈,或通过 Helm 部署到 Kubernetes。推理使用托管的 NVIDIA NIM 端点或自托管 NIM。
- 性能:工程实现扎实,公开证据薄弱。
- 最佳:在 NVIDIA 自己的测试中,本体创建时间缩短了 90%(自报数据)。
- 最差:未公布任何 text-to-SQL 准确率分数。评估仓库只提供测试框架,不提供结果。
- 结论:一个开放、支持 MCP 的上下文层,任何 agent 框架都可以查询。但你必须自己跑基准测试才能信任它。
什么是 NVIDIA Auto Ontology?
它是一个位于 agent 和数据仓库之间的上下文层。它告诉 agent 数据在哪里、字段是什么意思。它还会说明是否应使用某个字段、如何使用,以及该字段来自哪里。
以下是它的五项职责:
- 发现:从元数据生成本体,并连接已有的语义模型。
- grounding:为 agent 提供指标、实体和关系的可信含义。
- 校验:依据经过认证的定义和血缘关系检查生成的查询。
- 暴露:通过 MCP、CLI 和 API 提供上下文。
- 学习:将经过认证的修正回流到本体中。
NVIDIA 的开发者页面将输出定位为一个起步本体。业务专家仍需对其进行测试、完善和认证。
Auto Ontology 如何工作?
该栈包含 4 个核心服务。一个 Next.js 16 前端在 3000 端口处理 Web UI 和认证。一个基于 FastAPI、使用 LangChain 的后端在 3001 端口运行聊天、NL-to-SQL 和目录 API。一个摄取 worker 在 3002 端口写入嵌入。带 pgvector 的 Postgres 存储目录、本体和向量。
源数据库可以是 Databricks、Postgres、Snowflake 或 DuckDB。模型通过端点、密钥和模型组成的“三元组”环境变量来设置。推理、非推理、嵌入和重排序分别有独立的角色。任何兼容 OpenAI 的端点都可以使用。
MCP 服务器暴露了什么?
MCP 服务器文档描述了 9 个只读工具。ask_question 将答案、SQL 和行数据作为独立字段返回。结果最多 100 行。check_readiness 用于确认已编译的语义层和实时数据库连接存在。
没有用于浏览原始 schema 的工具。NVIDIA 有意如此设计,以便 agent 通过语义层访问数据。底层的 OpenAPI 规范公布了 87 个操作。登录通过 OAuth 进行,每次调用都携带登录用户的权限。
如何做基准测试?
NVIDIA 单独发布了一个测试框架 auto-ontology-eval。它在 NeMo Gym 中运行 2 个实验组:一个仅使用 schema 的 LLM 对照组,以及一个基于本体 grounding 的 agent。评分采用确定性的执行匹配,不使用 LLM 评判。
内置数据集包括 BIRD Dev(1,534 个问题,11 个数据库)和 Mini-Dev(500 个问题)。FDABench-Lite 增加了 169 个问题,BEAVER 默认使用 100 个问题的样本。
该测试框架仓库补充了 2 项限制。可选的 few-shot 示例和值锚点仅提供给本体实验组。使用这些输入测得的差值涵盖的是这些输入的影响,而非仅由 grounding 带来的影响。其测试配置还将两个实验组都通过 NVIDIA 推理网关上的 Claude 模型路由。
与其他语义层相比如何?
功能 | NVIDIA Auto Ontology | Wren AI | Cube Core | dbt MetricFlow 许可证 | Apache 2.0 | Apache 2.0 核心(开放核心) | Apache 2.0 后端,MIT 客户端 | Apache 2.0(v0.209.0+) 层的构建方式 | 从元数据生成,然后认证 | Agent 辅助的 Git 上下文文件 | 在代码中定义 | 在 dbt 项目的代码中定义 Agent 接口 | MCP、CLI、REST API | MCP、CLI、SDK | SQL、REST、GraphQL API | Python 库和 CLI 数据源 | Databricks、Postgres、Snowflake、DuckDB | 22+ | 所有 SQL 数据源 | 通过 dbt 适配器 默认模型 | 通过 NVIDIA NIM 使用 Nemotron | 未披露 | 不适用 | 不适用
部署与可用性
本地设置在填写 .env 后执行 docker compose up -d --build。Kubernetes 用户可使用 Helm chart 和 DEPLOYMENT.md 指南。NVIDIA 团队还将后端发布为 NGC 容器。来自 build.nvidia.com 的 NVIDIA API key 可用于默认模型。
关键要点
- Auto Ontology 从企业元数据生成起步语义层。
- Agent 通过 9 个只读 MCP 工具以及 CLI 和 API 查询它。
- NVIDIA 报告在其自己的测试中本体创建速度提升了 90%。
- 尚未公布 text-to-SQL 准确率分数。
- 默认在 NIM 上使用 Nemotron,但接受任何兼容 OpenAI 的端点。
查看 GitHub 仓库、评估框架和 MCP 文档。也欢迎在 Twitter 上关注我们,别忘了加入我们 15 万+ 的 ML SubReddit 并订阅我们的 Newsletter。等等!你在 Telegram 上吗?现在你也可以在 Telegram 上加入我们。
需要与我们合作推广你的 GitHub 仓库、Hugging Face 页面、产品发布或网络研讨会等?联系我们。
文章 NVIDIA Releases Auto Ontology: An Open Semantic Layer That Grounds AI Agent SQL 首发于 MarkTechPost。
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。