Auto Ontology
Auto Ontology 是一个 Python 框架,用于在数据之上构建语义化、基于图的推理层,支持确定性查询生成、更好的上下文检索,并提升 LLM 与 agent 工作流的可解释性。
访问 NVIDIA/auto-ontology项目简介
Auto Ontology 是一个开源 Python 库,从企业元数据构建上下文层,协调不同系统中的定义,并通过 MCP、CLI 和 API 将语义化、基于图的推理层提供给 agent harness。它补充客户已有的语义模型,支持发现、语义落地、验证、暴露和学习,包括从元数据生成本体、连接已有本体与语义模型、构建 AI 就绪知识图谱、为指标、实体和关系提供可信业务含义、依据已认证定义和血缘校验生成查询并返回来源,以及把已认证修正和使用反馈回本体。
核心功能
- 自然语言查询结构化数据,将问题转换为 SQL 并在已连接数据库执行,由 NVIDIA NIM 提供支持;面向关系数据源的语义目录/本体层,与所描述目录一起存储在 Postgres;使用 Better Auth 的认证与 RBAC;用于聊天、分析、数据目录、分析和设置的 Web UI;通过 Kubernetes Helm chart 或 Docker Compose 本地栈灵活部署;通过 MCP、CLI 和 API 向任意 agent harness 暴露上下文。
适用场景
- 为 LLM 与 agent 工作流提供指标、实体和关系的可信业务含义;协调跨系统不一致的定义,使 agent 使用共享且已认证的上下文;依据已认证定义和血缘校验生成查询,并在每个答案中返回来源;对 Databricks、Postgres、Snowflake 或 DuckDB 等已连接数据库执行自然语言分析。
快速开始
- 克隆仓库并从 .env.example 创建 .env,填写 Postgres 凭据、DEFAULT_MODELS_API_KEY 和 CONNECTION_STRINGS 等值;设置必需的 AUTH_SECRET 和 APP_URL;使用 Docker Compose 运行 docker compose up -d --build 构建镜像并启动本地栈;打开 localhost:3000 的 UI,后端 API 位于 3001,pgAdmin 位于 5050。
部署与要求
- 本地部署需要 Docker 与 Docker Compose v2;Kubernetes 部署使用提供的 Helm chart;需要来自 NVIDIA API 目录的 NVIDIA API key 用于 NVIDIA NIM 聊天和摄取;需要待查询源数据库的连接信息,例如 Databricks、Postgres、Snowflake 或 DuckDB;Postgres 与 pgvector 提供应用元数据、目录与本体以及向量存储。
采用前须知
- 许可证:Apache-2.0。在使用、修改或分发项目前,请确认其具体条款。